javascript - 串行通信 - node.js - arduino 板没有应答

标签 javascript node.js arduino

我尝试使用node.js在计算机和arduino板之间进行通信。程序很简单,但行不通。

Arduino 程序(工作正常):

void setup(){Serial.begin(9600);}
void loop(){
    Serial.println(1);
    delay(1000);
}

和 Node.js 应用程序:

var serialport = require("serialport");
    SerialPort = serialport.SerialPort;

var mySerial = new SerialPort("/dev/ttyUSB0", {
        baudrate: 9600,
        parser: serialport.parsers.readline("/n")
    });
mySerial.on("open", function(){
    console.log("Port OPEN.");
});
mySerial.on("data", function(data){
    console.log(data);
});

当我打开 app.js(ubuntu 终端中的node app.js)时,我看到“端口已打开”。并且没有收到数据。港口很好。当我尝试在终端中执行 cat/dev/ttyUSB0 时,我始终显示“1”。我尝试将 1 作为字符串发送 Serial.println("1"); 但它也不起作用。 哪里有问题 ?感谢帮助

最佳答案

您可以尝试一下,看看是否有效:

var SerialPort = require("serialport").SerialPort
var serialPort = new SerialPort("/dev/ttyUSB0", {
  baudrate: 57600
}, false); // this is the openImmediately flag [default is true]

serialPort.open(function (error) {
  if ( error ) {
    console.log('failed to open: '+error);
  } else {
    console.log('open');
    serialPort.on('data', function(data) {
      console.log('data received: ' + data);
    });
    serialPort.write("ls\n", function(err, results) {
      console.log('err ' + err);
      console.log('results ' + results);
    });
  }
});

关于javascript - 串行通信 - node.js - arduino 板没有应答,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33335262/

相关文章:

java - 维护Arduino和Java程序之间的通信

javascript - 获取类型错误 : "path" is not defined: undefined while executing serial port program for windows using JavaScript

javascript - 当使用 nvd3 + Angular 库进行交互式折线图时,Google Chrome 中的哇卡顿

javascript - 多个色标之间的平滑颜色过渡

javascript - NPM 没有安装包。主机名/IP 地址与证书的替代名称不匹配 :

node.js - Nodejs 流与 Braintree?

javascript - Node.js/Socket.io 实时网页推送更新

javascript - 从 Controller 调用 javascript Ruby on Rails 3.2.9

javascript - 使用 Chrome 调试我的应用程序 - 有时 Chrome 需要很长时间才能刷新。客户端挂起 - 而不是服务器

使用 Arduino WiFi Shield 和 Xively (WPA2) 时出现 HTTP 错误