SerialPort:open() 方法

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

实验性: 这是一项实验性技术
在生产中使用此技术之前,请仔细检查浏览器兼容性表格

注意:此功能在 专用 Web Workers 中可用。

SerialPort 接口的 open() 方法返回一个 Promise,该 Promise 在端口打开时解析。默认情况下,端口以 8 个数据位、1 个停止位和无奇偶校验进行打开。baudRate 参数是必需的。

语法

js
open(options)

参数

options

包含以下任一值的对象

baudRate

一个正的、非零值,指示建立串行通信的波特率。

bufferSize 可选

一个无符号长整数,指示要建立的读写缓冲区的尺寸。如果未传入,则默认为 255。

dataBits 可选

一个值为 7 或 8 的整数,指示每个帧的数据位数。如果未传入,则默认为 8。

flowControl 可选

流控制类型,为 "none""hardware"。默认值为 "none"

parity 可选

奇偶校验模式,为 "none""even""odd"。默认值为 "none"

stopBits 可选

一个值为 1 或 2 的整数,指示帧末尾的停止位数。如果未传入,则默认为 1。

返回值

Promise

异常

InvalidStateError DOMException

如果端口已打开,则返回此值。

NetworkError DOMException

如果尝试打开端口失败,则返回此值。

示例

在串行端口上进行通信之前,必须先打开它。打开端口允许站点指定控制数据传输和接收方式的必要参数。开发者应查阅他们所连接设备的文档以获取合适的参数。

js
await port.open({ baudRate: 9600 /* pick your baud rate */ });

规范

规范
Web Serial API
# dom-serialport-open

浏览器兼容性