目录
一、 基础知识
1. USB简介
USB:Universal Serial Bus,中文译为“通用串行总线”,USB设备最显著的优点是具有热插拔功能、传输速率快。USB是主从结构的系统,具有主机和设备这两个角色,即Host和Device。此外,还有两类特殊的USB设备,分别是USB集线器设备(USB Hub)和USB OTG设备。
USB目前的协议版本有:USB1.0、USB1.1、USB2.0、USB3.0。USB1.0和USB1.1只有低速模式(Low-Speed Mode)和全速模式(Full-Speed Mode),理论上最大传输速率分别为1.5Mbps和12Mbps。USB2.0引入了传输速度更快的高速模式(High-Speed Mode),理论上最大传输速率为480Mbps。而USB3.0在速度的提升上,实现了重大飞跃,最大传输速率理论值高达5Gbps。需要注意的是,这些都是理论值,实际开发过程中,很难达到这些理论值(需要自己去做性能上的优化)。
在实际开发过程中,不同的传输类型有不同的传输速率,每一次的数据交互,都是一个相当复杂的过程,有令牌包的解析、数据包的传输、握手包的回应等等,这些都是额外的消耗,因此,传输速度是不可能达到理论值。USB有四种传输类型,分别是控制传输、中断传输、块传输、等时传输。
先从Device开发开始,再逐步深入,研究Host的实现。