【问题标题】:Arduino Code Error for blinking LED with user Input使用用户输入闪烁 LED 的 Arduino 代码错误
【发布时间】:2023-04-08 14:17:01
【问题描述】:

我遇到了一些编译时错误,没有得到解决方案。

这是我编写的代码:

void setup() {
 Serial.begin(9600);
 pinMode(13,OUTPUT);
}

void loop() {
 Serial.println("How many times you wanna blink the LED?");
 String myString;

 while(myString.equals("")) {
 myString = Serial.readString();
 }

 long int mystring;
 mystring = myString.toInt();
 Serial.print("Okay! the LED will blink ");
 Serial.println(myString);
 Serial.print(" times.");

 Serial.println("In how much time you want the LED to blink once? Please tell the time in milliseconds.");
 String mystr;

 while(mystr.equals("")) {
 mystr = Serial.readString();
 }
 long int myint;
 myint = mystr.toInt();
 Serial.print("Okay we will blink the LED in ");
 Serial.println(myint);
 Serial.print(" milliseconds once.");

 Serial.println("See the Show!!");
 int ms;
 ms = myint / 2;

 while(int i = 0; i < mystring; i++) {
 digitalWrite(13,HIGH);
 delay(ms);
 digitalWrite(13,LOW);
 delay(ms);
}
}

这是我一次又一次遇到的错误。

Arduino:1.8.10(Windows 8.1),板:“Arduino/Genuino Uno”

D:\ANSH 新的\Arduino\Blink_LED_user_Input_Times\Blink_LED_user_Input_Times.ino: 在函数'void loop()'中:

Blink_LED_user_Input_Times:36:17: 错误:在 ';' 之前预期为 ')'令牌

while(int i = 0; i

             ^

Blink_LED_user_Input_Times:36:19: 错误: 'i' 未在此声明 范围

while(int i = 0; i

               ^

在 ';' 之前应退出状态 1 ')'令牌

此报告将包含“显示详细输出”的更多信息 在文件 -> 首选项中启用“编译期间”选项。

【问题讨论】:

    标签: c++ compiler-errors arduino arduino-uno


    【解决方案1】:

    while loop 中只能有一个条件

    你的语法看起来像你想做一个for循环:

    for (int i = 0; i < mystring; i++) { … }
    

    【讨论】:

    • 谢谢汤姆!你解决了问题并帮助我了解了我的愚蠢错误。
    • 没问题。我知道有时可能会在没有新眼光的情况下长时间卡在“简单”的事情上!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多