Жидкокристаллические дисплеи в настоящее время широко применяются в разнообразной радиоаппаратуре. Они могут стоять как в аналоговых, так и в цифровых устройствах. Жидкокристаллические дисплеи легко программируются и имеют преимущества перед семисегментными индикаторами.
Если вам нужно отображать информацию в графическом стиле, то графические ЖК-дисплеи будут лучшими по сравнению с символьными. Эта статья описывает основы работы с графическим ЖК-дисплеем с разрешением 128×64 и контроллером KS0108.
Для работы с дисплеем есть два регистра входной и выходной. Они выбираются комбинациями сигналов на выводах RS и RW, которые находятся в таблице 1.
Входной регистр:
Входной регистр используется для записи команд и данных в ЖК-дисплей. Он содержит данные и инструкции перед записью в DDRAM (Data Display RAM). Когда ЖК-дисплей находится в активном режиме (CS1 и CS2 имеют высокий логический уровень), входной регистр может быть выбран путем посылки битов на RS и RW выводы, как показано в таблице. Данные входного регистра записываются по заднему фронту ЕN (Enable) сигнала и автоматически записываются в DDRAM.
Выходной регистр:
Выходной регистр используется для чтения данных из DDRAM. Когда ЖК-дисплей находится в активном режиме (CS1 и CS2 имеют высокий логический уровень), выходной регистр может быть выбран путем посылки битов на RS и RW, как показано в таблице. Если на R/W и RS высокий логический уровень, данные записываются в выходной регистр. Если же на R/W высокий логический уровень, а на RS низкий логический уровень данные можно считывать.
Табл.1 Комбинации сигналов RS и RW
R/W
RS
Функции
L
L
Команда передачи
L
H
Запись данных (во входной регистр DDRAM)
H
L
Проверка состояния
H
H
Чтение данных (из DDRAM в выходной регистр)
Основные действия для работы с графическим ЖК-дисплеем:
1. Инициализация ЖК-дисплея
2. Выбор страницы
3. Выбор столбца
4. Вывод данных
1.Инициализация ЖК-дисплея
Перед выводом данных на ЖК-дисплей, он должен быть инициализирован, т.е. дисплей должен быть поставлен на нужный столбец и страницу, куда нужно вывести данные. Это можно сделать следующими действиями:
а) Задать значение регистра данных
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
0
0
1
1
1
1
1
D
При D = 1 данные отображаются, при D = 0 нет. Если дисплей выключен, то ничего происходить не будет.
б) CS1 = 1, CS2 = 1 активация обеих половин дисплея.
в) RS = 0, R / W = 0 (для выбора режима передачи команд)
г) EN = 1
д) задержка
е) EN = 0 (для записи данных во входной регистр)
Функция вкл/выкл может также использоваться для непрерывного отображения данных на ЖК-дисплее, переключая его с некоторой задержкой.
2. Выбор страницы
Прежде чем выводить какие либо данные, должна быть выбрана страница ЖК-дисплея. Страница, может быть выбрана по следующей последовательности действий:
а) Задать значение регистра данных
DB7
DB7
DB7
DB7
DB7
DB7
DB7
DB7
1
0
1
1
1
X3
X2
X1
Всего есть 8 страниц (0-7), конкретная страница выбирается установкой битов X1-X3.
б) CS1 = 1, CS2 = 1 (для активации обеих половин дисплея)
в) RS = 0, R / W = 0 (выбор режима команд)
г) EN = 1
д) задержка
е) EN = 0 (для записи данных во входной регистр )
К примеру, если X3 = 0, X2 = 1 и X1 = 0, то выбирается вторая страница.Чтение или запись выполняются на этой странице, пока не будет выбрана следующая страница. В зависимости от выбора столбца, страница выбирается или из левой или из правой половины ЖК-дисплея.
3. Выбор столбцов
В данном ЖК-дисплее 128 столбцов, которые увеличиваются автоматически при каждом цикле записи. Это означает, что выбрав столбец и записав в него данные, в следующем цикле записи номер столбца будет увеличен на 1. Данные легче писать по столбцам. Столбец может быть выбран следующими инструкциями:
а) Задать значение регистра данных
DB4
DB4
DB4
DB4
DB4
DB4
DB4
DB4
0
1
Y5
Y5
Y5
Y5
Y5
Y5
Соответствующий контроллер (CS1 или CS2) выбирается в зависимости от номера столбца, как показано ниже.
б) RS = 0, R / W = 0 (выбор режима команд)
в) EN = 1
г) Задержка
д) EN = 0 (для записи данных во входной регистр)
К примеру, если адрес страницы равен 0, и адрес столбца равен 0, то будет отображен первый пиксель, который показан на следующей диаграмме.
4. Отображение данных
После выбора страницы и столбца можно отправлять данные для отображения на ЖК-дисплее. Отображение данных может быть осуществлено по следующим инструкциям:
а) Задать значение регистра данных. С каждым циклом записи, данные записываются в один столбец, а далее номер столбца увеличивается на единицу. Старший бит данных (DBx = 1) соответствует зажженному пикселю, а младший бит данных (DBx = 0) соответствует погашенному пикселю. MSB соответствует 8-м ряду в столбце, а LSB первом ряду столбца.
б) Если номер столбца <63, то (CS1 = 1 & CS2 = 0) иначе (CS1 = 0 & CS2 = 1)
в) RS = 1 и R / W = 0 (для выбора режима записи в ЖК-дисплей)
г) EN = 1
д) задержка
е) EN = 0 (для записи данных во входной регистр)
Если в порт данных записано значение ‘0x99 ‘или ‘10011001’, то столбец принимает значение, как показано ниже.
Следующие шаги могут быть использованы для эффективного программирования:
1. При отправке данных для записи из массива, нужно указать размерность массива. Это будет указывать, сколько нужно заполнить столбцов. Если размерность будет составлять 8, то восемь столбов будут заполнены, если 7, то семь столбцов будет заполнено.
2. Условие ‘if (column >127) ‘ может быть использовано, чтобы вернуться к основной функции, если количество столбцов дисплея превышено.
3. Функция установки столбца должна быть вызвана ещё раз, если значение номера столбца не соответствует левой или правой половине ЖК-дисплея.
4. Для проверки условий 2 и 3 нужно ввести переменную, которая будет хранить номер столбца.
Используя вышеописанные функции можно отображать буквы и символы разных размеров. Для этого нужно создать свои массивы данных для разнообразных букв, символов. Подключение этого ЖК-дисплея к AT89C52 показано на схеме.
Схема подключения
Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот
МикроконтроллерAT89C521
LCD-дисплей128х64 KS01081
Электролитический конденсатор10мкФ 25В1
Подстроечный резистор20 кОм1
Резистор4.7 кОм1
Резистор10 кОм1
Кварцевый резонатор12 МГц1
Добавить все
Скачать список элементов (PDF)
Прикрепленные файлы:
- Graphics LCD.c (3 Кб)