Электронные компоненты. Дистрибьюция и сервисы с 1993 г
№4 / 2017 / статья 7

Универсальные солдаты от МЭЛТ: ЖК-дисплеи с поддержкой I2C

Вячеслав Гавриков (г. Смоленск)

Компания МЭЛТ анонсировала выпуск модернизированных знакосинтезирующих ЖК-дисплеев, которые будут поддерживать не только традиционные 8/4-битные параллельные шины, но и интерфейс I²C. При его использовании для обмена данными потребуются всего две сигнальные линии – SDA и SCL, что позволяет управлять работой дисплея даже с помощью микроконтроллеров с малым числом выводов.

Причина широкого признания ЖК-дисплеев производства компании МЭЛТ заключается в том, что, несмотря на наличие на рынке дисплеев других производителей, российская продукция не уступает им по большинству характеристик, а по ряду параметров дисплеи МЭЛТ превосходят зарубежные аналоги. Например, они отличаются реальной работоспособностью при низких и высоких температурах. Существуют дисплеи с диапазоном рабочих температур -30…70°C и диапазоном хранения -40…80°C. При этом, в отличие от иностранных аналогов, это не какие-то специализированные версии, выполненные под заказ, а серийные образцы.

Еще одним преимуществом дисплеев МЭЛТ является широкий выбор моделей [1]. Сейчас к услугам разработчиков – около полутора сотен графических ЖК, более пяти сотен знакосинтезирующих и более тридцати сегментных. Модели отличаются форматами изображения, напряжением питания (3/5 В), цветом подсветки (янтарным, желто-зеленым, красным, голубым, белым), типом изображения (прямым или инвертированным), наличием или отсутствием термокомпенсации и так далее.

МЭЛТ продолжает пополнять свой модельный ряд. На этот раз компания анонсировала выпуск знакосинтезирующих ЖК-дисплеев с поддержкой интерфейса I²C. При этом предполагается, что новые модели по-прежнему смогут работать с традиционными 8/4-битными параллельными шинами и будут иметь повыводную совместимость с предшественниками.

Пока что в планах компании значится выпуск модернизированных версий наиболее популярных моделей MT-20S4A и MT-16S2H. Если спрос на новинки будет высоким, последует обновление и других знакосинтезирующих ЖК-дисплеев.

Стоит отметить, что использование I²C дает модернизированным дисплеям несколько важных преимуществ:

  • возможность простой интеграции со стеком Arduino. При этом от разработчиков не потребуется каких-либо усилий по сопряжению, так как для Arduino I²C является базовым интерфейсом;
  • возможность работы с микроконтроллерами с малым числом выводов. Если традиционный четырехбитный параллельный интерфейс требует от контроллера семи портов ввода-вывода, то при использовании I²C понадобится всего два;
  • расширение функционала для управления подсветкой дисплея (об этом подробнее рассказано в разделе, посвященном подключению микросхемы INF8574).

Обзор знакосинтезирующих ЖК-дисплеев МЭЛТ

Номенклатура знакосинтезирующих ЖК-дисплеев МЭЛТ насчитывает 19 серий, которые объединяют более 500 моделей (таблица 1). При таком многообразии легко выбрать дисплей с требуемыми характеристиками (рисунок 1):

  • с технологиями STN Positive/Negative, FSTN Positive/Negative;
  • с форматами строк 08х2, 10х1, 16х1, 16х2, 16х4, 20х1, 20х2, 20х4, 24х1, 24х2;
  • с янтарным, желто–зеленым, красным, голубым или белым цветом подсветки;
  • с напряжением питания 3 или 5 В;
  • с диапазоном рабочих температур до -30…70°C;
  • с различными ЖК-контроллерами: КБ1013ВГ6 или ST7070;
  • с параллельным или последовательным коммуникационным интерфейсом.
Рис. 1. Примеры знакосинтезирующих ЖК-индикаторов МЭЛТ

Рис. 1. Примеры знакосинтезирующих ЖК-индикаторов МЭЛТ

