Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 代码调试错误Arduino_C++_C_Arduino - Fatal编程技术网

C++ 代码调试错误Arduino

C++ 代码调试错误Arduino,c++,c,arduino,C++,C,Arduino,我面临以下程序的两个错误: 在串行监视器上,它没有在main()中打印 当输入lcd\u call()函数时。如果按下任何键,则转到下一个案例。根据程序,它应该保持在同一个窗口中,但它将返回到案例1 void setup() { Serial.begin(9600); } void循环() { Serial.println(“主要”); lcd_call(); } 无效lcd_调用() { int菜单选项=0; int按钮; 做 { 开关(菜单选项) { 案例0: Serial.println

我面临以下程序的两个错误:

  • 在串行监视器上,它没有在
    main()
    中打印
  • 当输入
    lcd\u call()
    函数时。如果按下任何键,则转到下一个案例。根据程序,它应该保持在同一个窗口中,但它将返回到案例1
  • void setup()
    {
    Serial.begin(9600);
    }
    void循环()
    {
    Serial.println(“主要”);
    lcd_call();
    }
    无效lcd_调用()
    {
    int菜单选项=0;
    int按钮;
    做
    {
    开关(菜单选项)
    {
    案例0:
    Serial.println(“设置+日期:”);
    显示日期时间();
    timedBeep(短蜂鸣声,1);
    打破
    案例1:
    Serial.println(“显示:”);
    lcdClear();
    lcd.打印(“显示菜单”);
    timedBeep(短蜂鸣声,1);
    打破
    案例2:
    Serial.println(“设置菜单:”);
    lcdClear();
    lcd.打印(“设置菜单”);
    timedBeep(短蜂鸣声,1);
    打破
    }
    按钮=读取LCD按钮();
    如果(按钮==btnRIGHT)
    {
    菜单选项=菜单选项+1;
    如果(菜单选项>2)
    {
    菜单选项=0;
    }
    }
    其他的
    {
    菜单选择;
    }   
    }
    
    while(menuOption)按钮是否取消闪烁?不,没有取消闪烁。我使用5毫秒的延迟来避免它。它是否打印“设置+日期”或“显示”,或者您在串行监视器上看不到任何内容?您所说的menuOption是什么意思;在else语句中?需要更多信息。仅您的代码是不够的。
    void setup()
    {
      Serial.begin(9600);
    }
    
    void loop()
    {
      Serial.println("In main");
      lcd_call();
    }
    
    void lcd_call()
    {
      int menuOption=0;
      int button;
      do
      {
        switch(menuOption)
        {
        case 0:
          Serial.println("set+date:");
          Display_Date_Time(); 
          timedBeep(shortBeep,1);
          break;
        case 1:
          Serial.println("DISPLAY:");
          lcdClear();
          lcd.print("DISPLAY MENU"); 
          timedBeep(shortBeep,1);   
          break;
        case 2:
          Serial.println("SET MENU:");
          lcdClear();
          lcd.print("SET MENU"); 
          timedBeep(shortBeep,1);   
          break;
        }
        button=read_LCD_buttons();
        if(button==btnRIGHT)
        {
          menuOption=menuOption+1;
          if(menuOption>2)
          {
            menuOption=0;
          }
        }
        else
        {
          menuOption; 
        }   
      }
      while(menuOption<menuOptions);
    }