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()
函数时。如果按下任何键,则转到下一个案例。根据程序,它应该保持在同一个窗口中,但它将返回到案例1void 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);
}