Таблица 1. Серии знакосинтезирующих ЖК-дисплеев МЭЛТ

Наименование Контроллер Разре-шение Габариты, мм Видимая область, мм Символ, мм Подсветка Тип стекла Uпит, В Траб, °C
MT-08S2A КБ1013ВГ6 08х2 58x32x12,9 38×16 3,55х5,56 Янтарная, синяя, желто-зеленая, белая FSTN Positive, FSTN Negative, STN Negative Blue, STN Positive 3, 5 -20…70, -30…70
MT-10S1 10х1 66x31x9,2 56×12 4,34×8,35 Желто-зеленая STN Positive 5 0…50, -20…70, -30…70
MT-16S1A 16х1 122x33x9,3 99×13 4,86×9,56 Янтарная, синяя, желто-зеленая, белая FSTN Positive, FSTN Negative, STN Negative Blue, STN Positive 3, 5 -20…70, -30…70
MT-16S1B 122x33x13,1 Янтарная, желто-зеленая, нет FSTN Positive, FSTN Negative, STN Positive 5
MT-16S2D 16х2 85x36x13 62×19 2,95×5,55 Янтарная, синяя, желто-зеленая, белая, нет FSTN Positive, FSTN Negative, STN Negative Blue, STN Positive 3, 5
MT-16S2H 84x44x13,0 Янтарная, синяя, желто-зеленая, белая, красная, нет FSTN Positive, FSTN Negative, STN Negative Blue, STN Positive 3, 5
MT-16S2J 85x30x13,5 Янтарная, синяя, желто-зеленая, белая, нет FSTN Positive, FSTN Negative, STN Negative Blue, STN Positive 3, 5
MT-16S2R 122x44x13 105,2×24 4,86×9,56 Янтарная, синяя, желто-зеленая FSTN Positive, FSTN Negative, STN Positive 3, 5
MT-16S2S ST7070 84x44x13,0 62×19 2,95×5,55 Янтарная, синяя, желая, желто-зеленая FSTN Positive, STN Positive 5
MT-16S4A КБ1013ВГ6 16х4 87x60x13,1 62×26 2,95×4,75 Янтарная, синяя, желто-зеленая, белая FSTN Positive, FSTN Negative, STN Positive, STN Negative Blue 3, 5
MT-20S1L-2FLA 20х1 180x40x9,3 149×23 6,00×14,54 FSTN Positive, FSTN Negative, STN Positive, STN Negative Blue 3, 5
MT-20S2A-2FLA 20х2 116x37x13 82×19 3,20×5,55 Янтарная, синяя, желто-зеленая, красная, нет FSTN Positive, STN Positive 3, 5
MT-20S2M 20х2 180x40x9,3 149×23 6,00×9,63 Янтарная, синяя, желто-зеленая, белая, красная, нет FSTN Positive, FSTN Negative, STN Negative Blue, STN Positive 3, 5
MT-20S4A 20х4 98x60x13 76×26 2,95×4,75 Янтарная, синяя, желто-зеленая, белая, нет FSTN Positive, FSTN Negative, STN Positive, STN Negative Blue 3, 5
MT-20S4M 146×62,5×13 122,5×43 4,84×9,22 Янтарная, синяя, желто-зеленая, белая, красная, нет FSTN Positive, FSTN Negative, STN Negative Blue, STN Positive 3, 5
MT-20S4S ST7070 98x60x13 76×26 2,95×4,75 Янтарная, синяя, белая, желто-зеленая FSTN Positive, STN Positive 5 -20…70
MT-24S1L КБ1013ВГ6 24х1 208x40x14,3 178×23 6,00×14,75 FSTN Positive, FSTN Negative, STN Negative Blue, STN Positive 3, 5 -20…70, -30…70
MT-24S2A 24х2 118x36x13,5 92,5×14,8 3,15×5,72 Янтарная, синяя, желто-зеленая, белая, нет FSTN Positive, FSTN Negative, STN Positive 3, 5
MT-24S2L-2FLA 208x40x14,3 178×23 6,00×9,63 Янтарная, синяя, белая, желто-зеленая FSTN Positive, FSTN Negative, STN Negative Blue, STN Positive 3, 5

