Читаем Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С полностью

3. Выдать на порт PORT P байт данных (код символа или команда управления);

4. Перевести линию E в неактивное состояние (логический 0).

В процессе создания на основе этого алгоритма программы управления следует учесть все перечисленные ранее задержки между сигналами.

Программа управления ЖК индикатором. Структура программы управления символьным ЖК индикатором представлена на рис. 5.13,а. Программа включает коллекцию функций, каждая из которых выполняет законченное смысловое действие. Разбиение задачи на отдельные функции — искусство разработчика. От выбранного набора функций и способов передачи параметров между ними зависит число возможных ошибок при последующем использовании этих функций в прикладной программе и компактность файла исполняемых кодов.

а) Набор функций управления

б) Блок-схема алгоритма инициализации

Рис. 5.13. Программное обеспечение для управления цифро-буквенным ЖК индикатором


Блок-схема функции инициализации дисплея представлена на рис. 5.13,б. Она реализует алгоритм начальной установки дисплея, который разработан в соответствии с техническими рекомендациями производителя.

Ниже приведен текст программы на Си для всех функций рис. 5.13,а.

/*------------------------------------------------------------------*/

/*filename: lcd.c                                                   */

/*содержит программный код для шести функций управления ЖК дисплеем */

/*------------------------------------------------------------------*/


/*-----------------------------------------------------------------------*/

/* Функция initialize_lcd производит начальную установку режимов дисплея */

/*-----------------------------------------------------------------------*/

void initialize_lcd(void) {

 delay_5ms();

 delay_5ms();

 delay_5ms(); //задержка 15 мс

 putcommands(0x38); //команда установки формата интерфейса обмена

 delay_5ms();

 putcommands(0x38);

 delay_l00us();

 putcommands(0x38);

 putcommands(0x38) ;

 putcommands(0x0C);

 putcommands(0x01); //очистить дисплей

 putcommands(0x06); //установить режим ввода с автоматическим

                    //увеличением адреса

                    //символа на 1

 putcommands(0x0E); //включить дисплей, режим курсора мигающий

 putcommands(0x02); //установить курсор на первое знакоместо

}


/*---------------------------------------------------------------------*/

/* Функция putchars производит запись одного кода символа в контроллер */

/*дисплея                                                              */

/*---------------------------------------------------------------------*/

void putchars(unsigned char с) {

 DDRP = 0xFF; //установить порт PORT P на вывод

 DDRDLC = DDRDLC | 0x0C; //установить разряды 2 и 3 порта PORT DLC на

                         //вывод

 PORTP = с; //Выдать в порт PORT P код символа с

 PORTDLC = PORTDLC | 0x08; //установить линию RS в 1

 PORTDLC = PORTDLC | 0x04; //установить линию E в 1

 PORTDLC = 0; //установить E и RS в 0

 delay_5ms(); //задержка 5 мс

}


/*-----------------------------------------------------------------------*/

/*Функция putcommands производит запись одного кода команды в контроллер */

/*дисплея                                                                */

Перейти на страницу:

Похожие книги

C# 4.0: полное руководство
C# 4.0: полное руководство

В этом полном руководстве по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все основные средства языка: типы данных, операторы, управляющие операторы, классы, интерфейсы, методы, делегаты, индексаторы, события, указатели, обобщения, коллекции, основные библиотеки классов, средства многопоточного программирования и директивы препроцессора. Подробно описаны новые возможности C#, в том числе PLINQ, библиотека TPL, динамический тип данных, а также именованные и необязательные аргументы. Это справочное пособие снабжено массой полезных советов авторитетного автора и сотнями примеров программ с комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки. Книга рассчитана на широкий круг читателей, интересующихся программированием на C#.Введите сюда краткую аннотацию

Герберт Шилдт

Программирование, программы, базы данных
Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьёрн Страуструп , Ирина Сергеевна Козлова , Бьерн Страуструп , Валерий Федорович Альмухаметов

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT