解決方案
當連接電腦的設備失去電源供應,但電腦正常供電時會產生此問題。例如,當電腦進入待機或省電模式時,它通常會關閉USB的電源供應。此外,當電腦從休眠狀態醒來時,也會發生這種情況。在兩種情況下,電腦都不會重新偵測設備,因此您將無法操作USB設備。
當發生這種情況時,請按照以下的指示在Windows中重新偵測設備:
-
從Microsoft網站裡安裝DevCon工具。 DevCon是一個指令列工具(command-line utility),它有相當於裝置管理員(Device Manager)的功能。透過DevCon您可以啟用(enable)、禁用(disable)、重新啟動(restart)、更新(update)、移除(remove)和查詢(query)單一設備或設備組。 你可以在這裡下載DevCon 。
-
在Windows的開始選單滑鼠右鍵點擊執行(R) ,輸入devmgmt.msc之後單擊確定按鈕打開Windows裝置管理員。
-
確認有問題的設備連接到哪個USB Root Hub(port)。為此,請展開"通用序列匯流排控制器"
-
要查看您的設備是在哪個USB孔,請依次雙擊每個USB Root Hub選項,然後點擊開啟/關閉以查看您的設備是否已列出。
-
找到列出設備的USB Root Hub後,點擊詳細資料選項,然後從下拉式選單中選擇裝置例項識別碼(Device Instance Id)。如果您使用Windows 7,請選擇裝置例項路徑(Device Instance Path)。記錄下在第一個和第二個"\"符號之間顯示的名稱,例如ROOT_HUB20。
-
接下來,在Windows的開始選單滑鼠右鍵點擊執行(R) ,輸入cmd之後單擊確定按鈕打開命令提示字元。
-
在命令提示字元視窗中,首先將路徑檔改為含有您下載的devcon.exe資料夾。如果您使用的是64位元的作業系統,則需要確保您呼叫的是64位元版本的devcon.exe 。指引到正確的目錄後,接著輸入以下命令(將ROOT_HUB20替換為您在步驟5中記錄的內容),然後按下Enter。
devcon restart * ROOT_HUB20 *
注意: 如果介面操控設備(如滑鼠或鍵盤)或任何其他USB設備(如USB網路卡)與您嘗試重新偵測的USB設備位於同一個USB Root Hub上,那麼您的滑鼠或鍵盤在重啟時會與電腦失去與連結。
-
Windows將移除並重新偵測集線器和連接到它的任何USB設備,並在此過程中重新啟用它們。如果上述步驟沒有解決USB無法重新偵測的問題,您可能在步驟4中選擇了錯誤的集線器。重複步驟3 - 6直到重新啟動成功。
-
一旦知道設備連接到哪個USB Root Hub後,就可以在 LabVIEW使用System Exec VI 以程式化的方式使用此解決方案 ,System Exec VI允許您將命令傳遞到命令提示字元。該VI 可以在Block Diagram裡的Libraries and Executables Palette裡找到。