ЖК-дисплей 16×2: назначение контактов, устройство и режимы работы


ЖК-дисплей 16×2 назван так потому что он имеет 16 столбцов и 2 строки. Доступно множество модификаций подобных дисплеев, например 8×1, 8×2, 10×2, 16×1 и т. д. Но наиболее часто используемой является ЖК-дисплей 16*2, поэтому мы и рассмотрим его в данной статье.

Внешний вид модуля ЖК-дисплея 16×2

Все вышеупомянутые ЖК-дисплеи будут иметь 16 контактов, и принцип их программирования тоже будет одинаковый.

Распиновка и принцип работы ЖК-дисплея 16x2

На следующем рисунке приведена распиновка и описание контактов ЖК-дисплея 16x2.

Распиновка ЖК-дисплея 16x2

№ п/п Номер контакта Имя контакта Тип контакта Описание контакта Куда подключается
1 Pin 1 Ground Source Pin земля (общий провод) к земле MCU/источника питания
2 Pin 2 VCC Source Pin напряжения питания к источнику питания
3 Pin 3 V0/VEE Control Pin управление контрастностью к переменному потенциометру, который может подавать напряжение 0-5 В.
4 Pin 4 Register Select Control Pin переключение между режимом данных/режимом команд

к выводу MCU и получает либо 0, либо 1.

0 -> Командный режим

1-> Режим данных

5 Pin 5 Read/Write Control Pin переключение между режимами записи/чтения

к выводу MCU и получает либо 0, либо 1.

0 -> Операция записи

1-> Операция чтения

6 Pin 6 Enable Control Pin Должен удерживаться на высоком уровне для выполнения операции чтения/записи к MCU и всегда на высоком уровне
7 Pin 7-14 Data Bits (0-7) Data/Command Pin контакты для передачи команд или данных

В 4-проводном режиме

Только 4 контакта (0-3) подключены к MCU.

В 8-проводном режиме

Все 8 контактов (0-7) подключены к MCU.

8 Pin 15 LED Positive LED Pin подсветка дисплея к +5 В
9 Pin 16 LED Negative LED Pin подсветка дисплея (земля) к земле

Теперь посмотрим на обратную сторону модуля ЖК-дисплея 16x2.

Обратная сторона модуля ЖК-дисплея 16x2

Черные кружки на этом рисунке представляют собой интерфейсную микросхему и связанные с ней компоненты, которые помогут нам использовать этот ЖК-дисплей с MCU (микроконтроллером). Поскольку наш ЖК-дисплей представляет собой ЖК-дисплей с точечной матрицей 16*2, поэтому всего на нем будет (16*2=32) 32 символа, и каждый символ будет состоять из 5*8 пикселей. Одиночный символ со всеми включенными пикселями показан на следующем рисунке.

Одиночный символ на экране дисплея со всеми включенными пикселями

Итак, теперь мы знаем, что каждый символ на дисплее содержит (5*8=40) 40 пикселей, а для 32 символов у нас будет (32*40) 1280 пикселей. Кроме того, ЖК-дисплей также должен быть проинструктирован о положении пикселей.

Обработать всю эту логику управления дисплеем в чистом виде с помощью микроконтроллера будет непростой задачей, поэтому используется интерфейсная микросхема, такая как HD44780 , которая устанавливается на самом ЖК-модуле. Функция этой микросхемы — получать команды и данные от микроконтроллера и обрабатывать их для отображения значимой информации на нашем ЖК дисплее.

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

4-битный и 8-битный режимы ЖК дисплея

ЖК-дисплей может работать в двух разных режимах, а именно в 4-битном и 8-битном режиме. В 4-битном режиме мы отправляем данные по полубайту, сначала верхний полубайт, а затем младший полубайт. Для тех из вас, кто не знает, что такое полубайт: полубайт — это группа из четырех битов, поэтому четыре младших бита (D0–D3) байта образуют нижний полубайт, а четыре старших бита (D4–D7) байта образуют старший полубайт. Это позволяет нам отправлять 8-битные данные.

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

Теперь вы, должно быть, догадались: да, 8-битный режим быстрее и безупречнее, чем 4-битный режим. Но основным недостатком является то, что в данном случае микроконтроллеру требуется 8 линий/контактов для передачи дисплею команд/данных. Это может привести к тому, что на нашем микроконтроллере закончатся контакты ввода-вывода, поэтому широкое применение находит 4-битный режим. Для установки этих режимов не используются никакие управляющие контакты. Меняется только способ программирования.

Режимы чтения и записи ЖК дисплея

Как уже отмечалось, модуль ЖК дисплея содержит интерфейсную микросхему. MCU может либо читать, либо писать на эту интерфейсную микросхему. В большинстве случаев мы будем просто писать в микросхему, поскольку чтение усложнит задачу, а такие сценарии очень редки. При необходимости можно прочитать такую ​​информацию, как положение курсора, прерывания завершения статуса и т. д., но это выходит за рамки нашей статьи.

Интерфейсная микросхема, присутствующая в большинстве ЖК-дисплеев — это HD44780U. Чтобы запрограммировать наш ЖК-дисплей, нам необходимо изучить полную спецификацию данной микросхемы. Даташит на нее можно скачать по этой ссылке.

ЖК-команды

На ЖК-дисплее есть несколько инструкций по предустановленным командам, которые нам нужно отправить на ЖК-дисплей через какой-либо микроконтроллер. Наиболее важные (часто используемые) из этих команд приведены в следующей таблице:

Шестнадцатеричный код Команда для регистра инструкций ЖК-дисплея
0F ЖК-дисплей включен, курсор включен
01 Очистить экран дисплея
02 Вернуться домой (в начало строки)
04 Уменьшить курсор (сдвинуть курсор влево)
06 Увеличить курсор (смещение курсора вправо)
05 Сдвинуть дисплей вправо
07 Сдвинуть дисплей влево
0E Дисплей включен, курсор мигает
80 Переместить курсор в начало первой строки
C0 Переместить курсор в начало второй строки
38 2 строки и матрица 5×7
83 Курсорная линия 1, позиция 3
3C Активировать вторую линию
08 Дисплей ВЫКЛ, курсор ВЫКЛ
C1 Перейти на вторую строку, позиция 1
OC Дисплей ВКЛ, курсор ВЫКЛ
C1 Перейти на вторую строку, позиция 1
C2 Перейти на вторую строку, позиция 2

Наиболее подробно принципы непосредственного (без использования библиотек) управления ЖК дисплеем 16х2  описаны в статье про его подключение к микроконтроллеру AVR.

Также на нашем сайте мы рассматривали подключение ЖК дисплея 16x2 и к другим микроконтроллерам (платам):

(Проголосуй первым!)
Загрузка...
277 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *