Клавиатура Arduino: следующая клавиша не отвечает

keypad

Мне было интересно, что к тому времени, когда я нажимаю следующую клавишу, она не возвращается к функции main_screen (). Как я могу исправить свой код?

void loop()
  { 
    int exit = 0;
    char input = customKeypad.getKey();
    
    main_screen();
     if (input=='A')
        { 
          delay(100);
          lcd.clear();
         
          do{
   
           lcd.setCursor(1,0);
           lcd.print("Enter minutes: ");
   
   
             if (input=='B')
               {
                break;
                lcd.clear();
               }
           }
           while(1);
       }

}

, 👍1

Обсуждение

можете ли вы также поделиться полным кодом?, @ArduinoFan


1 ответ


2

Вам нужно снова прочитать входные данные после того, как вы получите input == 'A'. В тот момент, когда вы входите в do ... while loop, вход всегда "A", поэтому input = = " B " никогда не бывает истинным, и цикл никогда не завершается.

,