如何使用串行通信将数据作为字符串从NodeJs运行时发送到Arduino板?

时间:2018-01-17 11:28:56

标签: node.js string arduino serial-port led

我正在一个项目中,需要在Raspberry Pi中的Arduino板和NodeJs运行时之间进行串行通信。

我想发送一个字符串,如" 255,100,100,255"从我的Pi到Arduino板内的NodeJs程序来控制4灯的亮度。字符串内的4个元素是每个光的亮度。

如何在NodeJs和Arduino程序中编码,以便Arduino板接收所有字符串?

1 个答案:

答案 0 :(得分:1)

您可以使用模块serialport

首先使用

安装它
  

npm i serialport

然后在您的NodeJS代码中,您可以创建发件人:

let serial = require("serialport").SerialPort;
let sp = new serial("/dev/ttyACM0", { baudrate: 9600 });
sp.on("open", function(){
    sp.write("255,100,100,255", function(err, res) {
        if (err) return console.log(err);
    });
});

在你的arduino上,你可以制作一个接收器:

int incomingByte = 0;
void setup(){ Serial.begin(9600); }
void loop(){
    if (Serial.available() > 0) {
        incomingByte = Serial.read();
        Serial.println(incomingByte);
    }
}