Чтение онлайн

на главную - закладки

Жанры

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

Пак Дэниэл Дж.

Шрифт:

//********************************************************************

void disable(void) {

 PORTDLC = PORTDLC | 0x04;

}

//********************************************************************

//Command: Функция посылает команду отключения на ЖКД

//********************************************************************

void command(unsigned char n) {

 status_wait;

 PORTP = n;

 PORTDLC = 0xFF;

 PORTDLC = PORTDLC & 0xFE; //
сброс записи

 enable; // сброс флага CE

 delay(10); // задержка не менее 80 нс

 disable; // включение флага CE

}

//********************************************************************

//Data: Функция пересылает данные на ЖКД

//********************************************************************

void data(unsigned char n) {

 status_wait;

 PORTP = n;

 PORTDLC = 0xFF;

 PORTDLC = PORTDLC & 0xF7; // перевести C/D на низкий уровень

 PORTDLC = PORTDLC & 0xFE; // перевести WR на низкий уровень

 PORTDLC = PORTDLC & 0xFB;

 delay(10);

 disable;

}

//********************************************************************

//Write: Функция конфигурирует порт P как выходной

//********************************************************************

void write {

 DDRP = 0xFF;

}

//********************************************************************

//Read: Функция конфигурирует порт P как входной

//********************************************************************

void read {

 DDRP = 0x00;

}

//********************************************************************

//Status_wait: Создает соответствующие задержки между командами ЖКД

//********************************************************************

void status_wait {

 char temp = 0x00;

 DDRP = 0x00;

 PORTDLC = PORTDLC | 0x0F; // сбросить все

 PORTDLC = PORTDLC & 0xFD; //
сброс флага RD

 enable;

 delay(10);

 while ((temp & 0x03) != 0x03) {

temp = PORTP;

 }

 disable;

 DDRP = 0xFF;

}

//********************************************************************

//LCD_char: Функция выводит ASCII код на экран ЖКД

//********************************************************************

void LCD_char(unsigned char n) {

 data(n-0x20);

 command(0xC0);

}

//********************************************************************

//Clearscreen: Функция очищает экран ЖКД

//********************************************************************

void Clearscreen {

 int i,j;

 Reset_cursor;

 for (i=0; i < 16; i++) for (j=0; j<16; j++) LCD_char(' ');

 Reset_cursor;

}

//********************************************************************

//Newline: Функция выводит пустую строку на экран ЖКД

//********************************************************************

void newline {

 int i;

 for (i=0; i < 16; i++)

 LCD_char(' ');

}

//********************************************************************

//Reset_cursor: Функция возвращает курсор ЖКД в начальную позицию

//********************************************************************

void Reset_cursor {

 data(0x00);

 data(0x10);

 command(0x24);

}

//********************************************************************

7.7.7. Некоторые комментарии

Система для игры в «15» использует пять кнопок вспомогательной клавиатуры, чтобы перемещать фишки: стрелку «Вверх», стрелку «Вниз», стрелку «Вправо», стрелку «Влево» и кнопку «Выбор». Кроме того, расположение фишки определяется номерами строки и столбца. Однажды сформированная, система может использоваться для игры взрослыми и детьми.

Поделиться:
Популярные книги

Измена. Тайный наследник

Лаврова Алиса
1. Тайный наследник
Фантастика:
фэнтези
5.00
рейтинг книги
Измена. Тайный наследник

Инквизитор Тьмы

Шмаков Алексей Семенович
1. Инквизитор Тьмы
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Инквизитор Тьмы

Наследник

Майерс Александр
3. Династия
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Наследник

Ротмистр Гордеев 3

Дашко Дмитрий
3. Ротмистр Гордеев
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Ротмистр Гордеев 3

(Не)нужная жена дракона

Углицкая Алина
5. Хроники Драконьей империи
Любовные романы:
любовно-фантастические романы
6.89
рейтинг книги
(Не)нужная жена дракона

Идеальный мир для Лекаря 28

Сапфир Олег
28. Лекарь
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Идеальный мир для Лекаря 28

Сыночек в награду. Подари мне любовь

Лесневская Вероника
1. Суровые отцы
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Сыночек в награду. Подари мне любовь

Инквизитор Тьмы 2

Шмаков Алексей Семенович
2. Инквизитор Тьмы
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Инквизитор Тьмы 2

Генерал Скала и ученица

Суббота Светлана
2. Генерал Скала и Лидия
Любовные романы:
любовно-фантастические романы
6.30
рейтинг книги
Генерал Скала и ученица

Искатель 1

Шиленко Сергей
1. Валинор
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Искатель 1

Сердце Дракона. Том 10

Клеванский Кирилл Сергеевич
10. Сердце дракона
Фантастика:
фэнтези
героическая фантастика
боевая фантастика
7.14
рейтинг книги
Сердце Дракона. Том 10

Печать мастера

Лисина Александра
6. Гибрид
Фантастика:
попаданцы
технофэнтези
аниме
фэнтези
6.00
рейтинг книги
Печать мастера

Выстрел на Большой Морской

Свечин Николай
4. Сыщик Его Величества
Детективы:
исторические детективы
полицейские детективы
8.64
рейтинг книги
Выстрел на Большой Морской

Кодекс Крови. Книга VII

Борзых М.
7. РОС: Кодекс Крови
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга VII