一般而言,每个USB设备可以有一个或多个配置(configuration),设备的每个配置中都含有一个或更多的接口(interface),接口指出软件应该怎样访问硬件,另外,接口一般都有替换设置(alternate setting)以适应不同的带宽要求。设备的接口又包含一个或多个端点(endpoint),端点是作为通信管
道(pipe)的一个终点。端点类型直接影响着USB数据的传输类型,它有四种:控制(Control)、批量(Bulk)、中断(Interrupt)和同步(Isochronous),给定类型的端点总是使用对应类型的传输方式。
端点和管道的区别:从用户角度看,端点是可以直接进行IO数据流操作的设备中的基本单位,它是一个USB设备唯一可以确认的部分,是主机和设备之间通信流的终点。管道是一个端点与主机客户程序进行IO操作时使用的中介,也可以说它是主机和一个设备端点之间的信息连接,是数据流动的路径。管道和端点是一一对应的。端点侧重于静态的概念,而管道则侧重于动态的概念。
USB总线接口包括USB主控制器和根集线器,其中USB主控制器负责处理主机与设备之间电气和协议层的互连,根集线器则提供USB设备连接点。USB系统使用USB主控制器来管理主机和USB设备之间的数据传输,另外它也负责管理USB资源,如带宽等。应用软件是不能直接访问USB设备硬件的,而是通过USB系统软件和USB总线接口与USB设备进行交互。
USB通信模型
最新推荐文章于 2023-11-12 18:35:15 发布