目录
1.USB总线电平标准
USB总线电平标准如下,下图标识了低速/全速、高速总线输出特性的电平标准。
2.USB总线状态
下图显示了USB低速和全速总线信号1、信号0、SE0状态、SE1状态、J状态、K状态、空闲IDLE状态下D+、D-线分别对应的电平信号范围。
下图显示了USB高速总线信号1、信号0、J状态、K状态、Chirp J状态、Chirp K状态、空闲IDLE状态下D+、D-线分别对应的电平信号范围。
注:有上面两张图可以总结出low speed和full/high spped J状态/K状态相反。
3.USB总线信号
USB总线信号有SOP信号、EOP信号、Reset信号、Suspend信号、Resume信号、SYNC信号、连接信号、断开信号等。那么当USB总线状态发生怎样的变化才会生成这些信号呢?我们在这里只讨论低速/全速的总线信号,高速的略有差别,大家可以查阅usb_20.pdf进行学习。
3.1 SOP信号
低速设备SOP信号:总线从IDLE状态(J状态:差分0)切到K状态(差分1),即可完成低速SOP信号的发送。
全速设备SOP信号:总线从IDLE状态(J状态:差分1)切到K状态(差分0),即可完成全速SOP信号的发送。
3.2 EOP信号
低速设备EOP信号:总线持续2位时间的SE0(单端0)状态,后跟随1位时间的J状态(差分0),即可完成低速EOP信号的发送。
全速设备EOP信号:总线持续2位时间的SE0(单端0)状态,后跟随1位时间的J状态(差分1),即可完成全速EOP信号的发送。
3.3 Reset信号
主机可以对USB设备进行复位,主要是主机在和设备通讯之前会发送Reset信号把设备设置到默认的未配置状态,即主机拉低两根信号线(SE0状态)并保持10ms。
3.4 Suspend信号
总线3ms以上的IDLE状态,则设备会认为主机发起了一次挂起操作。
3.5 Resume信号
USB设备进入挂起状态之后,将由Resume信号进行唤醒。Resume信号可以由USB主机发起,也可以由USB设备本身触发,但是只有USB主机可以结束Resume信号。
1.主机在挂起设备后可通过翻转数据线上的极性并保持20ms来唤醒设备,并以低速EOP信号结尾。
2.如果设备支持远程唤醒,设备可向主机发起远程唤醒请求,前提是设备已进入idle状态至少5ms,设备会驱动总线进入K状态,如下图,K状态必须维持1ms-15ms之内,此信号会在1ms内被主机接管,主机会继续驱动唤醒信号直到20ms,并以低速EOP信号结尾。
3.6 SYNC信号
3个KJ状态的切换,后跟随2位时间的K状态,完成一次同步信号的发送。如下图所示。
3.7 连接信号
当主机检测到某一个数据线电平拉高保持了一段时间,就认为有设备连接上来了。低速设备连接时,主机会检测到D-线被拉高,全速/高速设备连接时,主机会检测到D+线被拉高。
3.7.1低速设备连接检测时序图
3.7.2全速/高速设备连接检测时序图
TDCNN针对Hub不同的状态,时间是不同的,如下对应表(见usb_20.pdf P186)。
Hub状态 | TDCNN |
没有被挂起 |
2.5us < TDCNN < 2000us
|
被挂起 | 2.5us < TDCNN < 12000us |
3.8 断开信号
没有设备连接时或者设备断开时,主机端D+、D-数据线上的下拉电阻起作用,使得二者都在低电平;当低电平持续TDDIS时间就会被主机认为是断开状态。如下图,TDDIS在2到2.5us之间。
1.本文部分素材来源网络,版权归原作者所有,如涉及作品版权问题,请与我联系删除;
2.未经原作者允许不得转载本文内容,否则将视为侵权;
3.转载或者引用本文内容请注明来源及原作者;
4.对于不遵守此声明或者其他违法使用本文内容者,本人依法保留追究权等。
下面是我的个人微信公众号,关注【一个早起的程序员】精彩系列文章每天不断。