Модели дисплеев, построенные на базе ЖК-контроллера ST7070, поддерживают как параллельные 8/4-битные шины, так и последовательный интерфейс SPI. Для обмена по SPI от управляющего контроллера требуется всего лишь четыре порта ввода-вывода. Условным недостатком семейств с контроллером ST7070 можно считать малое разнообразие моделей – их насчитывается «всего» тридцать.

Номенклатура ЖК-дисплеев на базе контроллера КБ1013ВГ6 гораздо шире – почти пять сотен моделей! КБ1013ВГ6 производства компании ОАО «Ангстрем» является отечественным аналогом микросхем HD44780 производства Hitachi и KS0066 от Samsung. Отличительными чертами КБ1013ВГ6 являются:

  • широкий диапазон питающих напряжений: 2,7…5,5 В;
  • диапазон питания ЖКИ: 3,0…13 В;
  • высокоскоростной интерфейс связи до 2 МГц (при Uпит = 5 В);
  • 80 байт ОЗУ отображаемых данных (80 символов);
  • 19840 бит ПЗУ знакогенератора с возможностью программирования двух пользовательских страниц символов;
  • 64 байта ОЗУ знакогенератора;
  • 4/8-битный параллельный интерфейс обмена данными.

Стоит отметить, что КБ1013ВГ6 может работать только с параллельными шинами. К сожалению, реализация таких интерфейсов требует от управляющего микроконтроллера большого числа портов ввода-вывода. Например, 8-битный интерфейс занимает 11 линий: 8 линий данных (DB0…DB7) и 3 служебных линии (RS, RD/WR, E). При использовании 4-битного интерфейса число портов уменьшается до семи: 4 линии данных (DB4…DB7) и 3 служебных линии (RS, RD/WR, E). Для популярных систем Arduino и для микроконтроллеров с малым числом выводов параллельные интерфейсы оказываются малопригодными.

Вместе с тем, в последнее время постоянно повышается спрос на бюджетные микроконтроллеры, такие как STM8 или ATtiny. Эта тенденция достаточно логична. Например, микроконтроллеры STM8S003F имеют до 8 кбайт памяти, встроенные генераторы (16 МГц и 128 кГц), стандартный набор интерфейсов (UART, I²C, SPI), 10-битный АЦП. При этом стоимость этих микросхем составляет менее $0,5 для корпусных исполнений TSSOP-20.

Корпус TSSOP-20 имеет 20 выводов. Если от этого числа отнять три вывода питания (VDD, VSS, VCAP), вывод сброса (NRST), вывод программирования (SWIM), пару выводов для внешнего резонатора (которые, впрочем, могут использоваться и как порты ввода-вывода), то у разработчика остается всего 13 свободных линий. Таким образом, ЖК-дисплей с параллельным интерфейсом «съест» почти все свободные выводы.

Идя навстречу потребителям, инженеры компании МЭЛТ нашли выход из сложившейся ситуации. Они предлагают добавить поддержку I²C-интерфейса для уже существующих моделей на базе КБ1013ВГ6. Такой подход не только позволит модернизированным ЖК-дисплеям работать с маловыводными бюджетными контроллерами, но и поможет безболезненно решить вопросы обратной совместимости и сохранения богатства номенклатуры.

Сейчас предполагается провести модернизацию наиболее популярных моделей MT-20S4A и MT-16S2H. Если опыт будет признан успешным, то далее последует обновление и других моделей знакосинтезирующих ЖК-дисплеев.

Дисплеи MT-20S4A и MT-16S2H – рабочие лошадки от МЭЛТ

Рис. 2. Внешний вид дисплея MT-16S2H-3FLA

Рис. 2. Внешний вид дисплея MT-16S2H-3FLA

