Узел последовательного порта не может читать данные - PullRequest
0 голосов
/ 11 февраля 2019

Я пытаюсь прочитать данные из Arduino Mega на мой Raspberry Pi 3 через последовательный порт.Код узла:

const five = require("johnny-five")
const Raspi = require("raspi-io")
const SerialPort = require("serialport")
const Readline = require('@serialport/parser-readline')


const arduinoSerialPort = new SerialPort("/dev/ttyACM0", {
  baudRate: 9600
})
const parser = arduinoSerialPort.pipe(new Readline({ delimiter: '\r\n' }))

const board = new five.Board({
  io: new Raspi(),
  repl: false,
})


board.on('ready', function() {    
  parser.on('data', console.log)
})

код arduino:

int pushButton = 7;

void setup() {
  Serial.begin(9600);
  pinMode(pushButton, INPUT);
}

void loop() {
  int buttonState = digitalRead(pushButton);

  if(buttonState == HIGH){
    Serial.println('ononon');
    digitalWrite(LED_BUILTIN, LOW);
  }else{
    Serial.println('offfff');
    digitalWrite(LED_BUILTIN, HIGH);
  }

  delay(100);
}

У Arduino есть кнопка, и я отправляю разные данные, когда кнопка нажата или нет.

На стороне узла я не могу читать данные.Все, что я получаю, это некоторые цифры.Я пытался использовать toString(), тоже не работало.

Я застрял здесь надолго, некоторая помощь будет очень признательна.

1 Ответ

0 голосов
/ 11 февраля 2019

Традиционная глупая ошибка: p

Serial.println('offfff');

C / C ++ использует знак двойной кавычки " для строки.

Serial.println("offfff");

Слишком много JavaScripting: v

Хотя в серийном мониторе Arduino я мог видеть линию раньше, поэтому я не думал заглядывать в код Arduino.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...