2

嗨,我正在尝试使用 nodejs 和 arduino 通过firmata 连接从 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);
}

固件代码:

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]
4

0 回答 0