国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

USB OTG插入檢測識別

2023-02-14 09:56 作者:txx588  | 我要投稿

轉載請標注原文地址:http://blog.csdn.net/uranus_wm/article/details/9838847


?


一 USB引腳一般四根線,定義如下:


為支持OTG功能,mini/micro usb接口擴展了一個ID引腳(第4腳)


A設備端ID腳接地,則初始狀態(tài)為Host,例如PC和支持OTG設備做主設備時


B設備端ID腳懸空,默認上拉為高電平,則初始狀態(tài)為Device,例如U盤和支持OTG設備做從設備時

1. 移動設備如需支持OTG,內部ID引腳需要默認上拉為高


2. VBUS是輸入輸出雙向引腳。對于Device是power supply輸入腳;對于Host需要串一個5V電源輸出給device。



二 USB插入檢測過程,看下面一個簡單電路,Samsung Exynos4412平臺:


電路描述:CON1為micro usb連接器,VBUS連接系統(tǒng)XuotgVBUS腳,同時提供一個中斷輸出腳到XEINT28


同時外部一個DC5V經過控制芯片也輸出到XuotgVBUS,作為host時需要用到給外部供電


ID腳上拉1.8V作為Host/Slave檢測,同時提供另一個中斷輸入腳到XEINT29


?


該設備支持OTG,下面說下設備的發(fā)現(xiàn)過程:


作為從設備插入PC端口時:


1.? 系統(tǒng)檢測到VBUS上的XEINT28上升沿觸發(fā)中斷,因為PC端會有一個5V從VBUS給過來,進入中斷處理函數(shù)進一步確認ID腳狀態(tài),ID腳為低則狀態(tài)錯誤,ID腳為高表示設備應該切換到從設備模式


2. 通知usb gadget使能vbus,按照device模式使能PHY。gadget在probe時注冊了一個SPI軟中斷IRQ_USB_HSOTG,用于響應數(shù)據(jù)接收


3. 開啟usb clk,使能PHY,此時外部5V電源供給系統(tǒng)XuotgVBUS,gadget收到IRQ_USB_HSOTG中斷要求重啟OTG core


4. USB DP(高速設備為DP,低速設備為DM)上產生一個高電平脈沖,此時PC識別到一個USB設備插入,windows會提示用戶


5. 后續(xù)就是SETUP,GET DISCRIPTOR的過程


?


作為主設備發(fā)現(xiàn)設備插入時:


1. 系統(tǒng)檢測到ID腳上XEINT29下降沿觸發(fā)中斷(實際是插入的usb公口第四腳直接連接到第五腳地上面),進入中斷處理,切換到主設備模式


2. 關中斷,使能DC5V給VBUS上電,喚醒ehci與ohci


3. usb core在內核初始化時注冊了一個名為khubd的內核線程,由khubd監(jiān)控port event。(實際過程我理解是從設別由VUBS供電后,會在DP或DM上產生一個高電平脈沖


ehci在接收到脈沖信號后識別到設備插入,僅僅是理解,這一點未驗證)


3. khubd獲取port,speed后交給ehci,接下來就是usb的SETUP,GET DISCRIPTOR過程


USB OTG插入檢測識別的評論 (共 條)

分享到微博請遵守國家法律
玉屏| 巴青县| 宜春市| 双牌县| 肥东县| 云梦县| 庆安县| 普宁市| 甘洛县| 蒲江县| 乌兰浩特市| 株洲市| 青州市| 乐平市| 巨野县| 双鸭山市| 锡林浩特市| 瓮安县| 潮安县| 抚宁县| 海晏县| 黔江区| 繁昌县| 寻甸| 青浦区| 麦盖提县| 通江县| 淮安市| 凤翔县| 资兴市| 高阳县| 贵港市| 长治县| 邯郸市| 衡阳县| 芮城县| 云浮市| 长宁县| 通辽市| 获嘉县| 临泽县|