У меня работает этот простой код.
const SerialPort = require("serialport");
const Readline = require("@serialport/parser-readline");
const port = new SerialPort("/dev/ttyUSB0", { baudRate: 4800 });
const parser = port.pipe(new Readline({ delimiter: "\r" }));
parser.on("data", data => {
console.log("==>", data);
});
Во время выполнения кода все данные, отправляемые на USB-порт raspiberry, принимаются и отображаются на консоли как обычно.
Однако когда я по какой-то причине получаю данные до запуска функции или до открытия порта, когда выполняется код, я получаю миллионы данных.
Если я запускаю аналогичный код в python, то же самое что-то происходит.
Это связано с буфером последовательного порта?
Кто-нибудь знает, как мне помочь? Я пытался использовать все методы библиотеки, такие как .flush()
, .pause()
, .end()
, et c. и ничто не решает эту проблему