linux usb驱动——host与device电路


USB硬件建立连接

一般usb有4根线(Vbus 、D+、D- 、GND),数据的D+,D-,供电的Vbus和GND。我们需要知道在集线器的端口上(比如电脑的usb口)分别接了一个15K欧姆的下拉电阻到地。

usb host端:在集线器的端口悬空时,就被这两个下拉电阻拉到了低电平。

usb device端:在D+或者D-上接了1.5K欧姆上拉电阻。(对于全速和高速设备, 上拉电阻是接在D+上;而低速设备则是上拉电阻接在D-上)。

这样,当设备插入到集线器时,由1.5K的上拉电阻和15K的下拉电阻分压,结果就将差分数据线中的一条拉高了。集线器检测到这个状态后,它就报告给USB主控制器(或者通过它上一层的集线器报告给USB主控制器),这样就检测到设备的插入了。USB高速设备先是被识别为全速设备,然后通过HOST和DEVICE两者之间的确认,再切换到高速模式的。在高速模式下,是电流传输模式,这时将D+上的上拉电阻断开。

            

               img1. USB HOST                                             img2. USB DEVICE

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM