【发布时间】:2015-08-24 08:15:18
【问题描述】:
【问题讨论】:
【问题讨论】:
您通常使用行尾 (CR+LF) 来标识用户输入的结束。在您的情况下,尚不清楚行结束符将是什么。假设 '。' (句点)比您应该使用串行中的字符,直到您到达行终止符。
这是一个示例代码:
#define EOL_TERMINATOR '.'
int inByte = 0; // incoming serial byte
String cmdLine;
void setup()
{
// start serial port at 9600 bps:
Serial.begin(9600);
cmdLine = "";
}
void loop()
{
// if we get a valid byte, read analog ins:
if (Serial.available() > 0) {
// get incoming byte:
inByte = Serial.read();
if (inByte != EOL_TERMINATOR)
cmdLine.concat(inByte);
else {
userCommand(cmdLine);
cmdLine = ""; //reset cmdLine for next command
}
}
}
void userCommand(String cmd) {
Serial.println("User command '"+cmd+"'");
}
【讨论】:
#define EOL_TERMINATOR 64