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

Здесь есть возможность читать онлайн «Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Москва, Год выпуска: 2007, ISBN: 2007, Издательство: Издательский дом «ДМК-пресс», Жанр: Компьютерное железо, Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

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

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

В книге последовательно рассматриваются все этапы создания встраиваемых систем на микроконтроллерах с применением современных технологий проектирования. Задумав эту книгу, авторы поставили перед собой задачу научить читателя искусству создания реальных устройств управления на однокристальных микроконтроллерах.
Издание содержит материал, охватывающий все вопросы проектирования, включает множество заданий для самостоятельной работы, примеры программирования, примеры аппаратных решений и эксперименты по исследованию работы различных подсистем микроконтроллеров.
Данная книга является прекрасным учебным пособием для студентов старших курсов технических университетов, которые предполагают связать свою профессиональную деятельность с проектированием и внедрением встраиваемых микропроцессорных систем. Книга также будет полезна разработчикам радиоэлектронной аппаратуры на микроконтроллерах.

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

void main(void) {

int first = 0х01; //инициализация служебных переменных для опроса

int second = 0х02; //клавиатуры

int third = 0х04;

int fourth = 0х08;

int i,j,k, count = 0;

unsigned int keypress;

char key;

int length=4;

char pin[] = {'С', '9', '6', '3'}; //задание эталонной последовательности

//символов

char code[4]; //массив для введенной пользователем

//последовательности символов

initialize_lcd() ; //инициализация ЖК индикатора

initialize_key(); //инициализация портов для клавиатуры

for (k=0; k<4; k++) //разрешает 4 раза ввести комбинацию из

{ //4 символов

count = 0;

putcommands(0x01);

lcd_print("Enter Code:");

while (count < length) //обработка 4 нажатий клавиатуры

{

for(i=0; i<=50; i++) //ожидание ввода символа

{

PORTB = 0х01; //опрос первого ряда клавиатуры

keypress = PORTB;

key = keypad(keypress, first);

if (key != 'Z') //если клавиша нажата

{

printf("%c", key);

code[count] = key; //записать очередной символ в

//массив ввода

count++; //перейти к сканированию следующего

//символа

}

}

for(i=0; i<= 50; i++) // ожидание ввода символа

{

PORTB = 0х02; //опрос второго ряда клавиатуры

keypress = PORTB;

key = keypad(keypress, second);

if (key != 'Z') {

printf("%с", key);

code[count] = key; //записать очередной символ в

//массив ввода

count++; //перейти к сканированию следующего

//символа

}

}

for(i=0; i<= 50; i++) //ожидание ввода символа

{

PORTB = 0х04; //опрос третьего ряда клавиатуры

keypress = PORTB;

key = keypad(keypress, third);

if (key != 'Z') {

printf("%c", key);

code[count] = key; //записать очередной символ в

//массив ввода

count++; //перейти к сканированию следующего

//символа

}

}

for(i=0; i<= 50; i++) //ожидание ввода символа

{

PORTB = 0х08; //опрос четвертого ряда клавиатуры

keypress = PORTB;

key = keypad(keypress, fourth);

if (key != 'Z') {

printf("%c", key);

code[count] = key; //записать очередной символ в

//массив ввода

count++; //перейти к сканированию следующего

//символа

}

}

} //очередные 4 символа введены, можно сверять с эталонными

/*Проверка соответствия кода на эталонный*/

j = 0;

for(i=0;i<3;++i) //проверка по каждому символу эталонной

//последовательности

{

if(pin[i]==code[i]) //очередной символ правильный

{

j++;

} else //очередной символ неправильный

{

j--;

}

}

if (j == (length - 1)) //если j=3, то все символы введены правильно

{

putcommands(0x01);

lcd_print("Access Granted");

}

else //символы введены неправильно

{

putcommands(0x01);

lcd_print("Access Denied");

}

}

putcommands(0x01);

lcd_print(" Goodbye ! "); //конец попыток ввода

}

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

/*Перечень функций, которые использованы в этой программе */

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

/* Функции, программный код которых был приведен ранее по тексту главы*/

char which_key(unsigned int keypress);

void delay_5ms(void);

void delay_100us(void);

void initialize_lcd(void);

void putchars(unsigned char с);

void putcommands(unsigned char d);

void lcdprint(char *string);

char keypad(unsigned int keypress, int row);

//Функция, которая приведена ниже

void initialize_key(void)

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

/* Функция initialize_key устанавливает направление передачи линий портов */

/* для обслуживания клавиатуры */

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

void initialize_key(void) {

DDRB = 0x0F; //линии PORTB[0]…PORTB[3] на вывод

//линии PORTB[4]…PORTB[7] на ввод

PORTB = 0х00; //четыре младших линии порта PORTB в 0

}

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

5.9. Интерфейс МК с аналоговыми датчиками

Датчик — это устройство, которое преобразует некоторую физическую величину в электрический сигнал. Существуют датчики температуры, давления, ускорения, напряженности электрического поля, механического момента, и т.д. В главе 2 мы рассмотрели пример метеостанции, в которой выходы датчиков, поставляющих информацию о погоде, были подключены к МК семейства 68HC12. В том примере мы по умолчанию предположили, что датчики допускают непосредственное подключение ко входам МК. Однако на практике это условие почти всегда не выполняется. Поэтому необходимо разрабатывать дополнительную схему сопряжения, которая, в общем случае, состоит из усилителя со смещением уровня и фильтра. Подробное изучение способов преобразования аналоговых сигналов выходит за рамки данного раздела. Читатель может познакомиться с ними по книгам, приведенным в параграфе дополнительной литературы для данной главы. Мы остановимся только на общем рассмотрении масштабирования сигнала с выхода датчика.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

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

Представляем Вашему вниманию похожие книги на «Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Ліза Фельдман Барретт - 7 1/2 уроків про мозок
Ліза Фельдман Барретт
Отзывы о книге «Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С»

Обсуждение, отзывы о книге «Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x