Почему мой arduino теперь работает с моими ЖК-дисплеями 16x2?
Поэтому я попробовал использовать 3 разных жидкокристаллических экрана и каждый из них дал мне что то свое (https://imgur.com/a/EVzFoVv) а вот и мой код
#include "LiquidCrystal.h"
// initialize the library by providing the nuber of pins to it
// LiquidCrystal lcd(8,9,4,5,6,7);
LiquidCrystal lcd(52, 50, 48, 46, 44, 42);
bool isSetup = false;
int want = 600;
int live = 615;
void setup() {
lcd.setCursor(0,1);
lcd.print(" Booting Up");
}
void loop()
{
if(isSetup == false)
Set();
}
void setupIs(){
Clear();
isSetup = true;
lcd.setCursor(0,0);
lcd.print("Want: ");
lcd.setCursor(0,1);
lcd.print("Live: ");
}
void Set(){
lcd.begin(16,2);
// set cursor position to start of first line on the LCD
lcd.setCursor(0,0);
//text to print
lcd.print("WANT: 1500");
// set cusor position to start of next line
lcd.setCursor(0,1);
lcd.print("LIVE: 1800");
}
void Clear(){
lcd.setCursor(0, 0);
lcd.print(" ");
lcd.setCursor(0, 1);
lcd.print(" ");
}```
@Alex S., 👍1
Обсуждение1 ответ
▲ 0
Ну, во-первых, при просмотре вашего кода вы, по сути, делаете с помощью функции Clear() то, что вы снова записываете что-то в память своего ЖК-экрана.Если вы действительно хотите очистить дисплей, вы можете использовать lcd.clear().Попробуй это изменить. И убедитесь, что ваша проводка правильная.
,
@AfiJaabb
Вы использовали одни и те же ЖК-библиотеки? Они не все одинаковы., @Gil
Смотрите также:
- Кнопка двойного состояния Nextion
- mcufriend 2.4 tft мега 2560
- ЖК-дисплей 16x2, показывающий блоки под текстом
- Печать содержимого файла SD - карты на ЖК-дисплее
- Использование модуля JYETech 2.4 Inch LCD Display Screen Module с Arduino?
- lcd.clear не работает с Serial.begin(9600) на Arduino Mega 2560
- ST7920 и u8g2 используют только часть дисплея 128x64.
- Как сделать динамическое меню с подменю ( Arduino mega или Arduino Uno)
Значит, теперь с вашим текущим кодом это работает? Как мы должны находить проблемы из прошлого? Или это фальшивый код?, @chrisl
@chrisl То, что не работает, - это сам жидкокристаллический экран, потому что для одного из них, когда я нажимаю кнопку сброса, он на секунду превращается из испорченного в действительно работающий, а затем снова испорченный. Я пытаюсь это исправить. Я тоже пробовал разные контакты, @Alex S.
вставьте в свой код` while (1) {}'... это в основном остановит выполнение кода в этот момент ... переместите его ... попробуйте найти место, где на дисплее отображается разборчивый текст, @jsotola
может быть вы хотите исправить название, @Juraj
Ваш код вызывает lcd.begin снова и снова и снова в Set() from loop(). Конечно, это не хорошо. Вы хотите вызвать begin ОДИН РАЗ в функции setup, ПРЕЖДЕ чем выполнять какие-либо другие команды на жидкокристаллическом дисплее. Вы должны напечатать его в настройках еще до того, как позвоните в "Начало"., @Delta_G