看板 LinuxDev 關於我們 聯絡資訊
從網路上的資訊得知,所有usb的溝通 都是從host發起,追host controller driver之後 在註冊時,hcd的struct內,會順便註冊一個ISR 當有usb裝置接入的時候,便會開始執行此ISR的function 但是host controller如何得知裝置接入的event 是D+、D-會拉一個特殊的訊號通知嗎?? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.20.230.25 ※ 文章網址: http://www.ptt.cc/bbs/LinuxDev/M.1414737846.A.E76.html
askacis: 平常BUS是SE0狀態,full/high speed接入會把D+拉高,反之 10/31 17:05
askacis: low speed會拉D-,這樣host就會準備來溝通了 10/31 17:11
askacis: 如果是high speed device,他會再發一個chrip K,2.0 host 10/31 17:23
askacis: 收到之後會再回應一串KJKJKJ的訊號完成high speed 交握 10/31 17:25
inses: m_choate_sp.pdf 11/01 12:06
likecyndi: 感謝askacis大大的說明 還有inses大補充的pdf 11/03 09:28
likecyndi: 另外再問一個問題,所以整個溝通的行為是,host提供5V 11/03 09:54
likecyndi: 的電,D+、D-是由device去拉的?一樣的主機 接不同的 11/03 09:56
likecyndi: device,反應時間不一樣,要量測波型 才能確定嗎? 11/03 09:57
askacis: 從SE0到D+拉high是device作的沒錯,因為不同device, 11/03 11:22
askacis: 用的controller跟phy可能也不一樣,所以可能反應時間不一 11/03 11:23
likecyndi: a大這邊指的controller跟phy是host端還是device端?? 11/03 13:28
likecyndi: 因為都是從host的角度去看,對於device沒有這麼了解 11/03 13:29
askacis: 我講的是device端~~ 11/03 16:27
likecyndi: 感謝askacis大的經驗分享~會再花時間琢磨 11/04 13:26