我打算通过内置在 Google Chrome 中的 Web Serial API 使用 Modbus 来寻址设备。我想用十六进制代码寻址我的设备。下面的截图证明我的设备可以使用这样的工具成功寻址。 因此,该接口使用以下十六进制值寻址:01 03 00 01 00 02 95 CB
我现在的问题是。本教程仅显示如何将接口寻址为 Uint8Array 或 Text。如何使用 HEX 代码寻址接口?
谢谢您的帮助
我打算通过内置在 Google Chrome 中的 Web Serial API 使用 Modbus 来寻址设备。我想用十六进制代码寻址我的设备。下面的截图证明我的设备可以使用这样的工具成功寻址。 因此,该接口使用以下十六进制值寻址:01 03 00 01 00 02 95 CB
我现在的问题是。本教程仅显示如何将接口寻址为 Uint8Array 或 Text。如何使用 HEX 代码寻址接口?
谢谢您的帮助
如https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array中所示,Uint8Array
类型化数组表示一个 8 位无符号整数数组。
在 JavaScript 中,0x
用于指示所有后续字符应解释为十六进制(以 16 为基数的数字系统)。
因此,您所需要的只是:
const writer = port.writable.getWriter();
const data = new Uint8Array([0x01, 0x03, 0x00, 0x01, 0x00, 0x02, 0x95, 0xCB]);
await writer.write(data);