Проверить исправность дисплея.
- Войдите на сайт для отправки комментариев
Втр, 28/05/2013 - 02:44
Есть китайский символьный дисплей 4х20, судя по отзывам полностью ардуино-совместимый.
http://dx.com/p/arduino-compatible-2004-character-3-1-lcd-display-module-green-147008
При включении горит подсветка и все.
Как проверить исплавность?
2004 не юзал. На 1602, подключаю подсветку через 200-500 Ом и контрастность через переменник. Подаю напряжение и регулирую контрастность пока не отоброзится первая лини в прямоугольниках. Это режим само тестирование. Как увидел их четко. Подключаю остальные контакты вывожу символы, опять подрегулирую по вкусу. У 2004 думаю тоже есть режим самотестирования.
P.S. Все подключения при отключеном питании.:)
Дак наверняка те же грабли, что и с 1602: нужен подбор версий библиотеки LiquidCrystal. Хотя в самодиагностику (строчка прямоугольников) - должно включаться при подключении только питания и регулятора контрастности.
Да всё так же, как и для 16х2, только в setup пишем lcd.begin(20, 4);
Библиотека LiquidCrystal.
Подключил к UNO Winstar WH2004L по стандартной схеме как в примере HelloWorld.ino
Питание 5В от Arduino, контраст от неё же через переменник 20К, питание подсветки от отдельного бп 4,5В напрямую без резистора (с резистором 75Ом почему то вообще не светился, хотя пишут надо 100-150).
Проинициализировались при включении 1 и 3 строчки, на запуск скетча вообще никакой реакции.
Дисплей был рабочий, с неисправного девайса, но буквы показывал. Контроллер в дисплее, судя по описанию HD44780 or equivalent. Куда еще можно посмотреть?
Дак наверняка те же грабли, что и с 1602: нужен подбор версий библиотеки LiquidCrystal. Хотя в самодиагностику (строчка прямоугольников) - должно включаться при подключении только питания и регулятора контрастности.
что значит подбор версий библиотеки?
upd: в общем всё заработало, похоже забыл землю на 5 контакт R/W подать
Народ, а можно ли подключать экран 3.3 В в напрямую к Li-Ion банке, т. о. до 4.2 В максимум? Просто при разряде ниже 40% AMS1117-3.3 не хочет работать, а питать только экран - на управляющих проводах напряжение будет больше чем напряжение питания.
Можно ли для решения этой проблемы поменять AMS1117 на стабилитрон?
Мучаю 2004 с i2c модулем - без модуля тоже тестировал - мой запустился на стандартной библиотеке по 4 битам. Основные грабли как я понял это инициализация 4 бит режима у дисплея, там функции несколько раз вызываются, но это не помогает - как решение вызывать инициализацию lcd.begin() дважды. Мои эксперименты показали что при одинаронм вызове - при ресете дисплей стартует через раз, а при двойном вызове сразу - после любого ресета контроллера хоть по питанию хоть кнопкой.
Проблема скорее всего вызвана внутренним временем на обработку процедур(зависит похоже от конкретного экземпляра). Вобщем невижу ничего страшного чтобы инитить дисплей 2 раза - да хоть 3 - главное чтобы потом он работал.
Данное решение конечно "костыль" - кто знает решение подскажите...
NeiroN
Временные параметры инициализации в файле LiquidCrystal.cpp, можно поизменять и посмотреть что получиться.
Ку all, не появлялись у кого экраны с невнятным режимом теста? Подключаю VCC, VDD, V0 - то есть то нет, то половина экрана в прямоугольниках (НЕ верхняя, а ЛЕВАЯ половина, то есть пол экрана, обе строки), то мусор, то в прямоугольниках не светятся целиком все клетки (например были прямоугольники перечеркнутые линией). Если у кого-то было и это зависит от производителя экрана, колитесь, мне будет полезно знать об этом.
Проблемы исчезают, если подключить полностью (т. е. 6 проводов и гнать реальный текст).