Подключение LCD HD44780 к Arduino Uno |
Контрастность LCD зависит от величины напряжения, которое подается на вход управления. Чем больше напряжение, тем меньше контрастность и наоборот. Напряжение должно быть около 0.5-1 В, но еще зависит от окружающей температуры. В нашем скетче значение ШИМ установлено на 50 (примерно 20% заполнение), что обеспечивает уровень выходного напряжения около 1 В. Соответственно вы можете увеличивать или уменьшать данное значение для получения необходимого уровня контрастности.
Вот собственно таблица подключения:
LCD Pin |
Arduino Pin |
1 Vss Общий (0 V) |
Общий (0 V) |
2 Vdd Питание (4.5 – 5.5 V) |
+5V |
3 Vo Управ. контрастностью |
9 |
4 RS H/L register select signal |
12 |
5 R/W H/L read/write signal |
Общий (0 V) |
6 E H/L enable signal |
11 |
11 DB4 H/L data bus for 4-bit mode |
5 |
12 DB5 H/L data bus for 4--bit mode |
4 |
13 DB6 H/L data bus for 4-bit mode |
3 |
14 DB7 H/L data bus for 4-bit mode |
2 |
Не забываем на 15 контакт дисплея подать +5В для подсветки и на 16 GDN. Порты микроконтроллера вы можете запросто изменить в программе. На картинке ниже, макет присоединения:
Ниже представлен скетч для Arduino. Значение контрастности на ШИМ-выходе устанавливается при инициализации программы, однако вы можете доработать проект, сделав внешнее управление контрастностью. К примеру сделав 2 кнопки + и — или регулировать контрастность переменным резистором, соответственно внеся необходимые изменения в программу.
Код:
|
/* LiquidCrystal Library
Демонстрация работы с 16x2 LCD дисплеем. Библиотека LiquidCrystal работает со всеми LCD совместимыми с Hitachi HD44780.
Данный скетч отображает на LCD надпись «ARDUINO.NET.UA» Скетч основан на оригинальном скетче Arduino
http://www.arduino.cc/en/Tutorial/LiquidCrystal
с модификациями, позволяющими вручную устанавливать контрастность дисплея
Схема подключения: * LCD RS пин к цифр. выходу 12 * LCD Enable пин к цифр. выходу 11 * LCD R/W к Общему * LCD VO пин (пин 3) к ШИМ-выходу 9 * LCD D4 пин к цифр. выходу 5 * LCD D5 пин к цифр. выходу 4 * LCD D6 пин к цифр. выходу 3 * LCD D7 пин к цифр. выходу 2
*/
// подключаем библиотеку: #include <LiquidCrystal.h>
// инициализация библиотеки с перечнем задействованных выводов LiquidCrystal lcd (12, 11, 5, 4, 3, 2);
void setup () { // устанавливаем ШИМ выход: pinMode (9, OUTPUT); analogWrite (9, 50); // устанавливаем кол-во столбцов и строк: lcd.begin (16, 2); // печать сообщения на LCD. lcd.print ( «ARDUINO.NET.UA»); }
void loop () { // устанавливаем курсор в 0-ом столбце, 1 строка (начинается с 0): lcd.setCursor (0, 1); // печать числа секунд после сброса: lcd.print (millis ()/1000); }
|
ArduinoIDE есть библиотека LiquidCrystal, но она не поддерживает русские буквы, тем, кто хочет использовать модифицированную библиотеку LiquidCrystalRus необходимо скачать её по ссылке ниже и скопировать в папку libraries.
Запускаем наш микроконтроллер и наслаждаемся работой! Скачать скетч LCD HD44780 + Arduino Uno вы можете по этой ссылке.
C этой схемой также часто просматривают: |
Подключение телефонной линии к звуковой карте Сплитер (подключение 4-х мониторов) ПОДКЛЮЧЕНИЕ ТРЕХФАЗНЫХ ПОТРЕБИТЕЛЕЙ К ОДНОФАЗНОЙ СЕТИ Подключение монитора "Электроника 32 ВТЦ-202" к компьютеру семейства IBM. LCD-термометр на микроконтроллере Калибровка аналогового датчика для Arduino USB порт как источник питания Часы DS1302 для Arduino Uno с ЖК экраном BTHQ 22005VSS Arduino UNO урок 14 - цифровой компас HMC5883L
| |
Графический семиполосный эквалайзер-радуга на Arduino Nano и MSGEQ7 Часы реального времени для Arduino Старинные часы-метеостанция Блок питания для Arduino из ATX ATX блок питания управляемый Arduino Arduino своими руками с USB портом Подключение монетоприемника к Arduino Подключение PS/2 клавиатуры к Arduino Пробуждение ПК по сети на Arduino Запись/чтение на SD-карту с Arduino |