Прокрутка жидкокристаллического дисплея, подключенного к Arduino Uno

Я хочу, чтобы некоторые символы прокручивались влево, не затрагивая первые позиции в каждой строке моего жидкокристаллического экрана 16х2. До сих пор у меня есть этот код внутри цикла:

lcd .clear();
lcd.setCursor(17, 0);
for (int i = 15; i > 0; i--) {
  lcd.print("x");
  lcd.scrollDisplayLeft();
  if (digitalRead(switchPin) == HIGH) {
    lcd.setCursor(0, 0);
    lcd.write(5);
  } else {
    lcd.setCursor(0, 1);
    lcd.write(5);
  };
  lcd.setCursor(17, 0);
  delay(500);
}
lcd.noAutoscroll();

Я думаю, что это должно сработать, но символ x просто перемещается влево на одну позицию, в то время как символ в первой позиции, либо в первой, либо во второй строке, вообще не появляется.

, 👍-1

Обсуждение

Существует пример, который делает именно это, поставляемый с arduino IDE и библиотекой LCD. Проверить это, @Supragya Mishra


1 ответ


0

Я бы сделал следующее (осторожно - не проверено):

lcd.clear();
lcd.setCursor(15, 0);
lcd.print("x");
for (int i = 0; i < 15; i++) {
    lcd.setCursor(0, digitalRead(switchPin) == LOW);
    lcd.print("5");
    delay(500);
    lcd.scrollDisplayLeft();
}
,