Z- LCD I2C модуль v3

Опубликовано 19.11.2014 20:25:00


Z- LCD I2C модуль представляет из себя символьный дисплей с переходником на микросхеме PCF8574T, который позволяет подключить дисплей к плате Arduino всего по двум проводам не считая питания.

На модуле v3 появился джампер под пайку для отключения резисторной подтяжки шины I2C, а также джампер под пайку для отключения светодиода

Zelectro LCD I2C модуль на микросхеме PCF8574T с возможность выбора адресации

 

 

Основные технические характеристики:

• Дисплей: Символьный 16х02 либо 20х04 (в зависимости от комплектации)

• Подсветка: Синяя c белыми символами

• Яркость подсветки: С возможностью программного регулирования

• Контраст: Настраивается потенциометром

• Напряжение питания: 5В

• Интерфейс: I2C

• I2C адрес: На выбор 8 вариантов

• Размеры: 82мм x 35мм x 18мм


 

Основные элементы Z- LCD I2C модуля:

1 - Микросхема PCF8574T

2 - Подстроечный резистор для регулирования контраста

3 - DIP переключатель для выбора адресации

4 - Джампер выбора варианта работы подсветки

5 - Гребенка для подключения к Arduino

6 - Индикаторный светодиод наличия питания + 5V (возможно отключить)

7 - Джампер под пайку для отключения резисторной подтяжки шины I2C

Основные элементы Z-LCD I2C модуля


 

Адресация:

Передвигая ползунки на DIP переключателе можно изменять адресацию устройства, всего 8 вариантов. Изменение адресации дает нам возможность подключить до восьми устройств на линию I2C микросхемы PCF8574T. Для её изменения необходимо притянуть выводы A0, A1, A2 к положительному либо отрицательному потенциалу. На плате положения промаркированы.

Адресация LCD I2C модуля

В программном коде, инициализация адреса производится в данной строке.

LiquidCrystal_I2C lcd(0x27,16,2);

 



 

Подключение к Arduino:

 

Для работы с данным модулем необходимо установить библиотеку LiquidCrystal_I2C1602V1

Скачиваем, распаковываем и закидываем в папку libraries в папке Arduino. В случае, если на момент добавления библиотеки, Arduino IDE была открытой, перезагружаем среду.

 
Функционал библиотеки

 

Модуль оборудован четырех-пиновым разъемом стандарта 2.54мм

 SCL: последовательная линия тактирования (Serial CLock)

 SDA: последовательная линия данных (Serial DAta)

 VCC: "+" питания

 GND: "-" питания

 

Выводы отвечающие за интерфейс I2C на платах Arduino на базе различных контроллеров разнятся

 LCD I2C модуль   На базе ATmega 328   Leonardo   MEGA, ADK, DUE 
 SCL  A5  D3  D21
 SDA  A4  D2  D20
 VCC  +5V  +5V  +5V
 GND  GND  GND  GND

 

• Пример вывода информации и работы модуля с подсветкой в режиме ВКЛ/ВЫКЛ

Для работы подсветки в режиме ВКЛ/ВЫКЛ соединяем вывод BL с выводом P3 микросхемы PCF8574T

В программном коде она будет задаваться функцией

lcd.backlight();        // Включение подсветки

lcd.noBacklight();    // Выключение подсветки

Подключение Z-LCD I2C модуля к Arduino

 
Пример программного кода

 

• Пример работы модуля с регулированием яркости подсветки

Для регулирования яркости придется задействовать один ШИМ вывод контроллера. Соединяем вывод BL с любым ШИМ выводом Arduino. В зависимости от скважности ШИМ сигнала можно получить любую яркость подсветки.

В программном коде она будет задаваться функцией

analogWrite(BL, число от 0 до 255);

Подключение Z-LCD I2C модуля к Arduino

 
Пример программного кода

 

• Работа с двумя и более модулями

Подключается дополнительный дисплей к тем же выводам Arduino что и первый. Выбираете понравившуюся адресацию, отличную от уже подключенного модуля, выставляете ползунки на DIP переключателе согласно таблице. На этом настройка дополнительного модуля завершена, можно переходить к программной части.

 

Программная часть                                                                                              

 
Пример программного кода

 

Железная часть

При подключении более двух - трех модулей работающих по интерфейсу I2C, необходимо отключать резисторную подтяжку.

B идеале оставить подтяжку шины I2C на одном устройстве. Объяснение почему.

Размыкание резисторной подтяжки шины I2C            


          

Итоговый пример

В качестве итогового примера поуправляем двумя модулями 16х02 и 20х04.

На первом подсветка работает в режиме регулирования яркости, а на втором в режиме ВКЛ/ВЫКЛ.

 
Пример программного кода



 

Создание собственных символов

С выводом текста разобрались, буквы английского алфавита зашиты в память контроллера внутри дисплея и с ними проблем нет. А вот что делать если нужного символа в памяти контроллера нет?

Не беда, требуемый символ можно сделать вручную (всего до 7ми символов). Ячейка, в рассматриваемых нами дисплеях, имеет разрешение 5х8 точек. Все, к чему сводится задача создания символа, это написать битовую маску и расставить в ней единички в местах где должны гореть точки и нолики где нет.

В ниже приведенном примере нарисуем смайлик.

битовая маска для ячейки 5х8

 
Пример программного кода

 

Итоговый пример

P.S. Данный способ частично, ограничение в 7 символов, поможет решить проблему вывода кириллицы.

Выведем на дисплей солянку: надпись "Привет, Мир", смайлик и текст на английском. 

 
Пример программного кода


 

 

Бонус

В комментариях участник сообщества скинул ссылку на генератор символов

Аватар



 

Дополнительные примеры работы:

• Термометр (Z-DHT11 + Z-LCD I2C модуль) 


  

Документация:

• Принципиальная схема: z-lcd-i2c-module-v3-schematic.jpg

• Техническое описание микросхемы PCF8574: datasheet



Купить Купить в России Z- LCD I2C модуль v3


А как же комментарии?