ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 23.11.2023
Просмотров: 91
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
В таблице 9.1 приведены команды контроллера ЖКИ и время, необходимое для выполнения этих команд. Для того чтобы можно было определить, когда ЖКИ закончит свои внутренние операции, контроллер ЖКИ содержит специальный флаг занятости – BUSY-флаг (BF). Если контроллер занят выполнением внутренних операций, то BF установлен (BF = 1), если же контроллер готов принять следующую команду, то BF сброшен (BF = 0). Более простой способ организации обмена заключается в том, что управляющий микроконтроллер, зная, сколько времени требуется ЖКИ на обработку той или иной команды, после каждой передачи информации ждет соответствующее время.
Таблица 9.1
Команда | Код | Описание | Время исполнения команды | |||||||||
RS | R/W | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | |||
Очистка дисплея | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | Записывает код 0x20 (пробел) во все ячейки DDRAM, устанавливает счетчик адреса DDRAM в 0x00. | 1,5 мс |
Возврат в начальную позицию | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | х | Устанавливает счетчик адреса DDRAM в 0x00 и возвращает курсор в начальную позицию. Содержимое DDRAM не изменяется. | 1,5 мс |
Включение-выключение дисплея | 0 | 0 | 0 | 0 | 0 | 0 | 1 | D | C | B | Устанавливает/ отключает биты, отвечающие за включения дисплея (D), отображение курсора (C), мерцание курсора (B). | 38 мкс |
Сдвиг курсора или видимой области дисплея | 0 | 0 | 0 | 0 | 0 | 1 | D/C | R/L | x | x | Бит D/C определяет то, что будет перемещаться – видимая область дисплея или курсор (при D/C = 1 перемещается видимая область, при D/C = 0 – курсор), R/L задает направление перемещения. DDRAM не изменяется | 38 мкс |
Начальные установки | 0 | 0 | 0 | 0 | 1 | DL | N | F | x | x | Определяет разрядность шины интерфейса (DL = 1 8-бит, DL = 0 4-бита), количества строк на дисплее (N = 1 – две строки, N = 0 – одна строка) и размера символов (F = 1 – 5×11 точек, F = 0 5×8 точек). | 38 мкс |
Установка адреса CGRAM | 0 | 0 | 0 | 1 | A5 | A4 | A3 | A2 | A1 | A0 | Установка счетчика адреса CGRAM | 38 мкс |
Установка адреса DDRAM | 0 | 0 | 1 | A6 | A5 | A4 | A3 | A2 | A1 | A0 | Установка счетчика адреса DDRAM | 38 мкс |
Чтение BF и счетчика адреса | 0 | 1 | BF | A6 | A5 | A4 | A3 | A2 | A1 | A0 | Если BF = 1 то контроллер ЖКИ выполняет внутреннюю операцию. А6 - А0 – текущее значение адреса DDRAM. | 0 |
Запись данных в RAM | 1 | 0 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | Запись данных в ОЗУ (DDRAM или CGRAM) | 38 мкс |
Чтение данных из RAM | 1 | 1 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | Чтение данных из ОЗУ (DDRAM или CGRAM) | 38 мкс |
Таблица символов знакогенератора представлена на рисунке 9.6.
9.3. Рекомендации по программному управлению ЖКИ
Программу для работы с ЖКИ следует организовать в виде функций, выполняющих определенные действия, причем более сложные функции могут включать в себя простейшие. Простейшими могут быть такие подпрограммы, как функция, отправляющая команду контроллеру дисплея; функция, устанавливающая счетчик адреса; или функция, записывающая данные в DDRAM. Например, определение функции очистки экрана DDRAM приведено ниже
void clear_lcd(void) //Определение функции очистки экрана DDRAM
{
WriteMax(C_IND,0x01); // RS=0, R/W=0, E=1
WriteMax(DATA_IND,0x01); //Запись кода команды «Очистка дисплея»
WriteMax(C_IND,0x00); // Сброс строба Е
delay (300); // Задержка на выполнение команды
}
Рисунок 9.6 – Таблица символов знакогенератора
9.4. Инициализация ЖКИ WH1602B-YGK-CP
Перед началом работы ЖКИ контроллер индикатора при помощи некоторой последовательности специальных команд должен быть проинициализирован. Схема программы инициализации ЖКИ WH1602B-YGK-CP представлена на рисунке 9.7. Представленные команды передаются в контроллер индикатора с учетом соответствующего значения для времени ожидания. Для формирования временных задержек может быть использована функция delay. Подробное описание команд можно найти в документации контроллера индикатора.
Рисунок 9.7 – Схема программы инициализации ЖКИ WH1602B-YGK-CP