WebUSB 传输到客户显示器没有任何反应
Posted
技术标签:
【中文标题】WebUSB 传输到客户显示器没有任何反应【英文标题】:WebUSB transferout to customer display nothing happens 【发布时间】:2020-10-28 16:22:34 【问题描述】:我正在开发一个 Web 应用程序,在该应用程序中我必须在客户显示器上显示价格,出于测试目的,我购买了一台 TYSSO VFD-860(希望制定一个适用于每个客户显示器的通用解决方案),并且我正在尝试使用 WebUSB API 与它进行通信,我之前为热敏打印机制作了它并且它可以工作,所以我认为为显示器编写使用相同的代码是个好主意,但我什么都没有,没有错误屏幕上什么也没有显示。
我的代码:
function selectEndpoint(direction, device)
const endpoint = device.configuration
.interfaces[0]
.alternate
.endpoints.find(ep => ep.direction == direction);
if (endpoint == null)
throw new Error(`Endpoint $direction not found in device interface.`);
return endpoint;
document.addEventListener("click", async () =>
const device = await navigator.usb.requestDevice( filters: [] )
await device.open()
console.log(device)
const interfaceNumber = device.configuration.interfaces[0];
await device.claimInterface(interfaceNumber);
const outpoint = selectEndpoint("out", device);
const inpoint = selectEndpoint("in", device);
const str = "Hello";
const bytes = str.split("").map(char => char.charCodeAt(0));
const data = new Uint8Array(bytes);
device.transferOut(outpoint.endpointNumber, data);
await device.close()
)
其他一些可能有帮助的信息
弹出窗口中的设备名称:CP2102 USB to UART Bridge 控制器
【问题讨论】:
【参考方案1】:您确定如果您刚开始向设备写入字节,设备会显示任何内容吗?
在这种特殊情况下它不应该影响任何东西,但您应该等待 transferOut() 调用的结果,以便在传输仍处于挂起状态时设备不会关闭。
【讨论】:
以上是关于WebUSB 传输到客户显示器没有任何反应的主要内容,如果未能解决你的问题,请参考以下文章
电脑启动后显示器没有反应,鼠标也无反应,键盘灯也不亮,怎么办?