Модели MT-20S4A и MT-16S2H пользуются высокой популярностью у разработчиков и простых любителей электроники.

MT-16S2H имеет две строки по 16 знаков в каждой (рисунок 2). Существует несколько различных исполнений данного дисплея: с напряжением питания 3 или 5 В, без подсветки и с подсветкой (янтарной, синей, желто-зеленой, белой, красной), с рабочим диапазоном температур -20…70°С или -30…70°С.

Габариты дисплея составляют 79x44x9,5 мм (рисунок 3). Для его подключения используется один ряд из шестнадцати металлизированных отверстий с шагом 2,54 мм. При этом нумерация контактов выполнена не по порядку: 16 и 15 выводы вынесены отдельно. Эту особенность следует иметь в виду.

Рис. 3. Габаритные размеры дисплеев MT-16S2H

Рис. 3. Габаритные размеры дисплеев MT-16S2H

Рис. 4. Внешний вид дисплея MT-20S4A-2VLA-3V

Рис. 4. Внешний вид дисплея MT-20S4A-2VLA-3V

MT-20S4A имеет четыре строки по 20 знаков в каждой (рисунок 4). Эти дисплеи выпускаются с напряжением питания 3 или 5 В, без подсветки и с подсветкой (янтарной, синей, желто-зеленой, белой), с рабочим диапазоном температур -20…70°С или -30…70°С.

Размеры MT-20S4A составляют 98x60x13 мм (рисунок 5). Для его подключения используется один ряд из шестнадцати металлизированных отверстий с шагом 2,54 мм. В отличие от MT-16S2H, у MT-20S4A нумерация выводов идет по порядку: слева направо.

Дисплеи MT-20S4A и MT-16S2H не являются совместимыми по выводам. Однако они используют одни и те же параллельные интерфейсы обмена данными, так как построены на базе одного и того же контроллера КБ1013ВГ6.

Рис. 5. Габаритные размеры дисплеев MT-20S4A

Рис. 5. Габаритные размеры дисплеев MT-20S4A

Режимы обмена данными с контроллером КБ1013ВГ6

ЖК-контроллер КБ1013ВГ6 работает только с параллельными интерфейсами разрядностью 8 или 4 бита.

8-битный интерфейс требует для обмена восемь линий данных (DB0…DB7) и три служебных линии (RS, RD/WR, E) (рисунок 6).

Рис. 6. 8-битный режим обмена с контроллером КБ1013ВГ6

Рис. 6. 8-битный режим обмена с контроллером КБ1013ВГ6

Адресный сигнал RS (вывод A0 дисплея) – определяет выбор между передачей данных и команд управления. Если на этой линии установлен логический 0, то возможна запись в регистр команд (IR) или чтение счетчика адреса и бита занятости BS. Если же RS = 1, то обмен происходит с регистром данных (DR).

Сигнал R/W необходим для задания направления передачи. В цикле записи на этой линии устанавливается 0, в цикле чтения – 1.

Фиксация данных при записи или чтении происходит по срезу сигнала E.

Для реализации такого обмена требуется 11 портов ввода-вывода. Для уменьшения числа линий возможно использование 4-битного интерфейса.

При использовании 4-битного интерфейса число сигналов уменьшается до семи: четыре линии данных (DB4…DB7) и три служебных линии (RS, RD/WR, E). Принцип передачи и назначение служебных сигналов при этом не меняется. Единственное отличие заключается в том, что информация передается последовательностями по четыре бита по линиям DB4…DB7 (рисунок 7). Сначала на шину выставляются четыре старших бита, а потом четыре младших. При этом требуется два импульса сигнала E для фиксации каждого полубайта.

Рис. 7. 4-битный режим обмена с контроллером КБ1013ВГ6

Рис. 7. 4-битный режим обмена с контроллером КБ1013ВГ6

Очевидно, что 11 или 7 сигнальных линий – это недопустимо много для бюджетных микроконтроллеров с малым числом выводов. Решить эту проблему можно сменой ЖК-контроллера КБ1013ВГ6, но при этом придется проделать гигантскую работу по разработке новых дисплеев. Чтобы избежать этого, инженеры МЭЛТ предлагают использовать старый ЖК-контролер и дополнительный преобразователь I²C-интерфейса на базе микросхемы INF8574. Такой подход позволит снизить число необходимых для обмена выводов, сократить трудоемкость по переработке существующих моделей, сохранить многообразие номенклатуры и обеспечить обратную совместимость.

Модернизация малой кровью: реализация I²C-интерфейса на базе INF8574

Для того чтобы обеспечить повыводную совместимость новых и старых моделей дисплеев, было решено добавить дополнительные контакты для I²C – 17 (SDA) и 18 (SCL) (рисунок 8). Таким образом, в существующих устройствах базовые модели могут быть заменены на модернизированные версии без каких-либо проблем, так как они имеют те же габариты и расположение контактов. Здесь еще раз стоит отметить, что дисплеи MT-20S4A и MT-16S2H не являются совместимыми по выводам, так как у MT-16S2H расположение выводов на плате идет не по порядку (выводы 15…18 вынесены левее остальных контактов), хотя нумерация у обоих дисплеев совпадает (таблица 2).

Рис. 8. Дополнительные контакты в дисплеях MT-20S4A с I2C

Рис. 8. Дополнительные контакты в дисплеях MT-20S4A с I2C

Таблица 2. Назначение выводов дисплеев MT-20S4A и MT-16S2H

Вывод Обозначение Назначение вывода
1 GND Общий вывод (0 В)
2 UCC Напряжение питания (5/3 В)
3 Управление контрастностью
4 A0 Адресный сигнал – выбор между передачей данных и команд управления
5 R/W Выбор режима записи или чтения
6 E Разрешение обращений к модулю (а также строб данных)
7 DB0 Шина данных (8-битный режим; младший бит в 8-битном режиме)
8 DB1 Шина данных (8-битный режим)
9 DB2 Шина данных (8-битный режим)
10 DB3 Шина данных (8-битный режим)
11 DB4 Шина данных (8- и 4-битные режимы; младший бит в 4-битном режиме)
12 DB5 Шина данных (8- и 4-битные режимы)
13 DB6 Шина данных (8- и 4-битные режимы)
14 DB7 Шина данных (8- и 4-битные режимы; старший бит)
15 +LED + питания подсветки
16 –LED – питания подсветки
17 SDA* Линия данных I²C
18 SCL* Линия тактирования I²C
*  – Только для новых моделей с I²C.

Чтобы использовать данные, передаваемые по I²C, необходимо преобразовать их в параллельную форму, понятную для ЖК-контроллера КБ1013ВГ6. Для этого предполагается применять 8-битный двунаправленный расширитель портов ввода-вывода INF8574 производства белорусской компании «Интеграл».

Расширитель INF8574, по сути, выступает в качестве моста между I²C и параллельной шиной (рисунок 9). В его составе присутствует I²C-контроллер и сдвиговый регистр. Для задания адреса ведомого I²C доступно три вывода A0…A2, при этом полный адрес имеет следующий вид: 0-1-0-0-A2-A1-A0.

Рис. 9. Структура микросхемы INF8574

Рис. 9. Структура микросхемы INF8574

INF8574 работает с напряжениями 2,5…6 В, что позволяет использовать его в версиях дисплеев с питанием как 3, так и 5 В. Стоит отметить, что данный расширитель имеет достаточно скромное потребление – не более 100 мкА при максимальной частоте обмена 100 кГц. При этом типовое значение составляет всего 40 мкА (таблица 3).

Таблица 3. Характеристики микросхемы INF8574

Параметр Значение
Диапазон напряжений питания, В 2,5…6,0
Ток потребления, мкА 40…100 ( без нагрузки, Uпит = 6 В, FSCL = 100 кГц)
Максимальная частота I²C, кГц 100
Диапазон рабочих температур, °С -40…85

