|
||||||||
Алфавитно-цифровые дисплеи 1602, 1604, 2004
Библиотека Wire. I2C инстерфейс.
При создании электронных систем автоматики и робототехники на базе проектов Arduino нередко возникает необходимость подключения дисплея для вывода рабочей информации. Для этих целей может быть использован экран LCD 1602. Он приобрел популярность и у профессионалов, и у любителей продуктов «Ардуино». LCD экран LCD 1602, 1604, 2004 По своей сути, это одинаковые устройства. Отличаются количеством строк и символов в строке:
Поэтому более детально будем рассматривать устройство 1602 как наиболее типовое и наиболее часто используемое. Основные характеристики lcd 1602 Этот ЖК-дисплей размером 16х2 символа относится к недорогим, простым и при этом востребованным мониторам для вывода строк с различной подсветкой. Работает он на контроллере HD44780 от Hitachi, снабжен 16 выходами и использует интерфейс 8-bit Parallel Interface. Ниже приведены основные характеристики дисплея LCD 1602:
Дисплей может использоваться с разными наборами библиотек, которые доступны бесплатно. При отсутствии необходимых символов в памяти контроллера допускается их самостоятельное создание. Контакты и схема подключения Каждый выход экрана имеет свое функциональное назначение. Все имеющиеся у модуля LCD 1602 контакты по порядку приведены в списке ниже, в скобках указано название соответствующего порта Arduino, к которому может осуществляться подключение:
Контакты с 7-го до 14-го являются линиями данных (4 младших и 4 старших бита). Для различных модификаций LCD 1602 расположение выходов может быть немного другим. LCD 1602. Режим самотестирования. Самотестирование дисплея необходимо для того, чтобы проверить его работоспособность еще до подключения к системе. Чтобы запустить этот режим, нужно подать питание на подсветку, а напряжение — на контроллер. Сделать это можно с использованием потенциометра или мультиметра на 10 или 50 кОм, подсоединив следующие контакты:
После того как схема соединена, вся верхняя строка дисплея должна засветиться сплошными темными прямоугольниками. Если это произошло — LCD 1602 в порядке, если нет — либо не настроена контрастность, либо устройство не работает. Откорректировать контрастность экрана можно с помощью потенциометра, покрутив его ручку. Подключение дисплея к плате ардуино Существует несколько способов подключения, но перед тем как попробовать какой-либо из них, нужно подготовить коннекторы. Если они распаяны, нужно запаять все 16 контактов со стороны коротких ног. Длинные ноги будут использоваться для соединения с периферийными аппаратами и картами. Стандартный способ При подключении LCD 1602 по стандартной схеме в 4-битном режиме его необходимо установить на макетной плате, а затем в следующей последовательности соединить все контакты:
Если все выполнено верно, LCD 1602 выведет предусмотренные проектом символы в рабочем режиме. Проводить 8-битное подключение нецелесообразно, т.к. при этом лишь увеличится энергопотребление. Подключение arduino. Нестандартный способ. Стандартный способ может вызывать большие трудности, если необходимые пины на плате Arduino используются для других целей. Вместо того, чтобы полностью перестраивать проект, можно инициализировать новые, неиспользуемые порты интерфейса. Для этого в строке «LiquidCrystal lcd (12, 11, 6, 5, 4, 3, 2)» в скетче в скобках нужно заменить имеющиеся числа на номера новых, свободных выходов, соблюдая соответствие назначению позиции. Если количество контактов на карте «Ардуино» недостаточно для подключения экрана, можно использовать первые 5 аналоговых портов вместо цифровых под номерами 14 — 19 или провести подключение через I2C. Подключение по протоколу I2C I2C (или IIC, от англ. Inter-Integrated Circuit) — это двухпроводная 8-битная шина, которая служит для последовательного соединения схем в электронных приборах. Так как при стандартном подключении LCD 1602 к Arduino занятыми оказываются, как минимум, 6 портов, использование этого дисплея без переходника неудобно, особенно с картами «Уно» или «Нано». Протокол I2C позволяет сократить количество используемых пинов до 2 -х и поэтому имеет большое значение для сложных проектов. При подключении используются выходы SDA (линия данных) и SCL (линия синхронизации) и 4 провода, 2 из которых служат для питания. К этим линиям может быть подсоединено более 2 ведомых устройств, что позволяет включить в систему не только экран, но и часы, термометр или прочие периферийные объекты. Строки скетча при этом остаются неизменными. При подключении по протоколу IIC рекомендовано использовать специальные библиотеки. Возможные проблемы с подключением. Чаще всего за проблемы с подключением принимают неотрегулированную контрастность. Если она слишком низкая, дисплей будет казаться пустым, а если слишком высокая, то вместо символов выведутся темные прямоугольники. Если настройка контрастности не помогает, а соответствие схемы и наличие питания (в т.ч. питания подсветки) уже проверены, проблема может быть связана с качеством спайки контактов. В этом случае необходимо проверить работу дисплея в режиме самотестирования и при подключении по стандартной 4-битной схеме без переходника. Иногда при использовании шины i2c ошибка может возникать из-за ее неверного адреса. Адрес можно изменить в скетче. Для чипа PCF8574 подбор проводится от 0x20 до 0x27, а для PCF8574 — от 0x38 до 0x3F. Правильный вариант зависит от производителя. Версии Arduino выше 1,8 имеют сложности при работе с библиотекой LiquidCrystal_I2C. В случае возникновения ошибок ее можно заменить на LCD_1602_RUS или LiquidCrystal_PCF8574. Библиотека liquidcrystal.h По умолчанию при соединении дисплея LCD 1602 с проектами «Ардуино» используется стандартная библиотека LiquidCrystal.h. Она создана специально для ЖК-экранов на базе чипа HD44780 и хорошо справляется с обработкой данных как при 4-битном, так и при 8-битном подключении. Библиотека управляет работой курсора (перемещение, видимость, мигание), выводом информации, очисткой дисплея, порядком вывода (слева направо или справа налево) и смещением символов. В случае использования переходника I2C рекомендуется применять библиотеки LiquidCrystal_I2C.h и Wire.h совместно. Они могут входить в пакет софта Arduino IDE по умолчанию, а также скачаны дополнительно. Подключить новые библиотеки можно прямо в интерфейсе «Ардуино», последовательно выбрав в меню следующие пункты:
После подключения можно запустить пример программного кода из комплекта библиотеки и таким образом проверить правильность работы модуля. Стандартный способ проверки — вывод надписи «Hello, Word». LiquidCrystal. Как создать собственные символы. Если в наборе LCD 1602 отсутствует нужный для работы проекта символ, его можно создать самостоятельно. Для добавления нового символа нужно сформировать битовую маску размером 5х8 ячеек (в соответствии с количеством точек, которое приходится на 1 символ). Затем в маске необходимо разместить единицы там, где предполагается наличие подсветки, и нули — там, где должно остаться серое закрашивание. Для экономии времени можно использовать генератор символов, созданный любителями и размещенный в свободный доступ в интернете. Таким путем в память может быть добавлено до 7 дополнительных самодельных знаков. Похожие запросы по теме:
|
||||||||
© 2000-2024 - 31/10/22 17:34 | ||||||||
|