Jump to content

ЖК-контроллер Hitachi HD44780

(Перенаправлено с Hitachi HD44780 )

Контроллер ЖК-дисплея HD44780 и драйверы HD44100 на задней стороне модуля ЖК-дисплея 40266

Контроллер ЖК-дисплея Hitachi HD44780 — это буквенно-цифровой (ЖК-дисплея) с точечной матрицей контроллер жидкокристаллического дисплея , разработанный компанией Hitachi в 1980-х годах. Набор символов контроллера включает ASCII символы , японские символы кана и некоторые символы в двух строках по 40 символов. Используя драйвер расширения, устройство может отображать до 80 символов. [ 1 ] Многочисленные дисплеи сторонних производителей совместимы с его 16-контактным интерфейсом и набором инструкций, что делает его популярным и дешевым драйвером ЖК-дисплея. [ 2 ]

Архитектура

[ редактировать ]
Блок-схема ЖК-модуля на базе HD44780U

ЖК-контроллер Hitachi HD44780 ограничен монохромными текстовыми дисплеями и часто используется в копировальных аппаратах , факсах , лазерных принтерах , промышленном испытательном оборудовании и сетевом оборудовании, таком как маршрутизаторы и устройства хранения данных .

Совместимые ЖК-экраны производятся в нескольких стандартных конфигурациях. Обычные размеры — это одна строка из восьми символов (8 × 1) и форматы 16 × 2, 20 × 2 и 20 × 4. Нестандартные размеры большего размера состоят из 32, 40 и 80 символов и из 1, 2, 4 или 8 строк. Чаще всего изготавливается более крупная конфигурация — 40×4 символа, для которой требуются два контроллера HD44780 с индивидуальной адресацией и микросхемами расширения, поскольку один чип HD44780 может адресовать только до 80 символов.

Символьные ЖК-дисплеи могут иметь подсветку , которая может быть светодиодной , флуоресцентной или электролюминесцентной . Номинальное рабочее напряжение для светодиодной подсветки составляет 5 В при полной яркости, затемнение при более низком напряжении зависит от таких деталей, как цвет светодиода. Несветодиодные подсветки часто требуют более высокого напряжения.

Интерфейс

[ редактировать ]
Плата разработки проекта микроконтроллера Dragon12-P Freescale HCS12 /9S12 с использованием ЖК-дисплея на базе HD44780

В символьных ЖК-дисплеях используется 16-контактный интерфейс, обычно с использованием контактов или краевых соединений карты с расстоянием между центрами 0,1 дюйма (2,54 мм). Те, у кого нет подсветки, могут иметь только 14 контактов, не считая двух контактов, питающих свет. Этот интерфейс был разработан для легкого подключения к интерфейсу Intel MCS-51 XRAM с использованием всего двух адресных контактов, что позволяло отображать текст на ЖК-дисплее с помощью простых команд MOVX, предлагая экономичный вариант добавления текстового дисплея на устройства. [ нужна ссылка ]

Преобладающая распиновка следующая (существуют исключения):

Приколоть# Имя Направление Описание
1 ВСС Власть Заземление источника питания
2 Вкк Власть Источник питания (+3,3 или +5 В в зависимости от модуля)
3 Вода Вход Регулировка контрастности (аналоговый вход)
4 РС Вход Выбор регистра (0 = команда, 1 = данные)
5 Ч/ З Вход Чтение/ запись (0 = запись в модуль дисплея, 1 = чтение из модуля дисплея)
6 И Вход Включение часов (срабатывает по заднему фронту)
7 ДБ0 ввод/вывод Бит данных 0 (не используется в 4-битном режиме)
8 БД1 ввод/вывод Бит данных 1 (не используется в 4-битном режиме)
9 DB2 ввод/вывод Бит данных 2 (не используется в 4-битной операции)
10 DB3 ввод/вывод Бит данных 3 (не используется в 4-битной операции)
11 ДБ4 ввод/вывод Бит данных 4
12 ДБ5 ввод/вывод Бит данных 5
13 ДБ6 ввод/вывод Бит данных 6
14 ДБ7 ввод/вывод Бит данных 7
15 светодиод+ Власть Анод подсветки (+) (если применимо)
16 светодиод- Власть Катод подсветки (-) (если применимо)

