ch552做device如何確認(rèn)usb已經(jīng)拔出?

ch552做device有usb插入會(huì)請(qǐng)求描述符,如何判斷usb被拔出,是否有專(zhuān)門(mén)的寄存器記錄狀態(tài),請(qǐng)大神指點(diǎn)!

有如下幾種方法判斷:

1、自供電(未用VBUS),用一無(wú)上拉的IO引腳串個(gè)1K~5K電阻保護(hù)后檢查VBUS電平(VBUS上最好有20K下拉默認(rèn)低)

2、USB供電,不需要確認(rèn)(拔出就斷電了,判斷沒(méi)必要)

3、不管供電,USB拔出后(或者電腦睡眠后),SUSPEND狀態(tài)位會(huì)在大概3ms~8mS后置1

4、如果只是為了內(nèi)部研究技術(shù),可根據(jù)HOST有15K~50K下拉判斷。

? ? ?方法是在設(shè)備D+上用330K上拉電阻且關(guān)閉GPIO上拉和D+的1K5上拉,如果發(fā)現(xiàn)D+被330K維持在高電平說(shuō)明沒(méi)接電腦HOST,如果發(fā)現(xiàn)D+為低,那么看SUSPEND狀態(tài)位=0則開(kāi)啟1K5上拉,準(zhǔn)備USB工作,睡眠中斷發(fā)現(xiàn)SUSPEND狀態(tài)位=1時(shí)(說(shuō)明D+一直為高),且較長(zhǎng)時(shí)間(20mS以上),就關(guān)閉1K5, 再根據(jù)330K能否維持上拉判斷,能上拉說(shuō)明拔了,不能上拉說(shuō)明是睡眠、掛起(HOST仍有下拉),恢復(fù)1K5



第三種方法比較符合要求 ,軟件解決問(wèn)題,存在疑點(diǎn):1,平常552也會(huì)進(jìn)入休眠(需要設(shè)置串口接收喚醒,否知無(wú)法接收數(shù)據(jù))2,USB拔出后(或者電腦睡眠后)這兩個(gè)可以直接視為拔出狀態(tài),但是與疑點(diǎn)1沖突,無(wú)法直接判定為拔出狀態(tài)


可以監(jiān)測(cè)USB_MIS_ST寄存器的SUSPEND狀態(tài)位,當(dāng)設(shè)備斷開(kāi)或者主機(jī)休眠該位置 1


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频