Как я могу прочитать эти конкретные данные буфера, которые я получаю от arduino при использовании nodejs?

В настоящее время я использую датчик пульса на Arduino, и пытаюсь получить данные от датчика и пытаюсь отобразить их в браузере. Вот как выглядит мой код nodejs.

var SerialPort = require("serialport").SerialPort
var serialPort = new SerialPort("/dev/cu.usbserial-DA011OXR", {
  baudrate: 57600
});

serialPort.on('open', showPortOpen);
serialPort.on('data', saveLatestData);
serialPort.on('close', showPortClose);
serialPort.on('error', showError);

function showPortOpen() {
   console.log('port open. Data rate: ' + serialPort.options.baudRate);
}
 
function showPortClose() {
   console.log('port closed.');
}
 
function showError(error) {
   console.log('Serial port error: ' + error);
}

function saveLatestData(data) {
   console.log(data);
   latestData = data;
}

И такие данные я получаю на терминале.

<Buffer 53 35 31 34 0d 0a>
<Buffer 53 35 31 33 0d 0a>
<Buffer 53 35 31 31 0d 0a>
<Buffer 53 35 31 30 0d 0a>
<Buffer 53 35 31 31 0d 0a>
<Buffer 53 35 31 31 0d 0a>
<Buffer 53 35 31 31 0d 0a>
<Buffer 53 35 31 32 0d 0a>
<Buffer 53 35 31 32 0d 0a>
<Buffer 53 35 31 33 0d 0a>
<Buffer 53 35 31 34 0d 0a>
<Buffer 53 35 31 34 0d 0a>
<Buffer 53 35 31 34 0d 0a>
<Buffer 53 35 31 34 0d 0a>
<Buffer 53 35 31 34 0d 0a>
<Buffer 53 35 31 33 0d 0a>
<Buffer 53 35 31 32 0d 0a>
<Buffer 53 35 31 31 0d 0a>

Я пытался посмотреть в интернете, как мне следует интерпретировать или анализировать эти данные, но я довольно невежественен. Любая помощь будет отличной!

1 ответ

Установите правильную скорость. в моем случае это было 9600.
Если вы делаете что-то вроде Serial.println(dataFromPin) вы могли быdata.toString('ascii')

Как вы могли угадать кодировку: data[0].toString() и сравните со значениями из Arduino IDE Serial Monitor.

Другие вопросы по тегам