usb2.0驱动学习笔记

usb设备的结构:

一个usb设备可以分为3层:

l  最底层是发送和接收包的总线接口。

l  中间层是处理总线接口与设备不同端点之间的数据路由。端点是数据的最终使用者和数据提供者。它可被认为是数据的信源和信宿。

l  最顶层是串行总线设备提供的功能,例如鼠标或者ISDN接口。

 

usb总线枚举过程:

 

当usb设备连接到usb总线或者从usb总线拔出设备时,主机都会用一个叫总线枚举的过程来识别和管理必要的设备状态变化。当usb设备连接到上电的端口时,主机采取以下行动:

1、  usb设备现在连接的集线器通过其状态变化管道的回答向主机报告连接时间。此时,usb设备处于上电状态,而且它连接的端口被禁能。

2、  主机通过查询集线器精确地确定变化的类型。

3、  现在主机知道了新设备所连接的端口,然后主机至少等待100ms,允许插入过程的完成,而且使设备的电源变得稳定。随后,主机向端口发送端口使能和复位命令。

4、  集线器向该端口执行要求的复位处理。当复位信号被释放后,端口已经使能。现在,usb设备处于默认状态,并可以从Vbus线取得小于100mA的电流。它所有的寄存器和状态都被复位,而且可以对默认的地址作出响应。

5、  主机向usb设备分配了一个惟一的地址,使设备进入寻址状态。

6、  在usb设备接收到惟一的地址前,它的默认控制管道仍可以通过默认的地址访问。主机读出设备描述符,以确定这个usb设备的默认逛到可以使用的实际最大数据有效负载时多少。

7、  通过读从0到n-1的各个配置(其中n是配置的数量),主机可以从设备读出配置信息。这个过程要几ms才能完成。

8、  根据配置信息以及如何使用usb设备,主机向设备非配一个配置值。设备现在处于配置状态,而且这种配置中的端点都有所描述的特性。Usb设备现在可以取得所选的配置在描述符中描述的Vbus电流量。从设备的光电来看,它已经准备好可以使用。

当拔出usb设备时,集线器再次向主机发送一个通知。设备的拔出会使它连接的端口被禁能。接收到拔出设备通知后,主机会更新它的拓扑信息。

 

usb系统描述:

usb互连

usb设备

usb主机

usb互连是指usb设备与主机连接及通讯方式,包含:

总线拓扑关系

层间关系

数据流模型

usb调度

usb主机

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
USB2.0回环模式是一种用于测试USB2.0设备的模式。在回环模式下,USB2.0设备会将发送的数据回送给自己,以便进行自我测试和验证。这种模式可以用于检测USB2.0设备的功能和性能是否正常。具体控制USB2.0回环模式的方法可以参考Cypress提供的开发工具包ySuiteUSB3.4,该工具包提供了开发USB应用的基本工具和资料。在使用回环模式之前,需要安装USB2.0模块的驱动程序,并对USB2.0芯片烧写相应的固件。如果需要更详细的资料,可以咨询相关专家或参考相关的开发文档。\[3\] #### 引用[.reference_title] - *1* [STM32CubeMX学习笔记(43)——USB接口使用(CDC虚拟串口)](https://blog.csdn.net/qq_36347513/article/details/127404464)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [基于FPGA的USB2.0数据传输(通过本文可以自己设计USB2.0模块)](https://blog.csdn.net/weixin_44586889/article/details/110172513)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值