我正在从事一个需要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);
}
}