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



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

我想从 Pi 中的 NodeJs 程序向 Arduino 板发送一个类似"255,100,100,255"的字符串,以控制 4 盏灯的亮度。 字符串内的 4 个元素是每盏灯的亮度。

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

您可以使用模块串行端口。

首先使用

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);
    }
}

最新更新