Упражнения
Целью является составление программы, которая выполняет описанное задание.
Задание для разогрева
Для начинающих
В произвольном порядке представить на 7-сегментном индикаторе число шестнадцатеричной системы с частотой 1 Hz.
На 7-сегментном индикаторе зажечь 6 внешних сегментов с периодом в 500 мс в циклической последовательности.
LCD ekraanile teha programm, mis näitab koodile vastavat sümbolit. Koodideks on täisarvud 0-255. Igat sümbolit näidata ekraanil 1 sekund.
Показать на буквенно-цифровом LCD символ „X“, который можно двигать кнопками. Кнопка S1 двигает влево, S3 вправо и кнопка S2 меняет ряд.
На графическом LCD отобразить 10 рядный текст, который можно листать вверх-вниз с помощью кнопок S1 и S2.
Создать пользовательский интерфейс для введения текста, используя 3 кнопки. К примеру, одна кнопка делает выбор знаков, вторая - подтверждает знак и третья кнопка подтверждает конечный ввода текста. Максимальная длинна текста 10 знаков и текст после набора следует перевернуть в обратном направлении и отобразить на втором ряду. Пользоваться можно латинским алфавитом. LCD на свой выбор.
Успевающим
На графическом LCD отобразить греческие буквы. Представить следующие ряды: « Сопротивление Ω» , «∑R=∑πR²“,„π=3.141592“. Нужен исходный код библиотеки Домашней Лаборатории (с интернет страницы).
Написать вводную числа десятичной системы и модификатор двоичного кода. Использовать кнопки S3 - S1 для ввода чисел десятичной системы (S3 - сотые, S2 - десятичные, S1 - единичные) в течении 10 секунд. Например, 4 нажатия на кнопку S3 означают число 400. Начало ввода сигнала и результат двоичного числа отобразить на произвольно выбранном LCD.
Написать функцию, которая отображает на графическом LCD прямоугольник, если ширина, длина и координаты левого верхнего угла даны. Толщина линии 1 пиксель. Проконтролировать, чтобы данный прямоугольник помещался в размеры дисплея. Желательно узнать библиотеку Домашней Лаборатории.
Сделать простую игру змейку на графическом LCD дисплее. Ширина змейки 1 пиксель, толщина 5 пикселей. Змейку можно поворачивать кнопками влево и вправо. Змейка должна избегать сталкивания с углами дисплея (перед столкновением поворачивать). Возможность бонус пунктов за сбор яиц и постоянный рост змейки. Простое решение задания - это сделать змейку из букв „O“.
Написать программу для отображения различных погодных явлений на графическом LCD. В солнечную погоду – иконка солнца, в дождливую погоду – облако с дождем, в облачную погоду – просто облако, в снегопад – снежинка. Величина иконки может варьироваться, главная задача состоит в том, чтобы иконки отчетливо отличались. Иконки должны меняться при нажатии на кнопку.
Вопросы для повторения
Сколько выводов использует 7-сегментный цифровой индикатор (вместе с сегментами точек), если он соединен на прямую с микроконтроллером? Сколько нужно выводов, если цифровой индикатор управляется через драйвер A6275?
Что определяет яркость 7-сегментного цифрового индикатора? Как это регулировать, если цифровой индикатор управляется на прямую и через драйвер A6275?
Если 7-сегментный цифровой индикатор подключен к контроллеру напрямую с портом А так, что сегмент А это вывод PA0, B - PA1 … и DP - PA7, то каковы значения регистров у PORTA в случае цифр 0..9?
В чем отличие управляющего интерфейса 4-битного буквенно-цифрового LCD от 8-битного?
Какими выводами регулируется подсветка буквенно-цифрового LCD и как это делается?
Какой протокол обмена данными использует графический LCD? Объясните значения выводов обмена данными.
Как перевести десятичную систему чисел в двоичную систему чисел (в форму текста) и наоборот?
Нарисуйте все слои LCD дисплея, изготовленные по технологии twisted nematic.
Как образовываются буквы на графическом LCD?
Чем отличаются монохромный (черно-белый) и цветной LCD дисплей?