我正在尝试使用以太网屏蔽为我的Arduino Uno构建草图。我正在使用Arduino 模拟器来调试我的代码。这是我在函数中遇到问题的地方: loop()
void loop() {
while (!ConnectServer());
while (client.connected()) {
int i = 0;
char c = 'o';
while (client.available()) {
c = client.read();
if(c == ';')break;
commandBuff[i++] = c;
}
commandBuff[i] = '\0'; //Skip this line
ParseCommand(commandBuff); //And this line
}
if (!client.connected()) {
client.stop();
}
}
问题是,当它;
从输入中获得 a 时。它不仅跳出了内部循环,而且还跳过了内部 while 循环之外的两行代码。并回到外部while
循环的条件语句......
我不认为这与它有关ConnectServer()
,但我仍然在粘贴它的代码:
bool ConnectServer() {
char response;
if (client.connect(server, 80)) {
client.println("EHLO");
response = client.read();
if (response == 'e') {
return true;
}
}
else {
return false;
}
}
我该如何解决问题?