[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-6382":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":23,"hasPages":25,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":37,"readmeContent":38,"aiSummary":39,"trendingCount":16,"starSnapshotCount":16,"syncStatus":40,"lastSyncTime":41,"discoverSource":42},6382,"tinyusb","hathach\u002Ftinyusb","hathach","An open source  cross-platform USB stack for embedded system","https:\u002F\u002Fwww.tinyusb.org",null,"C",6883,1442,134,201,0,1,32,101,13,40.48,"MIT License",false,"master",true,[27,28,29,5,30,31,32,33,34,35,36],"embedded","midi","msc","usb","usb-cdc","usb-devices","usb-drive","usb-hid","usb-host","webusb","2026-06-12 02:01:19","TinyUSB\n=======\n\n|Build Status| |CircleCI Status| |Documentation Status| |Static Analysis| |Fuzzing Status| |Membrowse| |License|\n\nSponsors\n--------\n\nTinyUSB is funded by: Adafruit. Purchasing products from them helps to support this project.\n\n.. figure:: docs\u002Fassets\u002Fadafruit_logo.svg\n   :alt: Adafruit Logo\n   :align: left\n   :target: https:\u002F\u002Fwww.adafruit.com\n\n.. raw:: html\n\n   \u003Cdiv class=\"clear-both\">\u003C\u002Fdiv>\n\nOverview\n--------\n\n.. figure:: docs\u002Fassets\u002Flogo.svg\n   :alt: TinyUSB\n   :align: left\n\n.. raw:: html\n\n   \u003Cdiv class=\"clear-both\">\u003C\u002Fdiv>\n\nTinyUSB is an open-source cross-platform USB Host\u002FDevice stack for embedded systems. It’s designed for memory safety\n(no dynamic allocation) and thread safety (all interrupts deferred to non-ISR task functions). The stack emphasizes portability,\nsmall footprint, and real-time performance across 50+ MCU families.\n\nKey Features\n------------\n\n* **Thread-safe:** USB interrupts deferred to task context\n* **Memory-safe:** No dynamic allocation, all buffers static\n* **Portable:** Supports 50+ MCU families\n* **Comprehensive:** Includes CDC, HID, MSC, Audio, and Host support\n* **RTOS-friendly:** Works with bare metal, FreeRTOS, RT-Thread, and Mynewt\n\n.. figure:: docs\u002Fassets\u002Fstack.svg\n   :width: 500px\n   :align: left\n   :alt: stackup\n\n.. raw:: html\n\n   \u003Cdiv class=\"clear-both\">\u003C\u002Fdiv>\n\n::\n\n    .\n    ├── docs            # Documentation\n    ├── examples        # Examples with make and cmake build system\n    ├── hw\n    │   ├── bsp         # Supported boards source files\n    │   └── mcu         # Low level mcu core & peripheral drivers\n    ├── lib             # Sources from 3rd party such as FreeRTOS, FatFs ...\n    ├── src             # All sources files for TinyUSB stack itself.\n    ├── test            # Tests: unit test, fuzzing, hardware test\n    └── tools           # Files used internally\n\n\nGetting started\n---------------\n\nSee the `online documentation \u003Chttps:\u002F\u002Fdocs.tinyusb.org>`_ for information about using TinyUSB and how it is implemented.\n\nCheck out `Getting Started`_ guide for adding TinyUSB to your project or building the examples. If you are new to TinyUSB, we recommend starting with the ``cdc_msc`` example. There is a handful of `Supported Boards`_ that should work out of the box.\n\nWe use `GitHub Discussions \u003Chttps:\u002F\u002Fgithub.com\u002Fhathach\u002Ftinyusb\u002Fdiscussions>`_ as our forum. It is a great place to ask questions and advice from the community or to discuss your TinyUSB-based projects.\n\nFor bugs and feature requests, please `raise an issue \u003Chttps:\u002F\u002Fgithub.com\u002Fhathach\u002Ftinyusb\u002Fissues>`_ and follow the templates there.\n\nSee `Porting`_ guide for adding support for new MCUs and boards.\n\nDevice Stack\n------------\n\nSupports multiple device configurations by dynamically changing USB descriptors, low power functions such like suspend, resume, and remote wakeup. The following device classes are supported:\n\n-  Audio Class 1.0\u002F2.0 (UAC1\u002FUAC2)\n-  Bluetooth Host Controller Interface (BTH HCI)\n-  Communication Device Class (CDC)\n-  Device Firmware Update (DFU): DFU mode (WIP) and Runtime\n-  Human Interface Device (HID): Generic (In & Out), Keyboard, Mouse, Gamepad etc ...\n-  Printer class\n-  Mass Storage Class (MSC): with multiple LUNs\n-  Musical Instrument Digital Interface (MIDI)\n-  Media Transfer Protocol (MTP\u002FPTP)\n-  Network with RNDIS, Ethernet Control Model (ECM), Network Control Model (NCM)\n-  Test and Measurement Class (USBTMC)\n-  Video class 1.5 (UVC): work in progress\n-  Vendor-specific class support with generic In & Out endpoints. Can be used with MS OS 2.0 compatible descriptor to load winUSB driver without INF file.\n-  `WebUSB \u003Chttps:\u002F\u002Fgithub.com\u002FWICG\u002Fwebusb>`__ with vendor-specific class\n\nIf you have a special requirement, ``usbd_app_driver_get_cb()`` can be used to write your own class driver without modifying the stack. Here is how the RPi team added their reset interface `raspberrypi\u002Fpico-sdk#197 \u003Chttps:\u002F\u002Fgithub.com\u002Fraspberrypi\u002Fpico-sdk\u002Fpull\u002F197>`_\n\nHost Stack\n----------\n\n- Communication Device Class: CDC-ACM\n- Vendor serial over USB: FTDI, CP210x, CH34x, PL2303\n- Human Interface Device (HID): Keyboard, Mouse, Generic\n- Mass Storage Class (MSC)\n- Musical Instrument Digital Interface (MIDI)\n- Hub with multiple-level support\n\nSimilar to the Device Stack, if you have a special requirement, ``usbh_app_driver_get_cb()`` can be used to write your own class driver without modifying the stack.\n\nPower Delivery Stack\n--------------------\n\n- Power Delivery 3.0 (PD3.0) with USB Type-C support (WIP)\n- Super early stage, only for testing purpose\n- Only support STM32 G4\n\nOS Abstraction layer\n--------------------\n\nTinyUSB is completely thread-safe by pushing all Interrupt Service Request (ISR) events into a central queue, then processing them later in the non-ISR context task function. It also uses semaphore\u002Fmutex to access shared resources such as Communication Device Class (CDC) FIFO. Therefore the stack needs to use some of the OS's basic APIs. Following OSes are already supported out of the box.\n\n- **No OS**\n- **FreeRTOS**\n- `RT-Thread \u003Chttps:\u002F\u002Fgithub.com\u002FRT-Thread\u002Frt-thread>`_: `repo \u003Chttps:\u002F\u002Fgithub.com\u002FRT-Thread-packages\u002Ftinyusb>`_\n- **Mynewt** Due to the newt package build system, Mynewt examples are better to be on its `own repo \u003Chttps:\u002F\u002Fgithub.com\u002Fhathach\u002Fmynewt-tinyusb-example>`_\n\nSupported CPUs\n--------------\n\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| Manufacturer | Family                      | Device | Host | Highspeed | Driver                 | Note               |\n+==============+=============================+========+======+===========+========================+====================+\n| Allwinner    | F1C100s\u002FF1C200s             | ✔      |      | ✔         | sunxi                  | musb variant       |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| Analog       | MAX3421E                    |        | ✔    | ✖         | max3421                | via SPI            |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | MAX32 650, 666, 690,        | ✔      |      | ✔         | musb                   | 1-dir ep           |\n|              | MAX78002                    |        |      |           |                        |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| Artery AT32  | F403a_407, F413             | ✔      |      |           | fsdev                  | 512 USB RAM        |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | F415, F435_437, F423,       | ✔      | ✔    |           | dwc2                   |                    |\n|              | F425, F45x                  |        |      |           |                        |                    |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | F402_F405                   | ✔      | ✔    | ✔         | dwc2                   | F405 is HS         |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| Bridgetek    | FT90x                       | ✔      |      | ✔         | ft9xx                  | 1-dir ep           |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| Broadcom     | BCM2711, BCM2837            | ✔      |      | ✔         | dwc2                   |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| Dialog       | DA1469x                     | ✔      | ✖    | ✖         | da146xx                |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| Espressif    | S2, S3, H4                  | ✔      | ✔    | ✖         | dwc2                   |                    |\n| ESP32        +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | P4                          | ✔      | ✔    | ✔         | dwc2                   |                    |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | S31                         | ✔      | ✔    | ✔         | dwc2                   |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| GigaDevice   | GD32VF103                   | ✔      |      | ✖         | dwc2                   |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| HPMicro      | HPM6750                     | ✔      | ✔    | ✔         | ci_hs, ehci            |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| Infineon     | XMC4500                     | ✔      | ✔    | ✖         | dwc2                   |                    |\n+--------------+-----+-----------------------+--------+------+-----------+------------------------+--------------------+\n| MicroChip    | SAM | D11, D21, L21, L22    | ✔      |      | ✖         | samd                   |                    |\n|              |     +-----------------------+--------+------+-----------+------------------------+--------------------+\n|              |     | D51, E5x              | ✔      |      | ✖         | samd                   |                    |\n|              |     +-----------------------+--------+------+-----------+------------------------+--------------------+\n|              |     | G55                   | ✔      |      | ✖         | samg                   | 1-dir ep           |\n|              |     +-----------------------+--------+------+-----------+------------------------+--------------------+\n|              |     | E70,S70,V70,V71       | ✔      |      | ✔         | samx7x                 | 1-dir ep           |\n|              +-----+-----------------------+--------+------+-----------+------------------------+--------------------+\n|              | PIC | 24                    | ✔      |      |           | pic                    | ci_fs variant      |\n|              |     +-----------------------+--------+------+-----------+------------------------+--------------------+\n|              |     | 32 mm, mk, mx         | ✔      |      |           | pic                    | ci_fs variant      |\n|              |     +-----------------------+--------+------+-----------+------------------------+--------------------+\n|              |     | dsPIC33               | ✔      |      |           | pic                    | ci_fs variant      |\n|              |     +-----------------------+--------+------+-----------+------------------------+--------------------+\n|              |     | 32mz                  | ✔      |      |           | pic32mz                | musb variant       |\n+--------------+-----+-----------------------+--------+------+-----------+------------------------+--------------------+\n| MindMotion   | mm32                        | ✔      |      | ✖         | mm32f327x_otg          | ci_fs variant      |\n+--------------+-----+-----------------------+--------+------+-----------+------------------------+--------------------+\n| NordicSemi   | nRF52, nRF53                | ✔      | ✖    | ✖         | nrf5x                  | only ep8 is ISO    |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | nRF54                       | ✔      | ✖    | ✔         | dwc2                   |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| Nuvoton      | NUC120                      | ✔      | ✖    | ✖         | nuc120                 |                    |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | NUC121\u002FNUC125, NUC126       | ✔      | ✖    | ✖         | nuc121                 |                    |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | NUC505                      | ✔      |      | ✔         | nuc505                 |                    |\n+--------------+---------+-------------------+--------+------+-----------+------------------------+--------------------+\n| NXP          | iMXRT   | RT 10xx, 11xx     | ✔      | ✔    | ✔         | ci_hs, ehci            |                    |\n|              +---------+-------------------+--------+------+-----------+------------------------+--------------------+\n|              | Kinetis | KL                | ✔      | ⚠    | ✖         | ci_fs, khci            |                    |\n|              |         +-------------------+--------+------+-----------+------------------------+--------------------+\n|              |         | K32L2             | ✔      |      | ✖         | khci                   | ci_fs variant      |\n|              +---------+-------------------+--------+------+-----------+------------------------+--------------------+\n|              | LPC     | 11u, 13, 15       | ✔      | ✖    | ✖         | lpc_ip3511             |                    |\n|              |         +-------------------+--------+------+-----------+------------------------+--------------------+\n|              |         | 17, 40            | ✔      | ⚠    | ✖         | lpc17_40, ohci         |                    |\n|              |         +-------------------+--------+------+-----------+------------------------+--------------------+\n|              |         | 18, 43            | ✔      | ✔    | ✔         | ci_hs, ehci            |                    |\n|              |         +-------------------+--------+------+-----------+------------------------+--------------------+\n|              |         | 51u               | ✔      | ✖    | ✖         | lpc_ip3511             |                    |\n|              |         +-------------------+--------+------+-----------+------------------------+--------------------+\n|              |         | 54                | ⚠      | ⚠    | ✔         | lpc_ip3511, lpc_ip3516 | NRND, read errata  |\n|              |         +-------------------+--------+------+-----------+------------------------+--------------------+\n|              |         | 55                | ✔      | ✔    | ✔         | lpc_ip3511, lpc_ip3516 |                    |\n|              +---------+-------------------+--------+------+-----------+------------------------+--------------------+\n|              | MCX     | N9                | ✔      |      | ✔         | ci_fs, ci_hs, ehci     |                    |\n|              |         +-------------------+--------+------+-----------+------------------------+--------------------+\n|              |         | A15               | ✔      |      |           | ci_fs                  |                    |\n|              +---------+-------------------+--------+------+-----------+------------------------+--------------------+\n|              | RW61x                       | ✔      | ✔    | ✔         | ci_hs, ehci            |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| Raspberry Pi | RP2040, RP2350              | ✔      | ✔    | ✖         | rp2040, pio_usb        |                    |\n+--------------+-----+-----------------------+--------+------+-----------+------------------------+--------------------+\n| Renesas      | RX  | 63N, 65N, 72N         | ✔      | ✔    | ✖         | rusb2                  |                    |\n|              +-----+-----------------------+--------+------+-----------+------------------------+--------------------+\n|              | RA  | 4M1, 4M3, 6M1         | ✔      | ✔    | ✖         | rusb2                  |                    |\n|              |     +-----------------------+--------+------+-----------+------------------------+--------------------+\n|              |     | 6M5                   | ✔      | ✔    | ✔         | rusb2                  |                    |\n+--------------+-----+-----------------------+--------+------+-----------+------------------------+--------------------+\n| Silabs       | EFM32GG12                   | ✔      |      | ✖         | dwc2                   |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| Sony         | CXD56                       | ✔      | ✖    | ✔         | cxd56                  |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| ST STM32     | F0, F3, L0, L1, L5, WBx5    | ✔      | ✖    | ✖         | stm32_fsdev            |                    |\n|              +----+------------------------+--------+------+-----------+------------------------+--------------------+\n|              | F1 | 102, 103               | ✔      | ✖    | ✖         | stm32_fsdev            | 512 USB RAM        |\n|              |    +------------------------+--------+------+-----------+------------------------+--------------------+\n|              |    | 105, 107               | ✔      | ✔    | ✖         | dwc2                   |                    |\n|              +----+------------------------+--------+------+-----------+------------------------+--------------------+\n|              | F2, F4, F7, H7, H7RS        | ✔      | ✔    | ✔         | dwc2                   |                    |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | C0, G0, H5, U3              | ✔      | ✔    | ✖         | stm32_fsdev            | 2KB USB RAM        |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | G4                          | ✔      | ✖    | ✖         | stm32_fsdev            | 1KB USB RAM        |\n|              +----+------------------------+--------+------+-----------+------------------------+--------------------+\n|              | L4 | 4x2, 4x3               | ✔      | ✖    | ✖         | stm32_fsdev            | 1KB USB RAM        |\n|              |    +------------------------+--------+------+-----------+------------------------+--------------------+\n|              |    | 4x5, 4x6, 4+           | ✔      | ✔    | ✖         | dwc2                   |                    |\n|              +----+------------------------+--------+------+-----------+------------------------+--------------------+\n|              | N6                          | ✔      | ✔    | ✔         | dwc2                   |                    |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | U0                          | ✔      | ✖    | ✖         | stm32_fsdev            | 1KB USB RAM        |\n|              +----+------------------------+--------+------+-----------+------------------------+--------------------+\n|              | U5 | 535, 545               | ✔      | ✔    | ✖         | stm32_fsdev            | 2KB USB RAM        |\n|              |    +------------------------+--------+------+-----------+------------------------+--------------------+\n|              |    | 575, 585               | ✔      | ✔    | ✖         | dwc2                   |                    |\n|              |    +------------------------+--------+------+-----------+------------------------+--------------------+\n|              |    | 59x,5Ax,5Fx,5Gx        | ✔      | ✔    | ✔         | dwc2                   |                    |\n+--------------+----+------------------------+--------+------+-----------+------------------------+--------------------+\n| TI           | MSP430                      | ✔      | ✖    | ✖         | msp430x5xx             |                    |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | MSP432E4, TM4C123           | ✔      |      | ✖         | musb                   |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| ValentyUSB   | eptri                       | ✔      | ✖    | ✖         | eptri                  |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n| WCH          | CH32F20x                    | ✔      |      | ✔         | ch32_usbhs             |                    |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | CH32V20x                    | ✔      |      | ✖         | stm32_fsdev\u002Fch32_usbfs |                    |\n|              +-----------------------------+--------+------+-----------+------------------------+--------------------+\n|              | CH32V305, CH32V307          | ✔      |      | ✔         | ch32_usbfs\u002Fhs          |                    |\n+--------------+-----------------------------+--------+------+-----------+------------------------+--------------------+\n\nTable Legend\n^^^^^^^^^^^^\n\n========= =========================\n✔         Supported\n⚠         Partial support\n✖         Not supported by hardware\n\\[empty\\] Unknown\n========= =========================\n\nDevelopment Tools\n-----------------\n\nThe following tools are provided freely to support the development of the TinyUSB project:\n\n- `IAR Build Tools (CX) \u003Chttps:\u002F\u002Fiar.com>`_ Professional IDE and compiler for embedded development.\n- `JetBrains CLion \u003Chttps:\u002F\u002Fwww.jetbrains.com\u002Fclion\u002F>`_ Cross-platform IDE for C and C++ development.\n- `PVS-Studio \u003Chttps:\u002F\u002Fpvs-studio.com\u002Fen\u002Fpvs-studio\u002F?utm_source=website&utm_medium=github&utm_campaign=open_source>`_ static analyzer for C, C++, C#, and Java code.\n\n\n.. |Build Status| image:: https:\u002F\u002Fgithub.com\u002Fhathach\u002Ftinyusb\u002Factions\u002Fworkflows\u002Fbuild.yml\u002Fbadge.svg\n   :target: https:\u002F\u002Fgithub.com\u002Fhathach\u002Ftinyusb\u002Factions\u002Fworkflows\u002Fbuild.yml\n.. |CircleCI Status| image:: https:\u002F\u002Fdl.circleci.com\u002Fstatus-badge\u002Fimg\u002Fcircleci\u002F4AYHvUhFxdnY4rA7LEsdqW\u002FQmrpoL2AjGqetvFQNqtWyq\u002Ftree\u002Fmaster.svg?style=svg\n   :target: https:\u002F\u002Fdl.circleci.com\u002Fstatus-badge\u002Fredirect\u002Fcircleci\u002F4AYHvUhFxdnY4rA7LEsdqW\u002FQmrpoL2AjGqetvFQNqtWyq\u002Ftree\u002Fmaster\n.. |Documentation Status| image:: https:\u002F\u002Freadthedocs.org\u002Fprojects\u002Ftinyusb\u002Fbadge\u002F?version=latest\n   :target: https:\u002F\u002Fdocs.tinyusb.org\u002Fen\u002Flatest\u002F?badge=latest\n.. |Static Analysis| image:: https:\u002F\u002Fgithub.com\u002Fhathach\u002Ftinyusb\u002Factions\u002Fworkflows\u002Fstatic_analysis.yml\u002Fbadge.svg\n   :target: https:\u002F\u002Fgithub.com\u002Fhathach\u002Ftinyusb\u002Factions\u002Fworkflows\u002Fstatic_analysis.yml\n.. |Fuzzing Status| image:: https:\u002F\u002Foss-fuzz-build-logs.storage.googleapis.com\u002Fbadges\u002Ftinyusb.svg\n   :target: https:\u002F\u002Foss-fuzz-build-logs.storage.googleapis.com\u002Findex.html#tinyusb\n.. |Membrowse| image:: https:\u002F\u002Fmembrowse.com\u002Fbadge.svg\n   :target: https:\u002F\u002Fmembrowse.com\u002Fpublic\u002Fhathach\u002Ftinyusb\n.. |License| image:: https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-brightgreen.svg\n   :target: https:\u002F\u002Fopensource.org\u002Flicenses\u002FMIT\n\n\n.. _Changelog: docs\u002Finfo\u002Fchangelog.rst\n.. _Contributors: CONTRIBUTORS.rst\n.. _Getting Started: docs\u002Fgetting_started.rst\n.. _Supported Boards: docs\u002Freference\u002Fboards.rst\n.. _Dependencies: docs\u002Freference\u002Fdependencies.rst\n.. _Concurrency: docs\u002Freference\u002Fconcurrency.rst\n.. _Code of Conduct: CODE_OF_CONDUCT.rst\n.. _Porting: docs\u002Fporting.rst\n","TinyUSB 是一个开源的跨平台USB主机\u002F设备栈，专为嵌入式系统设计。其核心功能包括线程安全（将USB中断延迟到任务上下文处理）、内存安全（无动态分配，所有缓冲区静态化）以及高度可移植性（支持50多种MCU系列）。此外，它还全面支持CDC、HID、MSC、音频等设备类及主机支持，并且兼容裸机环境和多种RTOS如FreeRTOS、RT-Thread等。由于其小巧的体积、良好的实时性能及广泛的MCU支持，TinyUSB非常适合于需要USB通信但资源受限的嵌入式应用场景，如物联网设备、微控制器项目等。",2,"2026-06-11 03:06:45","top_language"]