Отправка байтов в последовательный порт с использованием Node.js
Я планирую сделать POC с последовательным портом связи с использованием Node.js. Я гуглил и нашел модуль "serialport" для Node.js. У меня есть код C#, который записывает данные в последовательный порт в byte
тип данных. Я хотел бы попробовать то же самое, используя Node.js. Код C# имеет следующие значения в byte[]
массив:
5, 170, 85, 250, 0, 86, 0, 3, 158, 0
Может ли кто-нибудь сказать мне, как добиться этого с помощью модуля serialport Node.js?
1 ответ
Наконец я смог понять это. Просто создайте буферную переменную (как упомянуто в документации) и добавьте к ней эти байты. Запишите это в последовательный порт. Ниже приведен фрагмент, который работал для меня:
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);
}
});
}
});