0

NodeJs에서 Arduino로 데이터를 전송할 수 없습니다 .. Serial.available()은 항상 거짓입니다 .. 내 실패는 무엇인지 잘 모릅니다. 아무도 도와 줄 수 있습니까?Arduino NodeJs 직렬 통신 문제

이 내 자바 스크립트/NodeJS 코드

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

var serialPort = new SerialPort("COM3", { 
    baudrate: 9600, 
     dataBits: 8, 
     parity: 'none', 
     stopBits: 1, 
     flowControl: false 
}); 

serialPort.on("open", function() { 
    console.log('open'); 
serialPort.on('data', function(data) { 
    console.log(data); 
    }); 
data="omg"; 
    for(var i=0; i<data.length; i++){ 
     serialPort.write(new Buffer(data[i], 'ascii'), function(err, results) { 
      if(err!=null) 
      { 
      console.log('Error: ' + err); 
      } 
      else 
      console.log('Results ' + results); 
     }); 
    } 
}); 

입니다 그리고 이것은

void setup() { 
    Serial.begin(9600); 
} 
String inData = ""; 

void loop(){ 

    while (Serial.available() > 0) { 
     char received = Serial.read(); 
     inData.concat(received); 
     Serial.println(received); 
     // Process message when new line character is received 
     if (received == '\n') { 
      // Message is ready in inDate 
     } 
    } 
} 

NodeJs 출력이

노드 서버 내 아두 이노 코드입니다. JS 중단은 : require('serialport') 대신 require('serialport').SerialPort

개방

결과의 사용하십시오 :

결과를 undefinded :

결과를 undefinded : ^^ nodeJS을 듣고

답변

0

시도를 undefinded.

은 교체 :

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

편집

var SerialPort = require("serialport");

기준 :

귀하의 data 당신의 범위에 초기화되지 않습니다.

var SerialPort = require("serialport"); 

var serialPort = new SerialPort("COM3", { 
    baudrate: 9600, 
    dataBits: 8, 
    parity: 'none', 
    stopBits: 1, 
    flowControl: false 
}); 

var _data = ''; 

serialPort.on("open", function() { 
    console.log('open'); 
    serialPort.on('data', function(data) { 
    console.log(data); 
    _data += data; 
    }); 
    for(var i=0; i<_data.length; i++){ 
    serialPort.write(new Buffer(_data[i], 'ascii'), function(err, results) { 
     if(err!=null) 
     { 
     console.log('Error: ' + err); 
     } 
     else 
     console.log('Results ' + results); 
    }); 
} 
}); 

serialPort.on('error', function(err) { console.log(err); }); 
+0

내가 형제 : –

+0

않아요 다시 작업을 시도하기 위하여려고하고있다 : 이 시도/ –

+0

어떤 노드는 이제 말? –