Кнопки и индикатор параллельно

NXP PCF8574

Журнал РАДИОЛОЦМАН, июнь 2018

Бабанин В., Красноярский край

Наиболее широкое распространение в микроконтроллерных устройствах (МКУ) получили одно-, двух- и четырехстрочные знакосинтезирующие жидкокристаллические индикаторы (ЖКИ). У них хорошее отношение цена-качество, особенно у двухстрочных. Недостатком этих недорогих ЖКИ из Поднебесной можно считать параллельный интерфейс. Именно из-за него приходится применять МК с большим количеством выводов. Часто еще бывают нужны несколько кнопок… Вы не замечали, что многие приборчики со скромными возможностями используют, скажем так, мега контроллеры? И есть ли другой подход?

Наиболее удобно применение ЖКИ с параллельным интерфейсом через преобразователь интерфейсов LCD-I2C [4]. В сети достаточно публикаций, однако далеко не все возможности такого симбиоза реализованы. Преобразователь построен на 8-разрядном расширителе ввода/вывода шины I2C (PCF8574Т). Для управления индикатором достаточно режима записи данных в порт микросхемы, но она может функционировать и в режиме чтения. Выходной каскад порта можно представить как резистор на положительную шину питания и транзисторный ключ на общий провод, с коллектора (стока) которого считывается состояние порта.

С такой архитектурой используется принцип «монтажного ИЛИ» для двух логических сигналов низкого уровня, один из которых является соответствующим разрядом выходного регистра порта, и дополнительным, который формируется внешней схемой. Чтобы считать состояние внешнего устройства, замыкающего общую точку на «землю», требуется в обязательном порядке установить на выходе высокий уровень напряжения.

Условия чтения порта расширителя следующие. При активном (лог. 1) уровне на линии E (разрешение записи) интерфейса происходит запись информации в регистры индикатора, поэтому при чтении этот разряд должен в обязательном порядке обнуляться. Разряд, который управляет подсветкой индикатора (LED), не используется, так как не выведен на гребенку соединителя модуля LCD-I2C.

Для чтения дополнительного устройства используются стандартные функции любой библиотеки I2C. Сначала в выходной регистр расширителя записывается байт, в котором разряд E сброшен для исключения обращения к ЖКИ. Потом следует команда чтения порта. Таким образом можно получить состояния шести кнопок, подключенных к входам/выходам, которые одновременно являются линиями 4-разрядного параллельного интерфейса ЖКИ (Рисунок 1).

Кнопки и индикатор параллельно
Рисунок 1.

Если обращение к индикатору будет происходить при нажатой кнопке (кнопках), неизбежно искажение показаний индикатора или даже полная его блокировка. Проблема разрешается включением резистора последовательно с каждой кнопкой. Номинал зависит от значения тока, генерируемого выходным каскадом порта расширителя. При замкнутых контактах уровень лог. 0 должен оставаться в допустимых пределах. К этому еще вернемся.

На рынке имеется единственный ЖКИ с встроенным расширителем ввода/вывода INF8574А – MT-16S2H-I. С ним не требуется отдельный модуль управления I2C. Для совместимости со старшими моделями семейства параллельный интерфейс сохранен на плате индикатора, и это стало наиболее удобным и наименее затратным решением расширения возможностей МКУ. Становится возможным применить микроконтроллеры с небольшим количеством вводов/выводов в устройствах с развитым интерфейсом пользователя.

ВНИМАНИЕ.
Электрические параметры драйверов INF8574A и PCF8574 немного отличаются. При использовании модуля LCD-I2C номиналы резисторов рекомендуется уменьшить приблизительно на 30%.

Кнопки и индикатор параллельно
Рисунок 2.

Параллельно индикатору можно подключать различные элементы, энкодер и контактные (псевдоконтактные) датчики. Просто управлять и дополнительными исполнительными устройствами, например звуковым каналом (Рисунок 2). Представьте 8-выводной микроконтроллер с двухпроводным интерфейсом индикатора MT-16S2H-I, к которому подключено все управление прибором (Рисунок 3). Для задачи остаются 3-4 свободных порта с возможностью аналого-цифрового преобразования.

Кнопки и индикатор параллельно
Рисунок 3.

Примечание

Демонстрационные программы предназначены для работы с ЖКИ MT-16S2H-I компании ООО «МЭЛТ» (zm36_demo.asm) и китайским 1602A (zm28_demo.asm), работающим через модуль LCD-I2C. В обоих случаях подтягивающие резисторы шины I2C не требуются. Код нажатия (5 кнопок) выводится в последнюю позицию индикатора, нажатие на кнопку «RS» сопровождается звуковым сигналом, и включается/выключается подсветка индикатора.

Ссылки

  1. Простые двухпроводные интерфейсы в микроконтроллерных устройствах
  2. Универсальная двухпроводная схема подключения ЖКИ
  3. Новые возможности последовательных интерфейсов ЖКИ
  4. LCD Displays with I2C/TWI Interface

Материалы по теме

  1. Datasheet МЭЛТ MT-16S2H-I
  2. Datasheet NXP PCF8574
  3. Datasheet Интеграл INF8574

Загрузки

  1. Демонстрационные программы для микроконтроллера ATtiny13A
PCF8574 Купить ЦенаКупить PCF8574 на РадиоЛоцман.Цены — от 104 до 191
29 предложений от 16 поставщиков
Интерфейсные элементы - Расширительные модули ввода-вывода Remote 8-Bit I/O Expander for I2C-Bus
РИВ Электроникс
Россия
PCF8574N
Texas Instruments
104 ₽
AliExpress
Весь мир
10 шт./лот новый оригинальный PCF8574AT PCF8574A SOP16 SOP PCF8574 SMD PCF8574T IC чип
13 ₽
TMElectronics
Россия
PCF8574T/3.518
NXP
от 67 ₽
Десси
Россия
Микросхема PCF8574A,P,N
68 ₽
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя