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

Тут можно читать онлайн Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Издательский дом «ДМК-пресс», год 2007. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом «ДМК-пресс»
  • Год:
    2007
  • Город:
    Москва
  • ISBN:
    5-9706-0034-2
  • Рейтинг:
    4/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

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

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

В книге последовательно рассматриваются все этапы создания встраиваемых систем на микроконтроллерах с применением современных технологий проектирования. Задумав эту книгу, авторы поставили перед собой задачу научить читателя искусству создания реальных устройств управления на однокристальных микроконтроллерах.

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

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

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

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - читать книгу онлайн бесплатно, автор Стивен Барретт
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать
Рис 74Пара излучательприемник ИКлокатор Резистор R e ограничивает ток - фото 257

Рис. 7.4.Пара излучатель-приемник — ИК-локатор

Резистор (R e) ограничивает ток ИК излучателя на уровне номинального значения (I e). Ток приемника формирует на резисторе R dвыходное напряжение приемника (V out)

Датчики Холла, как и показывает их название, используют эффект Холла, чтобы генерировать напряжение, пропорциональное напряженности обнаруженного магнитного поля. На рынке имеются датчики Холла двух типов: (1) переключатели и (2) линейные датчики. Датчик переключающегося типа, обнаружив присутствие магнитного поля, фиксируется во включенном состоянии. Он остается в этом состоянии, даже если магнитное поле исчезает.

Линейный датчик формирует аналоговое выходное напряжение, пропорциональное измеряемому магнитному потоку. И именно такой прибор мы будем использовать для обнаружения «мин».

Рис 75Датчик Холла HAL114 компании Micronas Датчики Холла поставляются - фото 258

Рис. 7.5.Датчик Холла HAL114 компании Micronas

Датчики Холла поставляются несколькими изготовителями. Мы выбрали простой датчик с тремя выводами HAL114 фирмы Micronas, схема включения которого содержит два резистора R, RL и конденсатор C, как показано на рис. 7.5. Как и ранее, график зависимости выходного напряжения от расстояния до стенки лабиринта может быть получен экспериментально. Выходной сигнал с датчика подается на канал АЦП микроконтроллера 68HC12. Полная схема интерфейса связи МК 68HC12 с аппаратными средствами робота показана на рис. 7.6. Закончив на этом краткий обзор аппаратных средств, мы перейдем к обзору программного обеспечения робота.

Рис 76Интерфейс между аппаратными средствами робота и 68HC12 714 - фото 259

Рис. 7.6.Интерфейс между аппаратными средствами робота и 68HC12

7.1.4. Структура программы и блок-схема алгоритма

Рабочая программа для этого проекта разработана Томом Шеи, бывшим студентом университета штата Вайоминг, с помощью компилятора ImageCraft ICC12. Прежде чем представить полный текст программы, рассмотрим структуру основной программы и блок-схему ее алгоритма, представленные на рис. 7.7. Мы просим читателя, самостоятельно разработать блок-схему алгоритма для каждой из функций в качестве домашней работы (см. задание 12).

а Структура программы б Блоксхема алгоритма UML Рис 77К программе - фото 260

а) Структура программы

б Блоксхема алгоритма UML Рис 77К программе управления роботом - фото 261

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

Рис. 7.7.К программе управления роботом, движущимся вдоль стенок лабиринта

7.1.5. Программный код

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

/*имя файла: robot.c */

/* Система управления роботом, движущимся в лабиринте: это система */

/* состоящих из излучателя и приемника, чтобы определять свое положение*/

/* относительно стенок лабиринта. */

/* опорного напряжения, то стенка находится в непосредственной близости*/

/* от робота.Основываясь на информации, получаемой от пяти датчиков,*/

/* робот может определять, какое направление дальнейшего движения */

/* избрать, чтобы избежать столкновения со стенками лабиринта. */

/* Датчик Холла позволяет роботу обнаружить магниты или "скрытые мины",*/

/* установленные под полом лабиринта. Робот имеет также ЖК дисплей */

/* для сообщения информации пользователю. Программа использует метод*/

/* полинга для считывания результатов АЦП.Сигнал модуля ШИМ */

/* управляет драйвером двигателей колес робота. */

/*Автор: Томас Шеи. Дата создания: 18 октября 2002 */

/*Последняя редакция: 4 декабря 2002 */

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

/* Включенные файлы*/

#include <912b32.h>

#include

/*Пороги датчиков были определены экспериментально*/

#define opto_threshold 0x50 /* порог оптического датчика */

#define hes_threshold 0x80 /* порог датчика Холла */

#define forward 0

#define half_left 1

#define half_right 2

#define left_turn 3

#define right_turn 4

#define back_up 5

/*глобальные переменные*/

unsigned int i=0,j=0; /*переменные для программной задержки */

unsigned char sens[6]={0, 0, 0, 0, 0, 0};/*массив результатов АЦП */

/*прототипы функций*/

void init_adc(void); /*инициализация АЦП */

void read_adc(void); /*считывание значений АЦП */

void decision(void); /*передача решения о повороте, основанного на */

/*данных АЦП* /

void init_pwm(void); /*инициализация ШИМ */

void pwm_motors(const char a); */активация ШИМ для пересылки */

void lcd_init(void); /* инициализация дисплея */

int putchar(char c); /*вывод символа на дисплей */

int putcommand(char с); /*вывод команды на дисплей */

void delay_25(void); /*подпрограмма задержки на 2,5 с */

void lcd_print(char *string); /*вывод строки на ЖК дисплей */

void main() {

asm(".area vectors(abs)\n" /*инициализация вектора сброса МК */

" org 0xFFF8\n"

" .word 0x8000, 0x8000, 0x8000, 0x8000\n"

".text");

lcd_init(); /*инициализация ЖК дисплея */

lcd_print("LCD initialized");

void delay_25(void); /* задержки на 2,5 с */

init_adc(); /*инициализация АЦП */

lcd_print("ADC initialized");

void delay_25(void); /* задержки на 2,5 с */

init_pwm(); /*инициализация ШИМ */

lcd_print("PWM initialized");

void delay_25(void); /* задержки на 2,5 с */

while(1) / *непрерывный цикл */

{

read_adc(); /* считать текущее значение из АЦП */

decision(); /* принять решение о направлении движения */

}

} /*конец программы main*/

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

/*initialize_adc: инициализация АЦП контроллера 68HC12 */

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

void init_adc() {

ATDCTL2 = 0x80; /*Установить бит ADPU для подачи питания на АЦП */

ATDCTL3 = 0x00;

ATDCTL4 = 0x7F; /* частоту P_CLK установить на 125 кГц */

/* время преобразования: 32 ATD CLK, */

/*1 считывание каждые 256 мкс /*

for(i=0; i<67; i++) /*задержка 100 мкс при 8 МГц E_CLK */

{

;

}

}

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

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

/*read_adc: считывание результатов из АЦП */

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

void read_adc() {

ATDCTL5 = 0x50; /*Установить АЦП на режим многоканального,*/

/* преобразования 8 каналов */

while((ATDSTAT & 0x8000) == 0)/* проверка бита SCF для окончания */

/*преобразования */

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

Интервал:

Закладка:

Сделать


Стивен Барретт читать все книги автора по порядку

Стивен Барретт - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




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


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


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x