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

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

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

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

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

Порт РА РУ55 настраивается на ввод, а порт РA РФ55 – на вывод. Для этого соответствующий бит РА = 1 записывается в состав управляющего слова РУ55, биты PC2, PC1 управляющего слова той же БИС устанавливаются в 1.

Для настройки порта PА БИС КР1821РФ55 на вывод необходимо установить регистр направления передачи порта РA в 1.

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

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

2.4 Формализация определений для рабочего цикла фильтра

2.4.1 Реализация прерываний по входу

Прерывание по внешнему входу выполняет сигнал оповещения с выхода АЦП о готовности кода текущего отсчета Хn. По прерыванию запускается подпрограмма вычисления выходного отсчета Yn (запускается рабочий цикл) цифрового фильтра.

Вектор прерывания по входу равен 0003. С этого адреса в ПЗУ загружается подпрограмма обслуживания прерывания данного типа.

2.4.2 Согласование кодов АЦП и МК

Согласование кодов АЦП и МК не требуется, так как выходной код AD7892AN-1 является арифметическим дополнительным кодом и отображает числовые значения входного знакопеременного напряжения.

2.4.3 Форма представления чисел

Представляем числовые значения отсчетов входного сигнала в виде правильной дроби с фиксированной запятой: старший разряд – знаковый, запятая, остальные двоичные разряды – числовые. Таким образом, числовые значения входного сигнала изменяются в диапазоне от -1 до +1.

Коэффициенты разностного уравнения определяем как 8-разрядные числа без знака:

kp=0.19(10)=,00110000(2)=30(16)= 1∙2-3+1∙2-4=0,18750000(10)

lp=0.017(10)=,00000100(2)=04(16)= 1∙2-6=0,01562500(10)

Отличие реальных значений коэффициентов (Р) от заданных (Т) предопределяет отличие реальных характеристик фильтра от расчетных.

2.4.4 Хранение текущих данных

Необходимость хранения данных определяется видом заданного разностного уравнения. Для каждого цикла вычисления текущих выходных отсчетов Yn требуется использовать выборку входных отсчетов Xn, Xn-1, Xn-2 и выборку выходных отсчетов Yn, Yn-1,Yn-2. Все указанные отсчеты должны быть доступны для вычислений, и, следовательно, храниться в памяти МП-системы.

Требуется также вычислять 2 текущих произведения: p1n=kP · xn-2; p2n=lP·yn-2, которые также должны храниться в памяти.

Следовательно, 8 ячеек ОЗУ (РУ55) определим для хранения данных в текущем цикле обработки входного сигнала (в текущем интервале дискретизации).

После вычисления выходного отсчета Yn, преобразования прямого кода в дополнительный и записи его в ОЗУ, перед приемом нового входного отсчета необходимо сдвинуть отсчеты всех выборок в памяти: n-1-й отсчет на место n-2-го, n-й на место n-1-го. Это требуется для подготовки следующего цикла вычислений.