Статистика | |
Онлайн лист | |
Онлайн всего: 1 Гостей: 1 Пользователей: 0 | |
Главная » Статьи » Микроконтроллеры |
Прогрессбар на LCD с HD44780 контроллером
В предыдущей статье я описал способ подключения LCD с контроллером HD44780 к микроконтроллеру Atmega16 и показал как на него выводить отдельные символы и слова. В этой статье я приведу пример простой анимации. Прежде чем перейду непосредственно к сути, хочу обратить внимание на один момент. За годы практики ремонта различного электронного оборудования, я усвоил один момент, когда перед тобой совершенно незнакомая деталь, прежде чем с ней чтото делать, необходимо найти на нее Даташит (DataSheet). Для тех кто еще не знает что это - это справочный листок, а порой и целая книга, с параметрами, описанием, возможными режимами работы, распиновкой и схемой включения и т.д. конкретной детали. Хочу сразу предупредить, что подавляющее большинство даташитов на английском языке, но изучив несколько штук начинаешь быстро и легко ориентироваться и находить необходимую информацию. Так вот к чему это все. В Даташите на контроллер HD44780 есть таблица кодов символов, записанных в память контролера: Таблица кодов символов контроллера Epson, набор "Russian" Перед нами все символы записанные в память контроллера и к которым у нас есть доступ. Первое что можно увидеть это то что кроме английских и русских букв, цифр, нам доступны спецсимволы, которые могут оказаться весьма полезны нам. Пользоваться таблицей очень просто.Например, хочу я вывести на экран значок колокольчика, для это в коде программы мне достаточно написать команду lcd_putchar(0xED). В скобках указан адрес символа в формате 0хУХ, где У - номер столбца, а Х - номер строки, на пересечении которых расположен инетересующий символ. С таблице разобрались теперь можно перейти к практике и посмотреть на примере что же можно получить с помощью символов. Пример 1Бегающий прямоугольник. В качестве примера будет использоваться черный прямоугольник (0xFF), который будет пробегать поочередно 16 ячеек верхней строки, а затем 16 ячеек нижней. В приведенном ниже примере полный код примера, как он работает подробно описано в комментариях: #include <mega16.h> // Подключаем библиотеку микроконтроллера
Результатом выполнения программы будет бесконечно бегающий прямоугольник: Пример 2Прогрессбар Прогрессбар делается по тому же принципу что и бегающий прямоугольник, нужно просто немного упростить программу: просто нужно убрать очистку экрана после смещения прямоугольника на одну позицию:
Результат выполнения кода:
| |
| |
Категория: Микроконтроллеры | Добавил: Naprisar (02.04.2012) | |
Просмотров: 6561 | Комментарии: 5
| Теги: |
Всего комментариев: 5 | ||||||
| ||||||