我需要你的帮助有没有一种方法可以控制一个串行端口,而不使用弹出窗口?(without port = await navigator.serial.requestPort(); )谢谢你,对不起,我的英语,意大利语在这里发言。
iqjalb3h1#
我相信下面的JS代码应该适合你:
// Get all serial ports the user has previously granted the website access to. const ports = await navigator.serial.getPorts();
来源:https://web.dev/serial/#open-port
kyxcudwk2#
在第一个鼠标或键盘事件上运行此代码,它将在第一次运行时弹出端口权限,并在下次运行时自动获取端口。
// specify device details let usbVendorId = 0x0403, // Arduino usbProductId = 0x6001; // Nano // get serial ports navigator.serial .getPorts() .then( ports => { // no ports available, prompt user permission if(!ports.length) return navigator.serial .requestPort({ filters: [{usbVendorId, usbProductId}] }); // port is available else return Promise .resolve(ports[0]); } ) .then( port => { port .open({ baudRate: 9600 }) .then( () => { const reader = port.readable.getReader(); // ... } ); } );
2条答案
按热度按时间iqjalb3h1#
我相信下面的JS代码应该适合你:
来源:https://web.dev/serial/#open-port
kyxcudwk2#
在第一个鼠标或键盘事件上运行此代码,它将在第一次运行时弹出端口权限,并在下次运行时自动获取端口。