[问题] host controller 如何侦测usb装置

楼主: likecyndi   2014-10-31 14:44:03
从网络上的资讯得知,所有usb的沟通
都是从host发起,追host controller driver之后
在注册时,hcd的struct内,会顺便注册一个ISR
当有usb装置接入的时候,便会开始执行此ISR的function
但是host controller如何得知装置接入的event
是D+、D-会拉一个特殊的讯号通知吗??
作者: askacis (ASKA)   2014-10-31 17:05:00
平常BUS是SE0状态,full/high speed接入会把D+拉高,反之low speed会拉D-,这样host就会准备来沟通了如果是high speed device,他会再发一个chrip K,2.0 host收到之后会再回应一串KJKJKJ的讯号完成high speed 交握
作者: inses (毛笔)   2014-11-01 12:06:00
楼主: likecyndi   2014-11-03 09:28:00
感谢askacis大大的说明 还有inses大补充的pdf另外再问一个问题,所以整个沟通的行为是,host提供5V的电,D+、D-是由device去拉的?一样的主机 接不同的device,反应时间不一样,要量测波型 才能确定吗?
作者: askacis (ASKA)   2014-11-03 11:22:00
从SE0到D+拉high是device作的没错,因为不同device,用的controller跟phy可能也不一样,所以可能反应时间不一
楼主: likecyndi   2014-11-03 13:28:00
a大这边指的controller跟phy是host端还是device端??因为都是从host的角度去看,对于device没有这么了解
作者: askacis (ASKA)   2014-11-03 16:27:00
我讲的是device端~~
楼主: likecyndi   2014-11-04 13:26:00
感谢askacis大的经验分享~会再花时间琢磨

Links booklink

Contact Us: admin [ a t ] ucptt.com