Нужна помощь по коду
- Войдите на сайт для отправки комментариев
Сб, 16/03/2019 - 19:24
Помогите разобраться где ошибка.
При выполнении данного куска кода контроллер зависает, а должен изменять временную зону
while (buttonA != HIGH)
{
if (buttonB == HIGH)
{
while (digitalRead(buttonPinB) != LOW)
delay(10);
buttonB = LOW;
TZ++;
print_TZ = true;
}
if (TZ == 13)
TZ = -11;
if (print_TZ == true) {
char sz[10];
sprintf(sz, "%d", abs(TZ));
myOLED.clrScr();
myOLED.setFont(SmallFont);
myOLED.print(F("Select TimeZone :"), 15, 0);
myOLED.print(F("Menu to set"), 30, 7);
myOLED.setFont(BigNumbers);
myOLED.print(sz, 60, 5);
print_TZ = false;
}
delay(50);
}
опишите предполагаемую логику работы данного куска.
опишите предполагаемую логику работы данного куска.
:)))
при нажатии кнопки
buttonB происходит изменение часового пояса и отображение его на дисплее,до тех пок пока не будет нажата кнопкаbuttonА.но код зависает , изменяется часовой пояс с 3 на 4 выводится на дисплей ибольше на нажатия любых кнопок не реагируетУважаемый, а на каком моменте Вы предполагаете выйти из while в строке 1?
Немного подскажу - надо как-то изменить buttonA
но код зависает
Привыкайте к правильной терминологии, это помогает. Ваше жаргонное "зависает" ничего не говорит. А вот если бы Вы сказали правильно "работает в бесконечном цикле" - это дало бы Вам подсказку куда копать. Подумайте.
спасибо ваши пинок помог