VirtualBox從ST-Link/V2讀到的序列号是亂碼,在虛拟機設定中将ST-Link/V2添加到USB裝置篩選器中,并編輯該篩選器将其序列号清空,就可以解決這個問題。
原文:javascript:void(0) mingdu.zheng at gmail dot com
問題現象
試圖在VirtualBox中挂載STMicroelectronics STM32 STLink裝置時,會彈出如下對話框:
對話框顯示:
不能配置設定 USB裝置 STMicroelectronics STM32 STLink [0100] 到虛拟電腦
USB device ‘STMicroelectronics STM STLink’ with UUID {e14e050b-6e9c-4ce2-b506-f2e8795e4424} is busy with a previous request. Please try again later.
明細内容:
傳回 代碼:
E_INVALIDARG (0x80070057)
元件:
HostUSBDevice
界面:
IHostUSBDevice {173b4b44-d268-4334-a00d-b6521c9a740a}
被召者:
IConsole {8ab7c520-2442-4b66-8d74-4ff1e195d2b6}
這種錯誤出現在Host OS是Windows的情況。
解決辦法
打開虛拟機設定,選擇 USB裝置 分類,點選右邊帶加号的按鈕,在彈出菜單中選擇 STMicroelectronics STM32 STLink [0100] (僅在已經插入ST-Link的情況下才會有,如果沒有這一項,請先将ST-Link插入您的電腦),這将建立一個新的 USB裝置篩選器 ;選中剛建立的篩選器,點選右邊帶圓圈的按鈕,彈出 USB篩選器明細 ,可以看到 序列号(S) 輸入框内的字元串為亂碼,将該輸入框内的所有字元清空,點選 确定 儲存篩選器。重新啟動虛拟機後,ST-Link已正常挂載到了Guest OS中。