使用Node.js将字节发送到串行端口

使用Node.js将字节发送到串行端口,node.js,serial-port,node-serialport,Node.js,Serial Port,Node Serialport,我计划使用Node.js进行串行端口通信的POC。我在谷歌上搜索并找到了Node.js的“serialport”模块。我有一个C#代码,它将数据写入bytedatatype中的串行端口。我想使用Node.js尝试同样的方法。C代码在字节[]数组中具有以下值: 5, 170, 85, 250, 0, 86, 0, 3, 158, 0 有谁能告诉我如何使用Node.js的serialport模块来实现这一点吗?最后我终于找到了答案。只需创建一个缓冲区变量(如文档中所述)并将这些字节添加到其中。将其

我计划使用Node.js进行串行端口通信的POC。我在谷歌上搜索并找到了Node.js的“serialport”模块。我有一个C#代码,它将数据写入
byte
datatype中的串行端口。我想使用Node.js尝试同样的方法。C代码在
字节[]
数组中具有以下值:

5, 170, 85, 250, 0, 86, 0, 3, 158, 0

有谁能告诉我如何使用Node.js的serialport模块来实现这一点吗?

最后我终于找到了答案。只需创建一个缓冲区变量(如文档中所述)并将这些字节添加到其中。将其写入串行端口。下面是对我有用的一块:

var buffer = new Buffer(10);
buffer[0] = 0x05;
buffer[1] = 0xAA;
buffer[2] = 0x55;
buffer[3] = 0xFA;
buffer[4] = 0x00;
buffer[5] = 0x56;
buffer[6] = 0x00;
buffer[7] = 0x03;
buffer[8] = 0x9E;
buffer[9] = 0x00;

var com = new SerialPort(COM1, {
    baudRate: 38400,
    databits: 8,
    parity: 'none'
}, false);

com.open(function (error) {
    if (error) {
        console.log('Error while opening the port ' + error);
    } else {
        console.log('CST port open');
        com.write(buffer, function (err, result) {
            if (err) {
                console.log('Error while sending message : ' + err);
            }
            if (result) {
                console.log('Response received after sending message : ' + result);
            }    
        });
    }              
});