Мне нужно отправить команду на инвертор, который подключен к моему компьютеру через COM-порт. Команда должна быть отправлена в байтах, и мне также нужно получить ответ, но я не могу понять, как это сделать, я нашел старый код, использующий буферный объект в библиотеке SerialPort, но когда я пытаюсь используйте этот метод, он говорит, что он устарел, но, глядя на более новую документацию, я не могу понять, как отправить массив байтов.
Я тоже пробовал делать это таким образом, но получаю ошибка, потому что я отправляю числа, и ему нужны строковые значения.
const SerialPort = require("serialport");
var port = new SerialPort(
"COM4",
{
baudRate: 2400,
databits: 8,
parity: "none",
},
false
);
command = [0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13];
for (var i = 0; i < command.length; i++) {
port.write(command[i], function (err) {
if (err) {
return console.log("Error on write: ", err.message);
}
console.log(`Sent ${command[i]}`);
});
}
port.on("data", (line) => console.log(line));