Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 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 с применением языка С - читать книгу онлайн бесплатно, автор Стивен Барретт
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать
Рис 726Блоксхема алгоритма программы парящего робота 755 Программный - фото 281

Рис. 7.26.Блок-схема алгоритма программы парящего робота

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

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

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

// filename: flying.с

// Описание программы: Эта программа запускает четыре двигателя и затем

// управляет скоростью вращения каждого из них. После взлета робота

// программа проверяет каждый из датчиков для определения положения

// робота. При обнаружении преграды или крыши, скорости вращения двигателей

// корректируются, чтобы обеспечить правильное направление движения.

//

// Авторы: Джоэль Перлин, Даниэль Пак, Стив Барретт

// Дата создания: 27 июля 2004

// используемая память: программа - 0x1000, данные - 0x3000 и

// стек - 0x4000

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

#include

#include "hcs12dp256.h"

#pragma abs_address 0x3000

unsigned int count1; //счетчики переменных

unsigned int count2;

unsigned int sensor;

char sensoravg; //сохраняют данные датчиков в виде 8-разрядных чисел

volatile unsigned p; // текущий счетчик

#pragma end_abs_address

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

void main(void) {

//Инициализация робота

PWME = 0x00; //запрет ШИМ

DDRA = 0xFF; //конфигурирование портов A и В как выходных

DDRB = 0xFF;

PORTA = 0xAA; //подача питания на датчики

PORTB = 0xFF; //индикация режима программы на линейке светодиодов

//Инициализация модуля ATD

PORTAD1 = 0x00; //конфигурирование портов как входных

ATD1CTL2 = 0xC2; //инициализация ATD с установкой флагов

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

ATD1CTL3 = 0x00; // функция установки ATD

ATD1CTL4 = 0x80; //установить 8-разрядный режим

PORTB = 0xFE; //показать состояние программы на линейке

// светодиодов

// Инициализация режима входного захвата

TSCR1 = 0x80; //включение таймера (нормальный режим)

TSCR2 = 0x80; //установить период переполнения счетчика временной

// базы 8.192 мс, коэффициент деления = 1

TIOS = 0x00; //установить каналы таймера в режим входного захвата

TMSK1 = 0xE0;//биты разрешения прерывания по событиям на линиях [7:5]

TFLG1 = 0xE0; //очистить флаги прерываний TFLG1

PORTB = 0xFC; // показать состояние программы на линейке светодиодов

// инициализация ШИМ

PWMCTL = 0x00; //установить 8-разрядный режим

PWMCAE = 0x10; //установить фронтовую ШИМ

PWMPOL = 0x5F; //выбрать активным высокий логический уровень

//назначить режим ШИМ для каналов 0,1,2,3,4 и 6

PWMCLK = 0x50; //каналы 0,1,4 тактируются CLOCK_A и каналы

//2,3,6 - CLOCK_В

PWMSCLA = 0x20; //период A 0x20 = 4.1 мс

PWMSCLB = 0x04; //период B 0x02 = 255 мкс, выбрать

// наибольший коэффициент заполнения для всех каналов

PWMPER0 = 255;

PWMPER1 = 255;

PWMPER2 = 255;

PWMPER3 = 255;

//Запуск двигателей

PWME = PWME | 0x5F; // разрешения режима ШИМ для каналов 0,1,2,3,4 и 5

PWMDTY0 = 80; // установить коэффициенты заполнения

// для каналов 0,1,2 и 3

PWMDTY1 = 80;

PWMDTY2 = 80;

PWMDTY3 = 80;

// Взлет

while (PWMTY0 < 200) {

PWMDTY0 = PWMDTY0 + 1;

PWMDTY1 =PWMDTY1 + 1;

PWMDTY2 = PWMDTY2 + 1;

PWMDTY3 = PWMDTY3 + 1;

}

P = 20;

// установить коэффициенты заполнения для двигателей на режим полета

while (battery == 1) //проверить включение батареи

{

// двигатель 1

ATD0CLT5 = 0x04; //режим оцифровки многоканальный

while ((ATD0STAT0 & 0x80) == 0);

sensoravg = ATD0DR4H; //установить PAD00 для датчика 1

if ((int)sensoravg > 80) {

PWMDTY0 = PWMDTY0 + 20;

delay2();

for (i=0; i

}

// двигатель 2

ATD0CLT5 = 0x04;

while ((ATD0STAT0 & 0x80) == 0);

sensoravg = ATD0DR5H; //установить PAD00 для датчика 2

if ((int)sensoravg > 80) {

PWMDTY1 = PWMDTY1 + 20;

delay2();

for (i=0; i

}

// двигатель 3

ATD0CLT5 = 0x04;

while ((ATD0STAT0 & 0x80) == 0);

sensoravg = ATD0DR6H; //установить PAD00 для датчика 3

if ((int)sensoravg > 80) {

PWMDTY2 = PWMDTY2 + 0;

delay2();

for (i=0; i

}

// двигатель 4

ATD0CLT5 = 0x04;

while ((ATD0STAT0 & 0x80) == 0);

sensoravg = ATD0DR7H; //установить PAD00 для датчика 4

if ((int)sensoravg > 80) {

PWMDTY7 = PWMDTY7 + 20;

delay2();

for (i=0; i

}

} //конец while

// снизить скорость двигателей для посадки

while (PWMDTY0 > 80) {

PWMDTY0--;

PWMDTY1--;

PWMDTY2--;

PWMDTY3--;

delay1();

}

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

PWME = 0x00;

}

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

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

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

7.6. Система защиты компьютера, основанная на нечеткой логике

7.6.1. Описание проекта

В этом разделе описана основанная на нечеткой логике система защиты от вторжения, которая может защитить ваш компьютер от несанкционированного внешнего доступа. В частности, рассматриваемая система может с помощью встроенных в МК 68HC12/HCS12 функций поддержки нечеткой логики обнаруживать внедрение постороннего гипертекста (HTTP) при туннелировании информации по сетевой шине компьютера. Туннелирование применяется для легальной установки сеансов связи между ведущим компьютером внутри компьютерной сети и компьютером, внешним по отношению к этой сети. «Злоумышленник» использует такой внешний компьютер, чтобы установить тайный сеанс связи, формируя несанкционированные сообщения внутри пакетов обычного протокола HTTP. Чтобы предотвратить такие действия, общество защиты компьютерной информации разработало в прошедшем десятилетии ряд информационных систем. Цель описываемой микроконтроллерной системы защиты состоит не в том, чтобы заменить существующие коммерческие системы, а в том, чтобы помогать таким системам, оценивая присутствие в данных сетевого трафика внедренных посторонних HTTP сообщений.

Цель данного проекта состоит в создании переносной микроконтроллерной системы для анализа туннелирования HTTP. Эта система должна обнаруживать следующие злонамеренные и несанкционированные действия при туннелирования HTTP:

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

Интервал:

Закладка:

Сделать


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

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




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


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


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

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