Den öppna USB-stacken TinyUSB 0.19 har publicerats

UtgÄvan av TinyUSB-projektet 0.19 Àr tillgÀnglig, vilket utvecklar en plattformsoberoende USB-stack för inbyggda system. USB-stackens komponenter för USB-vÀrdar (USB Host) och för anslutna enheter (USB Device) tillhandahÄlls. Projektkoden Àr skriven i C och distribueras under MIT-licensen.

För att öka sÀkerheten i TinyUSB anvÀnds inga dynamiska minnesallokeringar. Stöd för anvÀndning i flervalsapplikationer erbjuds. För sÀker flervalsbearbetning behandlas inte alla hÀndelser relaterade till avbrott direkt vid mottagande av ISR (Interrupt Service Request), utan placeras i en kö som hanteras och behandlas i applikationens utförandekontext, inte i avbrottshanteraren. Vid Ätkomst till delade resurser, sÄsom FIFO CDC (Communication Device Class), anvÀnds semaforer och mutexar.

Stacken Àr abstraherad frÄn operativsystemet och kan anvÀndas som en fristÄende komponent, oberoende av operativsystemsfunktionalitet. Moduler för att integrera TinyUSB med operativsystemen FreeRTOS, RT-Thread och Apache Mynewt finns tillgÀngliga. Möjligheter för att minska energiförbrukningen stöds, sÄsom att gÄ in i vilolÀge och Äterupplivas vid aktivitet. En initial implementation av PD 3.0-protokollet (Power Delivery) för att hantera energitransfer via USB Type-C Àr tillgÀnglig.

Den öppna USB-stacken TinyUSB 0.19 har publicerats

TinyUSB möjliggör tillÀgg av stöd för egna USB-enheter och vÀrdar utan att modifiera USB-stacken. Bland de enhetsklasser som redan stöds i TinyUSB finns:

  • UAC2 — Ljudklass 2.0;
  • BTH HCI — Bluetooth Host Controller Interface;
  • CDC — Kommunikationsenhetsklass;
  • DFU — Enhetsfirmwareuppdatering;
  • HID — MĂ€nsklig grĂ€nssnittsenhet (tangentbord, mus, spelkontroll);
  • MSC — Masslagringsklass (inklusive lagringsenheter med flera logiska enheter);
  • MIDI — Musical Instrument Digital Interface;
  • MTP/PTP — Media Transfer Protocol;
  • RNDIS, ECM (Ethernet Control Model) och NCM (Network Control Model) — nĂ€tverksinteraktion via USB;
  • USBTMC — Test- och mĂ€tklass;
  • UVC — Videoklass 1.5;
  • WebUSB.

Stödda klasser av USB-vÀrdar:

  • HID — MĂ€nsklig grĂ€nssnittsenhet;
  • MSC — Masslagringsklass;
  • CDC-ACM — Kommunikationsenhetsklass;
  • FTDI, CP210x, CH34x, PL2303 — vidarebefordran av seriella portar över USB;
  • USB-hubb.

I den nya utgÄvan har API:et för enheter och vÀrdar utvidgats. Stöd för USB-vÀrdar med flera konfigurationer har lagts till. Stöd för mikrokontrollers och kort har lagts till:

  • ESP32-H4, ESP32-C5, ESP32-C61;
  • STM32U0, STM32WBA, STM32N6;
  • AT32F405, AT32F403A, AT32F415, AT32F423;
  • CH32V305 och CH32V20x (USB-vĂ€rd);
  • MCXA156 SDK 2.16 och FRDM-MCXA156.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster