Arduino and JavaScript
Arduino and JavaScript
我的arduino根据这个程序给出输出,其中一部分是
Serial.print("A");
Serial.print(sensorValue);
Serial.print("B");
Serial.println();
Serial.print("C");
Serial.print(sensorValue1);
Serial.print("D");
Serial.println();
其输出在arduino的串行监视器中显示为C491D192bC49D192bC484D196亿澳元C482DA193BC483D1999年C485D196亿澳元C486DA198B
现在我的Node.js运行以下代码
var cleanData = ""; // this stores the clean data
var cleanData1 = "";
var readData = ""; // this stores the buffer
sp.on("data", function (data) { // call back when data is received
readData += data.toString(); // append data to buffer
// console.log(readData);
// if the letters "A" and "B" are found on the buffer then isolate what"s in the middle
// as clean data. Then clear the buffer.
if (readData.indexOf("D") >= 0 && readData.indexOf("C") >= 0) {
cleanData1 = readData.substring(readData.indexOf("C") + 1, readData.indexOf("D"));
readData = "";
console.log(cleanData1);
io.sockets.emit("message", cleanData1);
}
else if(readData.indexOf("B") >= 0 && readData.indexOf("A") >= 0)
{
cleanData = readData.substring(readData.indexOf("A") + 1, readData.indexOf("B"));
readData = "";
console.log(cleanData);
io.sockets.emit("message", cleanData);
}
});
控制台读取的相同数据没有给出所需的结果DA181BCDA181BC181462181462181462181462181462462462462462462462462462462462462462462
从控制台的读数中可以明显看出,读数不符合要求。读数应该是一个从4开始,另一个从1开始。事实上,有像这样的控制台读数
DA181BCDA181BCDA181BCDA181BCDA181BC
根本不应该来如果我屏蔽了一个If语句块,那么任何一个块显示的读数都是完美的。
我哪里错了?
在data
事件中,您连接了新数据,但随后检查了整个字符串(readData
)。因此,每次检查(设置cleanData)时,都是从头开始,一遍又一遍地达到第一个结果。
尝试更改
readData += data.toString();
至
readData = data.toString();
通过这种方式,indexOf和子字符串匹配将查看新的传入数据。
相关文章:
- JavaScript and LiveView (TIBCO Live Datamart)
- Javascript and onMouseOver
- javascript and css firefox issue
- geolocation with javascript and ruby on rails
- Javascript and the DOM issues
- Javascript and Java Communication
- Javascript and Knockout
- Javascript and Css: Height does not change
- javascript and Internet Explorer 8
- Javascript and html, UI construction
- Javascript and Lightbox
- javascript and css styling
- JavaScript and URL parameters
- Javascript and singleton pattern
- Javascript and Ajax Calls
- OAuth, javascript and many URI's
- Javascript and AJAX post method
- javascript and web services WSDL
- javascript and webview in android
- Javascript & and | symbols