5. Синтез управляющего узла (разработка программы на языке микропроцессора)

 

Рабочая программа разработана на основе спроектированного алгоритма функционирования устройства и результатов анализа и формализации задачи. Программа привязана к минимальной конфигурации аппаратной части фильтра.

Распределение памяти ОЗУ:

5000h – хранение отсчета xn;

5001h – хранение отсчета x n – 2;

5002h – хранение отсчета y n – 1;

5003h – хранение произведений p 1n;

5004h – хранение произведений p 2n;

50FFh – начальный адрес стека.

;Программа: "Фильтр высоких частот"

;Автор: Халява Валентина Сергеевна

;Разностное уравнение: yn = xn +1.1x n – 2 + 0,999 y n – 2;

;Инициализация по сигналу "Сброс"

.ORG 0 ;начальный адрес программного

;модуля инициализации

DI ;запрет прерываний

LXI SP, 50FFh ;организация стека

MVI A, 0FFh ;настройка порта РА (РФ55) на вывод

STA02h ;

MVI A, 05Dh ;настройка таймера на частоту пере-

STA F004h ;полнения Т = ТД в режиме 3

MVI A, 0C1h ;

STA F005h ;

MVI A, 0C0h ;настройка порта РА (РУ55) на ввод

STA00h ;и пуск таймера

MVI A, 1Ah ;настройка режима прерываний

SIM ;

EI ;разрешение прерываний

M1: HLT ;останов, ожидание прерывания

JMP M1 ;переход на команду останова процессора по

; окончании подпрограммы обслуживания прерывания

.ORG 3Ch ;начальный адрес программной

;реакции на прерывание типа RST 7.5

PUSH PSW ;

LDA 5000h ;загрузка в аккумулятор значения xn

STA 0800h ;

POP PSW ;восстановление аккумулятора

RET ;возврат из подпрограммы обслуживания к основной

;программе

LDA01h ;ввод текущего кода АЦП в аккумулятор

ADIh ;получение дополнительного кода для текущего отсчета

;программный модуль масштабирования:

;вычисления произведения

; xn:= xn = 20xn;

;входной отсчет хранится в аккумуляторе, масштабированный

; отсчет записать в ячейку ОЗУ с адресом АХ

MOV H, A ; xn ® H

ADD H ;арифметические сдвиги входного

;отсчета и накопление суммы частичных

;произведений в аккумуляторе: 20 xn ® А

STA00h ;запоминание отсчета xn в памяти

;программный модуль вычисления произведения:

;p1n = 1,1 xn » 1,00011001xn = ( 20 + 2-4 + 2-5 + 2- 8) xn;

;xn хранится в ячейке ОЗУ с адресом X2;

;p1n записать в ячейку ОЗУ с адресом P1

LDA X2 ; Xn-2 ® H

MOV H, A ;

MOV A, H ;арифметические сдвиги отсчета xn

ARHL ;и накопление суммы частичных

ARHL ;произведений в аккумуляторе:

ARHL ; ( 20 + 2-4 + 2-5 + 2- 8) xn ® А

ARHL ;

ADD H ;

ARHL ;

ADD H ;

ADD H ;

ARHL ;

ARHL ;

ADD H ;

STA03h ;запоминание p1n в памяти

;программный модуль вычисления произведения:

;p2n = 0,999 yn-1 » 0, 11111111 yn-1

; = ( 2-1 + 2-2 + 2-3 + 2-4 + 2-5 + 2-6 + 2- 7+2- 8)yn-1;

;yn-1 хранится в ячейке ОЗУ с адресом Y1;

;p2n записать в ячейку ОЗУ с адресом P2

LDA Y1 ; yn-1 ® A

MOV H, A ; yn-1 ® H

ARHL ;арифметические сдвиги отсчета yn-1

MOV A, H  ;и накопление суммы частичных

ARHL ; произведений в аккумуляторе:

MOV A, H  ; ( 2-1 + 2-2 + 2-3 + 2-4 + 2-5 + 2-6 + 2- 7+2- 8)yn-1® А

ARHL ;

MOV A, H ;

ARHL ;

MOV A, H ;

ARHL ;

MOV A, H ;

ARHL ;

MOV A, H ;

ARHL ;

MOV A, H ;

ARHL ;

ADD H ;

STA04h ;запоминание p2n в памяти

;программный модуль вычисления промежу-

;точного и выходного отсчета:

; y n = x n– x n - 2 – p 2n– p 3n

;слагаемые хранятся в ячейках ОЗУ, результат

;вычисления записать в ячейки ОЗУ

LDA00h ; xn ® A

LXI H, 5001h ;загрузка адреса xn - 1

SUB M ; xn - xn - 2® A

INX H ;получение адреса vn – 1

INX H ;

SUB M ; xn - xn – 2 - vn – 1® A

LXI H, 5003h ;загрузка адреса p 1n

SUB M ; xn - xn –2 - vn –1 - p 1n ® A

STA02h ;запоминание yn-2 в памяти

LXI H, 5001h ;загрузка адреса xn –2

SUB M ;xn - xn - 2 ® A

LXI H, 5004h ;загрузка адреса p 2n

SUB M ; x n - x n - 2 - p 2n ® A

STA05h ;запоминание yn в памяти

ADIh ;получение смещенного входного

;кода ЦАП

STA00h ;вывод кода на ЦАП через порт РА (РФ55)

;программный модуль сдвига отсчетов памяти

LHLD00h ;

SHLD01h ;

LHLD05h ;

SHLD06h ;

RET ;возврат из подпрограммы обслуживания прерывания



Информация о работе «Проектирование цифрового фильтра верхних частот»
Раздел: Коммуникации и связь
Количество знаков с пробелами: 20489
Количество таблиц: 1
Количество изображений: 3

Похожие работы

Скачать
24970
6
12

... пропускают или задерживают сигналы, лежащие в определённых полосах частот. Фильтры можно классифицировать по их частотным характеристикам: 1.  Фильтры нижних частот (ФНЧ) – пропускают все колебания с частотами не выше некоторой частоты среза и постоянную составляющую. 2.  Фильтры верхних частот (ФНЧ) – пропускают все колебания не ниже некоторой частоты среза. 3.  Полосовые фильтры (ПФ) – ...

Скачать
24862
1
4

... электрической схемы (создается файл с расширением .SYM); - построения/редактирования принципиальной электрической схемы аналогового или цифрового устройства (создается файл с расширением .SCH). Программа входит в систему автоматизированного проектирования больших интегральных схем на персональном компьютере (PCAD). Программа работает с пользовательской и библиотечной базами данных и выполняет ...

Скачать
39407
3
0

... для каждого звена составим разностные уравнения: 1)   первое звено: ; 2)   второе звено: ; 3)   третье звено: . Результирующее разностное уравнение для цифрового фильтра будет иметь вид: .4 РАЗРАБОТКА АЛГОРИТМА ПРОГРАММЫ  ПРОЕКТИРУЕМОГО УСТРОЙСТВА Прежде чем приступить к программированию устройства необходимо основательно изучить его внутреннюю структуру и возможности ресурсов. ...

Скачать
11355
1
9

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

0 комментариев


Наверх