Несложно заметить, что INF8574 имеет только восемь выходных двунаправленных каналов. Этого недостаточно для реализации 8-битного интерфейса, который требует 11 сигнальных линий. Это означает, что обмен с КБ1013ВГ6 может производиться только по 4-битному параллельному интерфейсу, который требует лишь семи сигнальных линий. Рассмотрим подробнее схему включения INF8574 для этого случая.

Анализ схемы включения I²C-преобразователя INF8574 в новых дисплеях МЭЛТ

В новых дисплеях предполагается использовать все восемь портов микросхемы INF8574 (рисунок 10):

  • порты P0…P2 для служебных сигналов (RS, RD/WR, E);
  • порты P4…P7 для линий данных (DB4…DB7);
  • к порту P3 подключается цепь управления подсветкой дисплея.
Рис. 10. Схема включения микросхемы INF8574 в новых дисплеях от МЭЛТ

Рис. 10. Схема включения микросхемы INF8574 в новых дисплеях от МЭЛТ

Предложенная схема имеет целый ряд особенностей:

  • число линий для обмена данными между управляющим микроконтроллером и дисплеем уменьшается до двух (SDA и SCL), что позволяет использовать для работы даже самые миниатюрные контроллеры;
  • на плате дисплея предусмотрены резисторы 4,7 кОм для подтяжки линий SDA и SCL, что дает возможность сэкономить место на пользовательской плате;
  • наличие перемычек J1…J3 на выводах A0…A2 позволяет при необходимости изменять адрес дисплея;
  • на плате дисплея расположена цепь управления яркостью, построенная на базе биполярного транзистора BC817. Так как максимальная частота I²C для INF8574 достаточно высока и достигает 100 кГц, пользователи смогут управлять яркостью даже с помощью ШИМ, периодически меняя значение порта P3. При этом цепь катода LED-подсветки может быть и вовсе не подключена на пользовательской плате;
  • цепь катода подсветки может подключаться к земле с помощью опциональной перемычки 0 Ом.

Порядок подключения портов INF8574 к параллельной шине контроллера КБ1013ВГ6, а также состояние перемычек на линиях адреса определяют вид сообщений при обмене по I²C.

Обмен данными с модернизированными дисплеями МЭЛТ по I²C

Структура сообщений при обмене по шине I²C с INF8574 имеет стандартный вид (рисунок 11).

Рис. 11. Диаграммы обмена с дисплеями по I2C

Рис. 11. Диаграммы обмена с дисплеями по I2C

После формирования состояния Start управляющий микроконтроллер посылает адрес ведомого устройства и бит направления передачи. Адрес состоит из семи бит и для INF8574 имеет вид 0-1-0-0-A2-A1-A0. Значение битов A2-A1-A0 определяется состоянием перемычек на соответствующих выводах микросхемы.

Первый байт завершается битом R/W, который определяет дальнейшее направление передачи данных. Здесь стоит особо отметить, что в данном случае речь идет о бите R/W, который относится только к I²C. Его не следует путать с одноименным сигналом R/W параллельного интерфейса, который подключен к порту P1 микросхемы INF8574. Если первый байт сообщения I²C завершается состоянием бита R/W = 1, то все порты P0…P7 переводятся в состояние входов. Если R/W = 0, то порты настраиваются на выход.

Передача каждого байта по I²C завершается сигналом подтверждения ACK от ведомого.

После задания адреса и направления передачи следует посылка байта/байтов данных. В соответствии со схемой подключения вначале следуют биты DB7…DB4, затем бит состояния LED-подсветки, далее идут биты служебных сигналов E, R/W ,RS (A0 по именованию МЭЛТ). В данном случае речь уже идет о сигнале R/W, относящемся к параллельном интерфейсу.

