На рис.. представлен внешний вид и электрическая схема подключения графического экрана. Установлен регулятор контрастности подсветки R6. Имеется возможность отключения подсветки посредством переключателя SW10.7. Шина данных подключена к порту С контроллера, а управление осуществляется через группу выводов порта D.
Меры безопасности
Включение и выключение стенда проводить, строго в соответствии с указаниями в лабораторной работе №1.
Изменение аппаратной конфигурации (переключателей) проводить строго при выключенном питании платы.
Не допускать замыкания открытых цепей платы внешними предметами.
Без необходимости не менять положение «джамперов» устройства.
Задание. Методика выполнения задания
- Изучить и разобраться в теоретической части лабораторной работы. Представить в отчет основные положения.
- На основе примеров функций и файлов библиотеки создать программу, выполняющую заданную вариантом функцию
- Запустить и отладить программу в Proteus и на средствах стенда. Убедиться в корректности работы программ. При необходимости провести коммутацию портов МК в соответствии с требованиями программы.
- Оформить отчет.
Требование к содержанию и оформлению отчета
Отчет должен быть оформлен в соответствие с требованиями кафедры и включать в себя необходимые описания, листинги программ и скриншоты экранов по каждому пункту задания (конкретизировано в указаниях по выполнению каждого пункта). В конце работы должны быть сделаны общие выводы.
Варианты заданий.
№ варианта | Действие GLCD при нажатии кнопки | Примечание |
Управление квадратом размером 4х4 с помощью кнопок влево, вправо, вверх, вниз. | ||
Периодическая смена графического изображения (bmp файлов) | 2-3 произвольных изображения | |
«бегущий» снизу вверх текст | Любой шрифт | |
«Летающие» шарики | 2 шарика | |
Отображение значения кода АЦП в виде столбиковой диаграммы | ||
Отображение значения кода АЦП в виде аналогового (стрелочного) спидометра | ||
Анимация (наподобие GIF файла) | ||
Реализация примера собственного шрифта увеличенного размера | ||
Определение минимальных и максимальных задержек, допустимых при отработке временных диаграмм обращения к GLCD |
Контрольные вопросы
- Принцип работы графических LCD дисплеев?
- Сколько видеопамяти используется в дисплее 128х64?
- Сколько контроллеров KS0108 используется в GLCD 128х64 и почему?
- Какой интерфейс взаимодействия используется в GLCD 128х64?
- Как организована видеопамять дисплея?
- Как вычислить координаты байта и бита для установки или сброса точки экрана?
- Назовите основные команды контроллера GLCD.
- Имеется ли в контроллере GLCD специальная команда сдвига экрана? В чем особенность ее выполнения?
- Поясните способ обращения управляющего контроллера к GLCD при выполнении операций чтения/записи.
- Можно ли писать и читать данные одновременно в (из) несколько контроллеров KS0108 одного дисплея?
- Для чего используются сигналы CS в GLCD 128х64?
- Как настраивается библиотека GLCD, используемая в ходе выполнения работы?
- Перечислите возможности использованной графической библиотеки.
- Как в библиотеке реализовано формирование временных диаграмм обращения к GLCD?
- Поясните назначение функций и алгоритм функционирования в шаблоне программы (из теоретического материала)
- Объясните назначение и способ работы (по коду) следующих функций библиотеки GLCD:
- void LCD12864_Com(unsigned char cmd);
- void LCD12864_Data(unsigned char data);
- void LCD12864_Clr();
- void LCD12864_GotoXY(unsigned char x, unsigned char y);
- void LCD12864_Init();
- void LCD12864_Point(unsigned char x, unsigned char y);
- int LCD12864_abs(int x);
- void LCD12864_Line(unsigned char x1, unsigned char y1, unsigned char x2, unsigned char y2);
- void LCD12864_Rect(unsigned char x1, unsigned char y1, unsigned char x2, unsigned char y2);
- void LCD12864_Ellipse(unsigned char x0, unsigned char y0, unsigned char radius);
- void LCD12864_Char(unsigned char x0, unsigned char y0, unsigned char code);
- void LCD12864_String(unsigned char x0,unsigned char y0,char* buffer, unsigned char count);
Литература.
- http://www.gaw.ru/html.cgi/txt/doc/micros/avr/arh/start.htm
- http://avr.ru/docs/books/avr
- http://samou4ka.net/page/rabota-s-wg12864c
- http://embedded-lab.com/blog/?p=2398
- http://www.mikroe.com/pdf/glcd_128x64_specs.pdf