斷開 USB 設備,無需拔出並重新連接

斷開 USB 設備,無需拔出並重新連接

我有一個從危險原型中購買的 IRTOY。我在 Windows 7 x64 中使用 WinLirc 0.9c 運行它。但有時設備會突然掛起,我需要將其卸下並重新連接才能使其再次工作。從裝置管理員停用和啟用 com 連接埠通常會導致 Windows 出現錯誤訊息,指出裝置無法啟動。

所以看起來像是與 IRTOY 相關的硬體問題。現在我正在尋找一種設備來切斷USB電源。它應該能夠遠端切斷設備的電源。它實際上模擬了 USB 連接埠裝置的實體移除,就像帶有公頭和母頭 USB 連接器的繼電器一樣。

這個問題有什麼解決方法嗎?

答案1

顯然,IRTOY 有一個錯誤,需要完全重新啟動,而關閉電源是執行此操作的唯一方法。壞的。

透過軟體切換 VBUS 電源的解決方案是使用具有可切換連接埠電源控制器的 USB 集線器(這些集線器通常很難找到,但仍然比找到具有連接埠電源控制器的 PC 主機板更容易)。然後,您應該設法向連接了 IRTOY 的連接埠發出 ClearPortFeature(PORT_POWER),然後發出 SetPortFeature(PORT_POWER)。

我不確定如何從應用程式空間執行此操作,但免費的 USB 裝置樹檢視器(由烏威·西伯)可以使用彈出選項「重新啟動裝置」設定連接埠 VBUS 關閉並開啟。請記住,USB 連接埠通常連接有相當大的電容器,因此可能需要一些時間來對 VBUS 進行洩放,因此清除和設定命令必須及時正確分開。不幸的是,USBTreeView 做得太快了。或者,您可以重新啟動整個集線器,這需要足夠長的時間才能關閉其下游連接埠上的 VBUS。

如果 Uwe 沒有開放原始碼,您需要訪問微軟軟體開發工具包主要的 USBView 原始碼,並了解如何向驅動程式發出連接埠停用/啟用命令。

相關內容