Примечания:

  • Vee (также V0): это аналоговый вход, обычно подключаемый к потенциометру. Пользователь должен иметь возможность контролировать это напряжение независимо от всех других регулировок, чтобы оптимизировать видимость дисплея, который меняется, т.е. а. с температурой и, в некоторых случаях, высотой над уровнем моря. При неправильной регулировке дисплей будет выглядеть неисправным.
  • Чтение/ запись : в большинстве приложений чтение с HD44780 не требуется. В этом случае этот вывод может быть постоянно подключен к земле, и для его управления не нужно выделять контакты процессора.

Выбор режима

[ редактировать ]
Дисплей размером 20×4 символа.

В 8-битном режиме все передачи происходят за один цикл на выводе разрешения (E) со всеми 8 битами на шине данных и стабильными выводами RS и R/ W . В 4-битном режиме данные передаются в виде пар 4-битных « полубайтов RS и R/ W » на верхних выводах данных, D7–D4, с двумя разрешающими импульсами и стабильными выводами . Сначала должны быть записаны четыре старших бита (7–4), а затем четыре младших бита (3–0). Последовательность высокого/низкого уровня должна выполняться каждый раз, иначе контроллер не сможет правильно получать дальнейшие команды.

Выбор 4-битного или 8-битного режима требует тщательного выбора команд. Есть два основных соображения. Во-первых, когда D3–D0 не подключены, на этих линиях всегда будет высокий уровень (двоичный 1111) для HD44780, поскольку имеются внутренние подтягивающие МОП-транзисторы . [ 3 ] Во-вторых, ЖК-дисплей изначально может находиться в одном из трех состояний:

  • Состояние 1: 8-битный режим
  • Состояние 2: 4-битный режим, ожидание первого набора из 4 бит.
  • Состояние 3: 4-битный режим, ожидание второго набора из 4 бит.

Состояние 3 может возникнуть, например, если предварительное управление было прервано после отправки только первых 4 битов команды, когда HD44780 находился в 4-битном режиме.

Следующий алгоритм гарантирует, что ЖК-дисплей находится в нужном режиме:

Одна и та же команда отправляется три раза, набор функций с 8-битным интерфейсом D7–D4 = двоичный 0011, младшие четыре бита «не заботятся», с использованием одиночных разрешающих импульсов. Если контроллер находится в 4-битном режиме, младшие четыре бита игнорируются, поэтому их нельзя отправить, пока интерфейс не будет в конфигурации известного размера.

Начиная с состояния 1 (8-битная конфигурация):

  • Отправьте команду установки функции. Команда будет выполнена, установите 8-битный режим.
  • Отправьте команду установки функции. Команда будет выполнена, установите 8-битный режим.
  • Отправьте команду установки функции. Команда будет выполнена, установите 8-битный режим.

Начиная с состояния 2 (4-битная конфигурация, ожидание первой 4-битной передачи):

  • Отправьте команду установки функции. Получены первые 4 бита.
  • Отправьте команду установки функции. Последние 4 бита, команда принята, установлен 8-битный режим.
  • Отправьте команду установки функции. Команда будет выполнена, установите 8-битный режим.

Начиная с состояния 3 (4-битная конфигурация, ожидание последней 4-битной передачи):

  • Отправьте команду набора функций. Последние 4 бита: выполнена неизвестная команда.
  • Отправьте команду установки функции. В 8-битном режиме команда будет выполнена, в противном случае будут получены первые 4 бита.
  • Отправьте команду установки функции. Будет выполнена 8-битная команда или последние 4 бита предыдущей команды; установите 8-битный режим.

Во всех трех стартовых случаях интерфейс шины теперь находится в 8-битном режиме, 1 строка, 5х8 символов. Если требуется другая конфигурация 8-битного режима, необходимо отправить команду установки функций 8-битной шины для установки полных параметров. Если желателен 4-битный режим, двоичный код 0010 должен быть отправлен на D7–D4 одним разрешающим импульсом. Теперь контроллер будет в 4-битном режиме, и полная 4-битная последовательность команд набора функций шины (два включения с командными битами 7–4 и 3–0 в последующих циклах) завершит настройку регистра набора функций.

