USB

        RT-Thread 实时操作系统上的 USB 协议栈,包括 USB Host 和 USB Device,它具有低资源占有,高可配置性,高扩展性的特点,主要用于嵌入式系统。

       RT-Thread 中的 USB 设备协栈架构如下图 所示,协议栈为分层,分模块的结构。它以 USB 设备控制器为载体,控制器驱动层为支撑,协议核心层为枢纽,在其上层线程安全地实现了各种设备类型,如虚拟串口 VCOM,虚拟网卡 RNDIS 等。

        协议栈架构中,从下往上分别是 USB 设备控制器, USB 设备控制器驱动层, USB 设备协议栈核心层, USB 功能类驱动层。
USB 设备控制器处于硬件层,是整个 USB 设备协议栈的载体,此协议栈能够支持多个不同的设备控制器。

        USB 设备控制器驱动层实现了不同 USB 设备控制器的驱动,用于驱动各种不同 USB 设备控制器硬件工作。
        USB 设备协议栈核心层相当于整个协议栈的中枢神经,负责各类 USB消息和数据的处理与传递。
        USB 功能类驱动层提供了 USB 类驱动的框架,用于承载提供各种功能的功能类驱动。