微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > USB系统结构与应用设计

USB系统结构与应用设计

时间:01-18 来源:21ic 点击:

五、典型应用

  USB系统的典型应用如图3所示。

在图3所示系统中,显示器、Audio、Modem皆为全速设备,键盘、鼠标为低速设备。其数据传输为:

◇ USB HOST通过控制传输更改显示器属性。
◇ USB HOST通过块数据传输将要显示的数据送给显示器。
◇ USB HOST通过控制传输更改键盘、鼠标属性。
◇ USB HOST通过中断传输要求键盘、鼠标输入读入系统。
◇ USB HOST通过控制传输更改Audio属性。
◇ USB HOST通过同步传输与Audio设备传输数据。
◇ USB HOST通过控制传输更改Modem属性。
◇ USB HOST通过块数据传输与Modem设备传输数据。
 

六、一个USB HOST接口的软硬件设计

  市场上现已有很多公司提供的USB接口器件,如PHILIPS的PDIUSBD11/PDIUSBD12,OKI的MSM60581,NATIONAL的USBN9602,LUCENT的USS-820/USS-620,SCANLOGIC的SL11,等等。

  同时也有很多带USB接口的处理器,如CYPRESS的EZ-USB,AMD的AM186CC,ATMEL的AT43320,MOTOROLA的PPC823/PPC850,等等。下面给出用SCANLOGIC的USB接口器件SL11HT实现嵌入式USB HOST的例子。

1.SL11HT特点

  ◇ 遵从USB1.1标准;
  ◇ 支持全速/低速传输;
  ◇ 支持主机/设备端两种模式;
  ◇ 3.3/5.0V供电;
  ◇ 片内包含256个字节的SRAM;
  ◇ 48MHz晶振输入。

  当SL11HT被用作USB HOST接口时,对系统有以下要求:

  ◇ 由系统维护SOF帧数目;
  ◇ 由系统生成CRC5效验码;
  ◇ 要求系统中断潜伏期小于1.5μs。

2.SL11HT接口硬件框图

  图4简单地给出了使用SL11HT扩展USB接口的框图,更详细的硬件连线图请见参考文献2,3。

3.USB HOST端软件结构

  USB HOST端软件结构如图5所示。

  (1)USB接口驱动程序

  USB接口驱动程序需实现以下功能:

  ◇ USB接口器件的初始化;
  ◇ 计算上层数据包的效验和,发送上层的数据包;
  ◇ 发送SOF帧;
  ◇ 接收从USB接口传送来的数据,并检查数据的有效性;
  ◇ 将接收到的数据送往上层。

  (2)USB协议栈驱动程序

  USB协议栈驱动程序需实现以下功能:

  ◇ 提供与设备驱动程序的接口;
  ◇ 读取并解析USB设备描述符,配置描述符;
  ◇ 为USB设备分配唯一的地址;
  ◇ 使用默认的配置来配置设备;
  ◇ 支持基本的USB命令请求;
  ◇ 连接设备与相应的驱动程序;
  ◇ 转发设备驱动程序的数据包。

  (3)设备驱动程序

  设备驱动程序需实现以下功能:

  ◇ 提供与应用程序的接口;
  ◇ 读取并解析USB设备特有的描述符,获得设备提供的传输通道;
  ◇ 发送设备特有的和基本的USB命令请求;
  ◇ 通过设备提供的传输通道与设备进行数据传输;
  ◇ 通过USB命令请求重新配置设备。

参考文献

1 Universal Serial Bus Specification Revision 1.1 http://www.usb.org
2 SL11H/T USB Host/Slave Controllers Technical Reference. http://www.scanlogic.com
3 SL11H Application Notes. http://www.scanlogic.com

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top