Набор инструкций

[ редактировать ]

Набор инструкций HD44780 показан ниже: [ 4 ]

Набор инструкций на базе HD44780U
Инструкция Код Описание Исполнение
время (макс.)
(при f cp = 270 кГц)
РС Ч/З Б7 Б6 Б5 Б4 Б3 Б2 Б1 Б0
Четкий дисплей 0 0 0 0 0 0 0 0 0 1 Очищает дисплей и возвращает курсор в исходное положение (адрес 0). 1,52 мс
Курсор домой 0 0 0 0 0 0 0 0 1 * Возвращает курсор в исходное положение. Также возвращает дисплей, сдвинутый в исходное положение. Содержимое DDRAM остается неизменным. 1,52 мс
Режим входа установлен 0 0 0 0 0 0 0 1 ИДЕНТИФИКАТОР С Устанавливает направление перемещения курсора (I/D); указывает на смещение дисплея (S). Эти операции выполняются во время чтения/записи данных. 37 мкс
Управление включением/выключением дисплея 0 0 0 0 0 0 1 Д С Б Устанавливает включение/выключение всего дисплея (D), включение/выключение курсора (C) и мигание символа положения курсора (B). 37 мкс
Сдвиг курсора/дисплея 0 0 0 0 0 1 С/К П/Л * * Устанавливает перемещение курсора или сдвиг дисплея (S/C), направление сдвига (R/L). Содержимое DDRAM остается неизменным. 37 мкс
Набор функций 0 0 0 0 1 ДЛ Н Ф * * Устанавливает длину данных интерфейса (DL), количество строк отображения (N) и шрифт символов (F). 37 мкс
Установить адрес CGRAM 0 0 0 1 CGRAM-адрес Устанавливает адрес CGRAM. Данные CGRAM отправляются и принимаются после этой настройки. 37 мкс
Установить адрес DDRAM 0 0 1 адрес DDRAM Устанавливает адрес DDRAM. Данные DDRAM отправляются и принимаются после этой настройки. 37 мкс
Чтение флага занятости и счетчика адреса 0 1 лучший друг Адрес CGRAM/DDRAM Считывает флаг занятости (BF), указывающий на выполнение внутренней операции, и считывает содержимое счетчика адреса CGRAM или DDRAM (в зависимости от предыдущей инструкции). 0 мкс
Напишите CGRAM или DDRAM. 1 0 Запись данных Запись данных в CGRAM или DDRAM. 37 мкс
Чтение из CG/DDRAM 1 1 Чтение данных Чтение данных из CGRAM или DDRAM. 37 мкс
Имена битов инструкций —

I/D – 0 = уменьшить позицию курсора, 1 = увеличить позицию курсора; S – 0 = нет смещения дисплея, 1 = сдвиг дисплея; D – 0 = отображение выключено, 1 = отображение включено; C – 0 = курсор выключен, 1 = курсор включен; B – 0 = курсор не мигает, 1 = курсор мигает; S/C – 0 = перемещение курсора, 1 = сдвиг отображения; П/Л – 0 = сдвиг влево, 1 = сдвиг вправо; DL – 0 = 4-битный интерфейс, 1 = 8-битный интерфейс; N – 0 = режим 1/8 или 1/11 (1 линия), 1 = режим 1/16 (2 линии); F – 0 = 5×8 точек, 1 = 5×10 точек; BF – 0 = команда может быть принята, 1 = выполняется внутренняя операция.

DDRAM — это ОЗУ для отображаемых данных, а CGRAM — это ОЗУ для генератора символов. [ 5 ] Размер DDRAM составляет 80 байт (40 на строку), адресация которых осуществляется с промежутком между двумя строками. Первая строка — это адреса от 0 до 39 в десятичном формате или от 0 до 27 в шестнадцатеричном. Вторая строка — это адреса с 64 по 103 в десятичном формате или с 40 по 67 в шестнадцатеричном.

