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

 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; ip; i++) PWMDTY0--;

  }

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

  ATD0CLT5 = 0x04;

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

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

  if ((int)sensoravg 80) {

   PWMDTY1 = PWMDTY1 + 20;

   delay2;

   for (i=0; ip; i++) PWMDTY1--;

  }

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

  ATD0CLT5 = 0x04;

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

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

  if ((int)sensoravg 80) {

   PWMDTY2 = PWMDTY2 + 0;

   delay2;

   for (i=0; ip; i++) PWMDTY2--;

  }

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

  ATD0CLT5 = 0x04;

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

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

  if ((int)sensoravg 80) {

   PWMDTY7 = PWMDTY7 + 20;

   delay2;

   for (i=0; ip; i++) PWMDTY7--;

  }

 } //конец while

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

 while (PWMDTY0 80) {

  PWMDTY0--;

  PWMDTY1--;

  PWMDTY2--;

  PWMDTY3--;

  delay1;

 }

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

 PWME = 0x00;

}

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

<p>7.5.6. Некоторые комментарии </p>

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

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

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

Перейти на страницу:
Нет соединения с сервером, попробуйте зайти чуть позже