USBDevice: clearHalt() 方法
注意:此功能在 Web Workers 中可用。
clearHalt() 方法屬於 USBDevice 介面,它返回一個 Promise,當停止條件清除時該 Promise 會解決。停止條件是指向裝置或從裝置傳輸資料時狀態為 'stall',這要求網頁(在 USB 術語中是主機系統)清除該條件。有關詳情,請參閱。
語法
js
clearHalt(direction, endpointNumber)
引數
direction-
指示應清除裝置的輸入或輸出。有效值為
'in'或'out'。 endpointNumber-
指示要清除的端點編號。如果提供了無效的端點,Promise 將會拒絕。
返回值
一個 Promise。
示例
以下示例展示瞭如何測試並清除資料傳輸結果中的 'stall' 條件。
注意:可以傳遞什麼資料給 USB 裝置以及如何傳遞是每個裝置特有且唯一的。
js
while (true) {
let result = await data.transferIn(1, 6);
if (result.data && result.data.byteLength === 6) {
console.log(`Channel 1: ${result.data.getUint16(0)}`);
console.log(`Channel 2: ${result.data.getUint16(2)}`);
console.log(`Channel 5: ${result.data.getUint16(4)}`);
}
if (result.status === "stall") {
console.warn("Endpoint stalled. Clearing.");
await device.clearHalt("in", 1);
}
}
規範
| 規範 |
|---|
| WebUSB API # dom-usbdevice-clearhalt |
瀏覽器相容性
載入中…