CGRAM — это память для чтения/записи, используемая для кодирования до 8 символов в генераторе символов. Он состоит из 64 полей по адресам от 0 до 3F в шестнадцатеричном формате. Каждое поле представляет собой 5-битное отображение строки пикселей каждого символа. Каждые 8 ​​полей в CGRAM используются для каждого символа. Младшие 3 бита кодов символов от 0 до 7 и от 8 до 15 выбирают группы из 8 полей в памяти CGRAM.

Чтение и запись в DDRAM осуществляется путем установки высокого уровня на входе RS во время передачи данных по шине. DDRAM также необходимо выбрать с помощью команды Set DDRAM Address, которая выбирает DDRAM для доступа, а также устанавливает начальный адрес для доступа к DDRAM.

Аналогичным образом чтение и запись в CGRAM осуществляется путем установки высокого уровня на входе RS во время передачи данных по шине. CGRAM также необходимо выбрать с помощью команды Set CGRAM Address, которая выбирает CGRAM для доступа, а также устанавливает начальный адрес для доступа к CGRAM.

Время выполнения, указанное в этой таблице, основано на частоте генератора 270 кГц. В технических характеристиках указано, что для резистора сопротивлением 91 кОм при V CC = 5 В частота генератора может изменяться от 190 кГц до 350 кГц, что приводит к времени ожидания 52,6 мкс и 28,6 мкс вместо 37 мкс. Если дисплей с рекомендованным резистором сопротивлением 91 кОм питается от напряжения 3,3 В, генератор будет работать намного медленнее. Если бит занятости не используется и инструкции синхронизируются внешней схемой, это следует принять во внимание.

Янтарная подсветка 8×2-символьного дисплея HD44780.

Исходное ПЗУ генератора символов HD44780 содержит 208 символов в точечной матрице 5×8 и 32 символа в точечной матрице 5×10. Доступны более новые совместимые чипы с более высоким разрешением, соответствующие дисплеям с большим количеством пикселей. [ нужна ссылка ]

Разработаны две версии ПЗУ: [ 5 ]

Подмножество 7-битного ASCII для японской версии нестандартно: оно содержит символ иены там, где обратной косой обычно встречается символ черты, а также символы стрелок влево и вправо вместо тильды и символа рубаута .

Ограниченное количество пользовательских символов можно запрограммировать в устройство в виде растрового изображения с помощью специальных команд. Эти символы необходимо записывать в устройство каждый раз при его включении, поскольку они хранятся в энергозависимой памяти .

См. также

[ редактировать ]
  • LCD Smartie – драйвер дисплея с открытым исходным кодом для Microsoft Windows
  • JIS X 0201 – японская стандартная 7-битная и 8-битная кодировка символов.
  1. ^ Санчес и Кантон 2007 , с. 275
  2. ^ «Использование Hitachi HD44780 с Arduino» . Лучшие-Микроконтроллерные-Проекты . Проверено 2 января 2023 г.
  3. ^ «HD44780U (LCD-II)» (PDF) . Хитачи. п. 54 . Проверено 5 января 2023 г.
  4. ^ Хуан 2009 , с. 326
  5. ^ Jump up to: а б «Техническое описание HD44780U» (PDF) . Проверено 23 декабря 2021 г.

Дальнейшее чтение

[ редактировать ]
  • Хуан, Хан-Вэй (2009). HCS12 / 9S12: Введение в программный и аппаратный интерфейс (2-е изд.). Дельмар Сенгадж Обучение. ISBN  978-1-4354-2742-6 .
  • Санчес, Хулио; Кантон, Мария П. (2007). Программирование микроконтроллера: микрочип PIC . ЦРК Пресс. ISBN  978-0-8493-7189-9 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 5b3ae605eac3b16b94bfc78cf29d5747__1715624400
URL1:https://arc.ask3.ru/arc/aa/5b/47/5b3ae605eac3b16b94bfc78cf29d5747.html
Заголовок, (Title) документа по адресу, URL1:
Hitachi HD44780 LCD controller - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)