USB系统的典型应用如图3所示。
在图3所示系统中,显示器、Audio、Modem皆为全速设备,键盘、鼠标为低速设备。其数据传输为:
◇USBHOST通过控制传输更改显示器属性。
◇USBHOST通过块数据传输将要显示的数据送给显示器。
◇USBHOST通过控制传输更改键盘、鼠标属性。
◇USBHOST通过中断传输要求键盘、鼠标输入读入系统。
◇USBHOST通过控制传输更改Audio属性。
◇USBHOST通过同步传输与Audio设备传输数据。
◇USBHOST通过控制传输更改Modem属性。
◇USBHOST通过块数据传输与Modem设备传输数据六、一个USBHOST接口的软硬件设计
市场上现已有很多公司提供的USB接口器件,如PHILIPS的PDIUSBD11PDIUSBD12,OKI的MSM60581,NATIONAL的USBN9602,LUCENT的USS-820USS-620,SCANLOGIC的SL11,等等。
同时也有很多带USB接口的处理器,如CYPRESS的EZ-USB,AMD的AM186CC,ATMEL的AT43320,MOTOROLA的PPC823PPC850,等等。下面给出用SCANLOGIC的USB接口器件SL11HT实现嵌入式USBHOST的例子。
1.SL11HT特点
◇遵从USB1.1标准;◇支持全速低速传输;◇支持主机设备端两种模式;◇3.35.0V供电;◇片内包含256个字节的SRAM;◇48MHz晶振输入。
当SL11HT被用作USBHOST接口时,对系统有以下要求:
◇由系统维护SOF帧数目;◇由系统生成CRC5效验码;◇要求系统中断潜伏期小于1.5μs.
2.SL11HT接口硬件框图
3.USBHOST端软件结构
(1)USB接口驱动程序
USB接口驱动程序需实现以下功能:
◇USB接口器件的初始化;◇计算上层数据包的效验和,发送上层的数据包;◇发送SOF帧;◇接收从USB接口传送来的数据,并检查数据的有效性;◇将接收到的数据送往上层。
(2)USB协议栈驱动程序
USB协议栈驱动程序需实现以下功能:
◇提供与设备驱动程序的接口;◇读取并解析USB设备描述符,配置描述符;◇为USB设备分配唯一的地址;◇使用默认的配置来配置设备;◇支持基本的USB命令请求;◇连接设备与相应的驱动程序;◇转发设备驱动程序的数据包。
(3)设备驱动程序
设备驱动程序需实现以下功能:
◇提供与应用程序的接口;◇读取并解析USB设备特有的描述符,获得设备提供的传输通道;◇发送设备特有的和基本的USB命令请求;◇通过设备提供的传输通道与设备进行数据传输;◇通过USB命令请求重新配置设备。
延伸阅读:USB 系统 结构
信息发布:广州名易软件有限公司 http://www.myidp.net