使用 Node.js 致力于 PC 和基于 Arduino 的硬件之间的通信。最后一个设备是用 G 代码实现的,所以如果我发送 \xe2\x80\x98G0\xe2\x80\x99 我将收到两行;一个用于确认已收到指令,第二个用于确认数据。
\n\n我想使用 async/await 但出了点问题......代码如下:
\n\n'use strict'\nconst SerialPort = require('serialport')\nconst Readline = SerialPort.parsers.Readline\n\nconst cardPort = new SerialPort('COM6', {\n baudRate: 115200,\n parity: 'none',\n stopBits: 1,\n dataBits: 8,\n flowControl: false,\n usePromises: true,\n}, function(err) {\n if (err){\n console.log('error: ', err.message)\n port.close()\n } else {\n\n }\n})\n\nconst cardParser = new Readline({ delimiter: '\\r\\n' })\n\ncardPort.pipe(cardParser)\n\nfunction checkCard(port, parser){\n port.write('G0\\n', function () {\n console.log('message written')\n parser.on('data', (data) => { \n console.log(data)\n return (data)\n })\n })\n}\n\nasync function run …Run Code Online (Sandbox Code Playgroud)