Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
цифра моя.doc
Скачиваний:
17
Добавлен:
17.09.2019
Размер:
553.98 Кб
Скачать

2.2 Исходное состояние фильтра после включения питания

При включении питания в схеме МП-системы (приложение А) вырабатывается импульс сброса RST для микроконтроллера. По сигналу RST=1 выполняются следующие действия:

  1. программный счетчик и все управляющие регистры МК, кроме PCON, IE, IP – устанавливаются в нулевое состояние;

  2. в управляющих регистрах PCON, IE, IP – резервные биты принимают случайные значения, все остальные биты сбрасываются в 0;

  3. в указателе стека устанавливается адрес SP=70 (вершина стека);

  4. запрещаются прерывания от всех источников, запрещается работа таймеров/счетчиков, запрещается работа последовательного порта;

  5. выбирается банк 0 POH (текущий банк регистров);

  6. порты Р0, Р1, Р2, Р3 настраиваются на ввод для приема данных;

  7. в обоих регистрах SBUF последовательного порта устанавливаются случайные значения.

В БИС КР1821РУ55 и КР1821РФ55 исходное состояние после включения питания произвольное, так как импульс RST на их входы сброса не поступает.

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

2.3 Формализация настроек для инициализации фильтра

2.3.1 Частота синхронизации МК

Принимаем частоту задающего кварцевого генератора FOSC=12 МГц. Длительность машинного цикла при этом ТМЦ = 1 мкс.

2.3.2 Настройка таймера – счетчика Т/С0

Таймер/счетчик Т/С0 должен работать в непрерывном режиме таймера (без блокирования сигналом ) для формирования импульсов с частотой дискретизации FД. Поэтому выбираем режим 2 с перезагрузкой после каждого цикла счета. Управляющие биты GATE0 = 0 и С/ 0 = 0 и код режима 10 записываются в состав управляющего слова (константа #02) для регистра TMOD при инициализации фильтра – команда MOV 89, #02.

Задание частоты дискретизации FД = 4000 Гц. Длительность интервала дискретизации ТД = 250 мкс. Количество машинных циклов ТМЦ, укладывающихся на интервале дискретизации: N= ТД / ТМЦ = 250, значит Т/С0 должен иметь в режиме с перезагрузкой коэффициент счета KСЧ=250.

Максимальный коэффициент пересчета 8-разрядного счетчика (без перезагрузки) равен 256. Чтобы в режиме суммирования 8-разрядный Т/С0 имел требуемый коэффициент пересчета, при перезагрузке в него должно записываться число NИСХ = kMAKC – N = 256-250 = 6 Константа #6, обеспечивающая требуемую частоту дискретизации, при инициализации фильтра должна быть записана в регистр TH0 (прямой адрес 8С) – команда MOV 8C, #6.

Пуск Т/С0 осуществляется путем установки в регистре ТСОN управляющего бита TR0=1 при инициализации фильтра – команда SETB 8C.

Вывод импульса переполнения Т/С0 для запуска АЦП выполняется по прерыванию от флага TF0, устанавливающегося при переполнении Т/С0. Подпрограмма обработки прерываний от флага TF0 имеет стартовый адрес 000В и содержит команды CLR 90, SETB 90 – сброс и установка линии Р1.0 (порт Р1), так как исходное состояние линии – 1.

2.3.3 Настройка прерываний

В результате сброса МК при включении питания всем источникам прерываний назначается одинаковый, нулевой приоритет. Поскольку обработка прерываний от таймера Т/С0 и по входу не могут совпадать по времени, переопределять приоритеты прерываний не требуется.

После сброса МК все прерывания запрещены. Поэтому при инициализации требуется разрешить прерывания вообще (установить бит EA=1), и, в частности, разрешить прерывания от Т/С0 (ЕТО=1) и по входу (ЕХ0 = 1). Команда записи управляющего слова (константы #83) в регистр IE: MOV A8, #83

2.3.4 Настройка портов БИС КР1821РУ55

Порт РА РУ55 настраивается на ввод, а порт РВ РУ55 – на вывод, так как по ТЗ нам необходимо организовать вывод с квитированием, а квитирование поддерживают только порты БИС РУ55. Для этого соответствующий биты РА=0, РВ=1, записывается в состав управляющего слова РУ55 (константа #02h) для РУС РУ55. При инициализации фильтра – команды: MOV A, #02h, MOV DPTR, #7000h, MOVX @DPTR, A.

Таблица 1

Управляющее слово для РУС РУ55 (адрес 7000)

D7

D6

D5

D4

D3

D2

D1

D0

х(1)

х(0)

х(0)

х(0)

х(1)

х(0)

0

1

ТМ2

ТМ1

IE В

IE A

РС2

РС1

РВ

РА

2.3.5 Организация стека

При сбросе МК в указатель стека загружается адрес SP = 70 – во внутренней памяти данных назначается стек 16 ячеек ОЗУ. Его глубина достаточна для решаемой задачи, поэтому переопределения стека не требуется.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]