Несмотря на внешнюю простоту, обмен с дисплеем по I²C имеет несколько тонких моментов:

  • для защелкивания данных требуется формирование среза сигнала E (рисунок 7). Для этого придется передать два байта данных по I²C. В первом байте бит E = 1, а во втором E = 0. При этом состояние остальных битов (кроме LED-) менять не разрешается;
  • так как на стороне КБ1013ВГ6 используется 4-битный интерфейс, то для передачи одного байта данных придется сформировать два среза сигнала E. Для этого потребуется переслать целых четыре байта по I²C;
  • направление передачи портов P0…P7 микросхемы INF8574 задается в стартовом байте с помощью бита R/W. При этом все порты настраиваются либо на вход, либо на выход. Это, пожалуй, самый тонкий момент реализации I²C в данном случае. Он оказывается не так критичен при выполнении цикла записи, так как все порты находятся в режиме выхода и все сообщения можно передать в одном кадре I²C. Зато в цикле чтения последовательность действий оказывается гораздо сложнее и потребует нескольких кадров.

Несмотря на высокую сложность программной реализации I²C, стоит отметить и два положительных момента:

  • процессы инициализации и обмена данными не изменились, так как дисплеи построены на базе привычного ЖК-контроллера КБ1013ВГ6;
  • существуют готовые бесплатные библиотечные функции, такие, например, как Arduino-LiquidCrystal-I2C-library для Arduino, в которых все тонкие моменты уже реализованы.

Особенности программирование ЖК-индикаторов МЭЛТ с I²C

Так как новые дисплеи по прежнему используют ЖК-контроллер КБ1013ВГ6, то с алгоритмической точки зрения инициализация и обмен данными не претерпели изменений. Программисты даже могут применять часть библиотечного кода, который создавался для индикаторов с параллельным интерфейсом. Речь идет о файле AllText4. c входящим в пакет примеров SamplesOfLCMsProgramming.zip (доступен для скачивания на сайте МЭЛТ).

В частности, основная функция main из AllText4.c по-прежнему остается актуальной:

 void main(void)

{

int i;

LCDinit();

WriteCmd(0x80); //установка курсора в начало первой строки индикатора

for(i=0;i<Len1;i++)

{

WriteData(Text1[i]);

}

WriteCmd(0x80+0x40); //установка курсора в начало второй строки индикатора

for(i=0;i<Len2;i++)

{

WriteData(Text2[i]);

}

}

Тем не менее, аппаратные функции, в частности – LCDinit() и WriteByte(byte b, bit cd), из этого файла должны быть переопределены для работы с I²C. Кроме того, файл AllText8.c не содержит реализацию функции задержек и функций инициализации и работы с портами ввода-вывода. Пользователь должен создать их самостоятельно для конкретного используемого микроконтроллера.

Если предполагается работа дисплея в составе стека Arduino, то для программирования следует воспользоваться готовой библиотекой. Например, https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library.

Перспективы применения ЖК-индикаторов МЭЛТ с интерфейсом I²C

Области применения ЖК-дисплеев производства компании МЭЛТ достаточно разнообразны, что является следствием целого ряда преимуществ:

  • великолепные показатели контраста, не уступающие конкурентам. Это достигается благодаря использованию самых современных технологий FSTN и STN;
  • широчайший выбор моделей (более 600 представителей): знакосинтезирующих и графических; с позитивным и негативным отображением; с различными цветами подсветки (янтарным, желто-зеленым, красным, голубым, белым); с напряжением питания 2,8/3,0/3,3/5 В; с различными форматами и разрешением; с термокомпенсацией и без;
  • реальная работоспособность серийных моделей в широком диапазоне температур до -30…70°C. При этом диапазон хранения для них составляет -40…80°C. Для заказных индикаторов рабочий диапазон и вовсе может достигать -40…80°C;
  • цифро-буквенные знакосинтезирующие дисплеи МЭЛТ имеют возможность поддержки русского/английского/белорусского/украинского/казахского знакогенераторов. Кроме того, использование формата букв 5х8 делает отображение кириллических символов больше и понятнее;
  • дополнительная страница знакогенератора в кодировке Win-CP1251 упрощает написание программ в среде Microsoft Windows;
  • высочайшая надежность и качество продукции МЭЛТ;
  • доступность и возможность поставки больших партий индикаторов в кратчайшие сроки при малой стоимости. Например, цена дисплея MT-16S2H-2Y при заказе крупной партии начинается от 202 рублей, а цена MT-20S4A-2Y – от 429 рублей.

