Печально известные белые квадраты для LCD-дисплея
Я хотел бы знать, что я сделал не так. Я настроил свою схему с помощью "Hello world tutorial. У меня есть печально известный узор белого квадрата
- D7 к контакту 2
- D6 к контакту 3
- D5 к контакту 4
- D4 к контакту 5
- E к контакту 11
Мой код:
// включите код библиотеки:
#include <LiquidCrystal.h>
//LiquidCrystal lcd(RS, E, D4, D5, D6, D7);
LiquidCrystal lcd(2, 3, 4, 5, 11, 12); // введите здесь свои номера контактов
void setup() {
// настройте количество столбцов и строк на ЖК-дисплее:
lcd.begin(16, 2);
// Выведите сообщение на ЖК-дисплей.
lcd.print("hello, world!");
}
void loop() {
// установите курсор в столбец 0, строка 1
// (примечание: строка 1 является второй строкой, так как подсчет начинается с 0):
lcd.setCursor(0, 0);
// выведите количество секунд с момента сброса:
lcd.print("hello, world!");
}
2 ответа
Ваше изображение не дает четкого представления о соединениях между Arduino Uno и ЖК-модулем. Однако, если мы хотим следовать вашему описанию ваших связей ...
D7 to pin 2 D6 to pin 3 D5 to pin 4 D4 to pin 5 E to pin 11
... и мы предполагаем, что D7, D6, D5 и D4 являются контактами на ЖК-дисплее, затем мы видим, что код неверен ...
LiquidCrystal lcd(2, 3, 4, 5, 11, 12); // put your pin numbers here
... учитывая приведенное здесь описание LiquidCrystal синтаксиса перегруженного (означает, что существует более одного шаблона для переданных параметров конструктору с одинаковым именем) класса ...
Syntax
LiquidCrystal(rs, enable, d4, d5, d6, d7)
LiquidCrystal(rs, rw, enable, d4, d5, d6, d7)
LiquidCrystal(rs, enable, d0, d1, d2, d3, d4, d5, d6, d7)
LiquidCrystal(rs, rw, enable, d0, d1, d2, d3, d4, d5, d6, d7)
... вместо этого попробуйте:
LiquidCrystal lcd(?, 11, 5, 4, 3, 2); // put your pin numbers here
... поскольку вы не сказали нам, как вы подключили линию RS, я оставил это значение выше в качестве "?". Поэтому это не будет компилироваться, пока вы не заполните недостающую информацию.
Следует добавить, основываясь на том, что видно на рисунке, что было установлено соединение с выводами RS и RW ЖК-дисплея, и не было установлено никакого соединения с выводом E (enable) ЖК-дисплея. Но во всех перегруженных версиях конструктора всегда есть контакт E (enable). Пожалуйста, внимательно посмотрите на свой дизайн, чтобы определить, является ли это проблемой.
В моем случае проблема была тривиальной: ЖК-контакты плохо контактировали с макетом.
Надежно вставив их и загрузив повторно, вы сможете увидеть надпись "привет, мир!".
- Печать string and integer LCD
- Как отобразить символ º на ЖК-дисплее?
- Отправка значения с одного Arduino на другой
- Черные квадраты дисплея Arduino 16x2
- NodeMCU с RFID RC522 и LCD-модулем интерфейса I2C вместе
- ЖК-дисплей I2C отображает странные символы
- Экран LCD 16*02 I2C показывает только первый напечатанный символ
- Потенциометр 10 кОм против резистора 10 кОм на ЖК-дисплее
Описание карты pin'а, похоже, не соответствует легенде вашего вызова в онлайн-конструкторе ЖК-дисплея. Трудно сказать, что вы подключили без прямого угла на ЖК-модуле. В частности, чтобы увидеть проводку RS и RW. Полезны полные фотографии проводки. Это включало бы подключение к Arduino, потому что, честно говоря, мы все все испортили., @timemage
похоже, что на картинке у вас не подключена земля, @jsotola
@jsotola, мне показалось, что она это сделала, только это была красная ниточка., @timemage
Что подключено к V0 на дисплее? Где ваш 10-килограммовый тримпот, чтобы вы могли регулировать контрастность (изменяя напряжение между 0 и Vcc), пока "печально известные" белые квадраты не исчезнут., @Dougie
@Dougie контраст установлен правильно. В первой строке должны отображаться квадраты, а вторая строка пуста при включении питания., @Gerben