您好我正在尝试使用连接的nodejs和通过firmata连接的arduino来读取来自arduino的代码,但是我无法在读取中获得正确的值。
我正在使用这个包https://www.npmjs.com/package/firmata
此外,我尝试将数据从主服务器发送到从服务器,它可以正常工作。
奴隶arduino代码:
#include <Wire.h>
void setup() {
Wire.begin(8);
Wire.onRequest(requestEvent);
}
void loop() {
delay(500);
}
void requestEvent() {
uint8_t buffer[4];
buffer[0] = 12;
buffer[1] = 23;
buffer[2] = 39;
buffer[3] = 78;
Wire.write(buffer, 4);
}
Firmata代码:
let firmata = require("firmata");
board = new firmata('COM3', {samplingInterval: 1000});
board.on("ready", function() {
this.i2cConfig();
this.i2cRead(8,4, function(data) {
console.log("received data");
console.log(data);
});
});
我得到的回应是:
received data
[189,255,255,255]