Программа Сервисный Центр
0

Подключение графического индикатора (KS0108) к PIC микроконтроллеру. Часть 1 - Теория


Использование графического индикатора кардинально меняет внешний вид вашего проекта. Он предоставляет больше свободы при отображении данных, чем символьный ЖК индикатор на базе контроллера HD44780. В статье мы рассмотрим как подключить графический индикатор на контроллере KS0108 (или совместимом) к микроконтроллеру PIC производства компании Microchip. Статья разделена на несколько частей, в которых мы последовательно рассмотрим аппаратную и программную части проекта.
Подключение графического индикатора (KS0108) к PIC микроконтроллеру. Часть 1 - Теория
Выбор микроконтроллера PIC16F887 связан с тем, что приложения с графическим ЖКИ требуют достаточно много ресурсов микроконтроллера (линии ввода/вывода, встроенная память) и данный микроконтроллер имеет 36 линий ввода/вывода и 14 КБайт Flash-памяти. Графический ЖКИ, который используется в нашем проекте – это модуль WDG0151-TMI монохромного индикатора производства компании Winstar с разрешением 128×64 точки. Он выполнен на базе двух контроллеров NT7108C и NT7107C, которые совместимы с контроллерами Samsung KS0108B и KS0107B. KS0108B – это 64 канальный точечный драйвер ЖК сегментов. Модуль WDG0151-TMI содержит два таких контроллера, чтобы обеспечить управление 128 сегментами. С другой стороны контроллер KS0107B (NT7107C) – это 64 канальный драйвер общих линий индикатора, который генерирует временные сигналы для управления двумя сегментными драйверами. Это очень распространенные и хорошо зарекомендовавшие себя контроллеры, которые применяются и в индикаторах других производителей. Блок-схема модуля Winstar WDG0151-TMI
Подключение графического индикатора (KS0108) к PIC микроконтроллеру. Часть 1 - Теория

Нажмите для увеличения Контроллер NT7107C управляет 64 общими линиями дисплея (COM1 – COM64). Первый контроллер NT7108C управляет левой половиной сегментов (SEG1 – SEG64) дисплея, второй NT7108C – правой половиной сегментов (SEG65 – SEG128). Доступ к двум половинам дисплея осуществляется индивидуально посредством сигнальных линий Chip Select (CS1, CS2). Каждая половина дисплея представлена 7 горизонтальными страницами памяти, каждая высотой 8 бит (1 Байт).
Подключение графического индикатора (KS0108) к PIC микроконтроллеру. Часть 1 - Теория
Начиная с 0 страницы в левoй половине (/CS1=0), если вы передадите 1 байт данных, они будут отображены в первом столбце страницы 0. Если повторить данный процесс 64 раза и затем переключиться на вторую половину дисплея и повторить операции, пока не будет достигнута 128 позиция, мы получим отображение первых 8 линий на дисплее. Для отображения следующих 8 линий необходимо повторить эти операции, но сменив адрес страницы памяти. Общее количество байт, необходимое для отображения одного кадра (128×64 точки), в нашем случае равно 2×64×8 = 1024. Модуль дисплея Winstar WDG0151-TMI GLCD имеет встроенный генератор отрицательного напряжения для управления контрастностью. Потенциометр регулировки контрастности (обычно 10 кОм) подключается между выводами VEE и VCC. Расположение линий ввода/вывода индикатора не стандартизировано, поэтому необходимо обратиться к технической документации на дисплей при подключении его к микроконтроллеру. В общем случае количество выводов у графического индикатора 20. Первые два вывода – выбор контроллера левой или правой части индикатора, активный уровень – низкий, однако существуют индикаторы с высоким активным уровнем (поэтому и понадобится еще раз техническое описание используемого индикатора от производителя).  С помощью вывода 6 индикатора D/I (Data/Instruction) пользователь указывает, что поступает на шину данных индикатора: данные или команды (инструкции). Управляющие сигналы R/W и E имеют такое же назначение, как и в символьных индикаторах на контроллере HD44780. Назначение выводов модуля ЖКИ WDG0151-TMI
Номер
вывода
Обозначение Уровень Описание
1 /CS1 Низкий Выбор сегментов 1 – 64
2 /CS2 Низкий Выбор сегментов 65 – 128
3 Vss 0 В Общий («земля»)
4 VDD 5.0 В Напряжение питания
5 Vo переменный Подстройка контрастности
6 D/I или RS Низкий/Высокий Высокий: данные;
Низкий: инструкции
7 R/W Низкий/Высокий Высокий: чтение данных;
Низкий: запись данных;
8 E Высокий Разрешение записи/чтения
9 – 16 D0 – D7 Низкий/Высокий Шина данных
17 RST Низкий Сброс модуля ЖКИ
18 VEE   Выход отрицательного
напряжения
19 A   Анод подсветки дисплея
20 K   Катод подсветки дисплея
Контроллеры KS0107B и KS0108B не имеют своего знакогенератора, поэтому его функции будет выполнять программа микроконтроллера. Сам ЖКИ поддерживает ряд инструкций, которые приведены ниже в таблице. Необходимо помнить, что вывод RS (D/I) должен быть в высоком состоянии при операциях чтения/записи данных и оставаться в низком состоянии, когда передаются инструкции.
Команда RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 Назначение
Дисплей
ВКЛ/ВЫКЛ
L L L L H H H H H L/H Управляет вкл/выкл отображения.
Не влияет на внутреннее состояние
и данные ОЗУ изображения.
L: ВЫКЛ
H: ВКЛ
Установить
адрес
L L L H Адрес Y (0 ~ 63) Заносит адрес Y в счетчик адреса Y
Установить
страницу
(адрес Х)
L L H L H H H Страница (0 ~ 7) Заносит адрес X в регистр адреса X
Начальная
строка
отображения
L L H H Начальная строка
отображения (0 ~ 63)
Указывает данные ОЗУ изображения
отображаемые вверху экрана
Чтение
состояния
L H BUSY L ON/OFF RESET L L L L Чтение состояния.
BUSY
L: Готовность
H: Выполняется команда ON/OFF
L: Отображение ВКЛ
H: Отображение ВЫКЛ
RESET
L: Нормальный режим
H: Сброс
Запись
данных
изображения
H L Данные для записи Записывает данные (DB0:7) в ОЗУ
данных изображения.
После записи инструкции, адрес Y
увеличивается на 1 автоматически.
Чтение
данных
изображения
H H Данные для чтения Читает данные (DB0:7) из ОЗУ данных
изображения на шину данных

  Часть 2 - Схема, программа микроконтроллера для инициализации индикатораНа английском языке: Interfacing a KS0108 based Graphics LCD. Part 1 - Theory

По материалам сайта www.rlocman.ru

Также рекомендуем:

 
 
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.
 
Обратная связь

Наши партнеры

 

Опросы

Есть ли справедливость в жизни?
Конечно есть, уверен!
Вроде как должна быть, но...
Затрудняюсь ответить...
Какая справедливость? О чем Вы?
Эх.., нет правды на свете!

 

Облако тегов

Требуется для просмотраFlash Player 9 или выше.

Показать все теги
 

Календарь публикаций

«    Декабрь 2016    »
ПнВтСрЧтПтСбВс
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
 

Архив новостей

Декабрь 2016 (1)
Ноябрь 2016 (42)
Октябрь 2016 (34)
Сентябрь 2016 (38)
Август 2016 (34)
Июль 2016 (36)
 
Наверх Сервисные мануалы Даташиты Ремонт LCD, ЖК телевизоров LG Samsung Скрипт программы "Сервисный центр"