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

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

Жанры

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

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

Шрифт:

//PT4 реле магнитофон # 1 выход на реле магнитофон # 1 высокий уро-

//вень - импульс 5 мс

//PT4 реле магнитофон # 2 выход на реле магнитофон # 2 высокий уро-

//вень - импульс 5 мс

//PT6 реле ДК выход на реле ДК высокий уровень //- импульс 5 мс

//PT7 высокий уровень - импульс 10 мс для подачи питания на оптроны

//светодиодов и усилитель

//Подача питания (от
сети или от источника 5 В):

//Конфигурация портов:

//1. Порт A: конфигурирован как входной, отжатый переключатель - запрет

//2. Порт B: конфигурирован как входной, отжатый переключатель - разрешение

//3. Порт P: конфигурирован как выходной, все линии в 1

//4. Порт T: конфигурирован как выходной, все линии в 0

//5. Установка "RELAY-RESET" (PTO) импульсом высокого состояния 5 мс

//6. Установка "RELAY-CD" (PT2) импульсом высокого состояния 5 мс

//7. Установка "WHICH-INPUT" позиция сохранения = "CD"

//8. Цикл PP1-РР6 (устанавливаются в низкое состояние) светодиоды

// показывают , что контроллер работает

//9. Переход к последовательности "PREAMP ON"

//

//Логика работы :

//Последовательность "PREAMP ON"

//1. Ожидание установки "S-PREAMP-PWR" (PB0) или "R-PREAMP-PWR" (РАО)

//2. Установка "LED-MUTE-RELAY" (PP7)

//3. Установка "LED-PWR-RELAY" (PP0)

//4. Считывание позиции в "WHICH-INPUT"

//5. Установка "LED-xxxxx" = позиция "WHICH-INPUT"

//6. Установка PT7(1) импульсом 10 мс

//7. DE-Assert "LED-MUTE-RELAY" (PP7) через ~3 с.

//8. переход к режиму "SCAN"

//

//Последовательность "SCAN"

//1.Ожидание входного сигнала от (PB0-PB7) или от (PA0-PA7)

//2. IF = "x-PREAMP-PWR" - переход к последовательности "PREAMP OFF"

//3. IF = "x-MUTE" GOTO - переход к последовательности "MUTE"

//4. IF = любой входной сигнал от (PB1-PB6) или (PA1-PA6)- переход к

"CHANGE"

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

//

// последовательность "CHANGE INPUT":

//1. Включить "LED-MUTE-RELAY" (PP7)

//2. Включить "RELAY-RESET" (PT0) импульсом высокого уровня 5 мс

//3. Включить "RELAY-xxxxx" (PT1-PT6) (в соответствии с выбором

// "WHICH-INPUT" импульсом высокого уровня 5 мс)

//4.
Включить "LED-xxxxx" (PP1-PP6) (в соответствии с выбором

// "WHICH-INPUT")

//5. Очистить Old/Input сохранить новое значение "WHICH-INPUT"

//6. DE-переключение "MUTE-RELAY" (PP7) примерно через 3 с.

//7. Перейти к последовательности "SCAN"

//

// последовательность "MUTE":

//1. Переключить "LED-MUTE-RELAY" (PP7)

//2. Перейти к последовательности "SCAN"

//

//Последовательность "PREAMP OFF":

//1. Включить "LED-MUTE-RELAY" (PP7)

//2. DE-переключение "LED-PWR-RELAY" (PP0)

//3. DE-переключение всех светодиодов (PP1-РР6)

//4. Включить PT7(1) импульсом 10 мс

//5. DE-переключение "LED-MUTE-RELAY" (PP7) примерно через 3 с.

//6. Перейти к последовательности "PREAMP ON"

//

//авторы: Steven Barrett и Daniel Pack

//Дата разработки: 19 июня 2004

//Последняя редакция: 20 июня 2004

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

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

//включенные файлы

#include <912b32.h> //B32 EVB header file

#include "func_def.h" //функции-прототипы, глобальные переменные

//main program*******************************************************

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

int which_input; //вход усилителя

int keep_going; //ввод переменных

int mute; //флаг управления выключением звука

unsigned char old_PORTB = 0xff; //текущие значения PORTB

unsigned char old_PORTA = 0x00; //текущие значения PORTA

unsigned char new_PORTB, new_PORTA; //новые значения PORTA, PORTB

void main(void) {

 asm(" .area vectors(abs)\n"

" .org 0xFFF8\n" //инициализация вектора сброса для 68HC12 B32

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

" .text");

 initialize_task;

 //главный цикл

 while(1) { //ожидается сигнал на включение питания

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

Барон нарушает правила

Ренгач Евгений
3. Закон сильного
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Барон нарушает правила

Измена. Не прощу

Леманн Анастасия
1. Измены
Любовные романы:
современные любовные романы
4.00
рейтинг книги
Измена. Не прощу

Жребий некроманта 3

Решетов Евгений Валерьевич
3. Жребий некроманта
Фантастика:
боевая фантастика
5.56
рейтинг книги
Жребий некроманта 3

Город Богов 2

Парсиев Дмитрий
2. Профсоюз водителей грузовых драконов
Фантастика:
юмористическое фэнтези
городское фэнтези
попаданцы
5.00
рейтинг книги
Город Богов 2

Сумеречный Стрелок 3

Карелин Сергей Витальевич
3. Сумеречный стрелок
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Сумеречный Стрелок 3

Сердце для стража

Каменистый Артем
5. Девятый
Фантастика:
фэнтези
боевая фантастика
9.20
рейтинг книги
Сердце для стража

Ваше Сиятельство

Моури Эрли
1. Ваше Сиятельство
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Ваше Сиятельство

Черный дембель. Часть 3

Федин Андрей Анатольевич
3. Черный дембель
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Черный дембель. Часть 3

Сирота

Ланцов Михаил Алексеевич
1. Помещик
Фантастика:
альтернативная история
5.71
рейтинг книги
Сирота

Сотник

Ланцов Михаил Алексеевич
4. Помещик
Фантастика:
альтернативная история
5.00
рейтинг книги
Сотник

Скандальная свадьба

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

Последний из рода Демидовых

Ветров Борис
Фантастика:
детективная фантастика
попаданцы
аниме
5.00
рейтинг книги
Последний из рода Демидовых

Бестужев. Служба Государевой Безопасности. Книга 5

Измайлов Сергей
5. Граф Бестужев
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Бестужев. Служба Государевой Безопасности. Книга 5

Мастер Разума IV

Кронос Александр
4. Мастер Разума
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Мастер Разума IV