Перечисленные достоинства делают дисплеи МЭЛТ весьма привлекательными для таких приложений, как автомобильная электроника, промышленное оборудование, оборудование для нефтегазовой отрасли и так далее.

Появление поддержки интерфейса I²C дополнительно расширяет область применения дисплеев:

  • идеальное решение для любительской электроники на базе стека Arduino;
  • отличный вариант для бюджетных приложений.

По оценкам инженеров МЭЛТ, внедрение I²C ориентировочно добавит около 20…30 рублей к стоимости дисплея. Однако такое удорожание можно компенсировать, выбрав простой и недорогой микроконтроллер, например, STM8S003. При этом схемотехническая реализация значительно упростится, а размеры печатной платы уменьшатся, что приведет к дополнительному снижению стоимости.

Если новые ЖК будут востребованы на рынке, можно будет ожидать обновления других семейств знакосинтезирующих дисплеев.

Заключение

В настоящий момент номенклатура ЖК-дисплеев производства компании МЭЛТ насчитывает более 600 моделей с различными форматами и цветовыми исполнениями. При этом многие дисплеи способны работать с диапазоном рабочих температур -30…70°C, что недоступно для импортных бюджетных аналогов.

Недавно компания МЭЛТ анонсировала запуск модернизированных знакосинтезирующих дисплеев, которые, кроме параллельного интерфейса, имеют поддержку I²C. Эти ЖК-индикаторы построены на базе привычного контроллера КБ1013ВГ6, а функционал I²C реализуется с помощью микросхемы расширителя портов ввода-вывода INF8574. Для обмена по I²C управляющему микроконтроллеру потребуется всего пара выводов, в то время как ранее при использовании параллельных интерфейсов было необходимо не менее семи портов.

Наличие у дисплеев поддержки I²C оказывается весьма привлекательной особенностью при работе с микроконтроллерами с малым числом выводов, а также при совместном использовании с платами Arduino.

Литература

  1. Вячеслав Гавриков. Российское – значит отличное: ЖК-дисплеи производства МЭЛТ. Новости Электроники №1/ 2016.
  2. http://www.melt.com.ru/.
О компании МЭЛТ

Компания МЭЛТ была основа в 1995 году. На тот момент основной деятельностью компании была разработка и производство плат автоматического определения номера. Начав свою деятельность с небольшого предприятия по производству потребительской электроники, компания МЭЛТ развилась до высококачественного и технологичного производителя электроники в Российской Федерации. На сегодняшний день компания МЭЛТ специализируется на разработке и производстве LCD дисплеев, источников питания, печатных плат и AD ...читать далее

Наличие на складах
Наименование Наличие Цена
MT-20S4A-3YLG (МЭЛТ) 37 9.5760 $ 562.28 руб. от 48 шт
MT-16S2H-2YLG (МЭЛТ) 79 4.8260 $ 283.37 руб. от 104 шт
MT-16S2D-2YLG (МЭЛТ) 50 4.9210 $ 288.95 руб. от 96 шт
MT-16S2H-3YLG (МЭЛТ) 13 4.9970 $ 293.41 руб. от 96 шт
MT-20S4A-2YLG (МЭЛТ) 59 9.3385 $ 548.33 руб. от 54 шт
STM8S105C4T6 (ST) -20% 202 092 0.7874 $ 46.23 руб. от 1 шт
MT-20S4M-2YLG (МЭЛТ) 1 17.48 $ 1026 руб. от 29 шт
STM8S003F3P6TR (ST) 1 184 735 0.2810 $ 16.50 руб. от 2 500 шт
MT-16S4A-2FLA (МЭЛТ) 0
MT-24S1L-2FLA (МЭЛТ) 0