Проблема с созданием бегущей строки на LCD
- Войдите на сайт для отправки комментариев
Втр, 21/01/2020 - 17:50
Всем привет, суть такова пытаюсь создать бегущую строку на LCD, задача при нажатии на кнопку 1 бегает один текст при повторном нажатии на неё ничего не выводится на дисплей, кнопка 2 выводит другой текст и работает аналогично первой.
#define PIN_BUTTON 7
bool button_state = false;
int buttonPin = 7;
#include <LiquidCrystal.h>;
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
pinMode(7,INPUT_PULLUP);
lcd.begin(16, 2);
// Выводим сообщение на дисплей.
pinMode(PIN_BUTTON, INPUT_PULLUP);
}
bool flag = false;
void loop() {
if( digitalRead(PIN_BUTTON) == LOW && !button_state ){button_state = true;}
if( digitalRead(PIN_BUTTON) == HIGH && button_state ){
flag=!flag;
lcd.clear();
button_state = false;
}
if (flag==true)
{
for (int i = 0; i < 20; i++)
{
if( digitalRead(PIN_BUTTON) == LOW && !button_state ){button_state = true;}
if( digitalRead(PIN_BUTTON) == HIGH && button_state )
{
flag=!flag;
lcd.clear();
button_state = false;
break;
}
lcd.setCursor(i, 1);
lcd.clear();
lcd.print("HELLO World!");
delay(200);
}
}
}

Хотелось бы узнать в чем проблема
Сейчас при нажатии на кнопку просто статический текст
После лсд клир курсор всегда в нулевой позиции, куда бы вы его не гнали до.
строки 44 и 45 поменяйте местами... для начала
Ухтыйоптэль, пратеус. Дай-ка файлик проекта сюдой.