Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Можаев.doc
Скачиваний:
7
Добавлен:
28.08.2019
Размер:
760.32 Кб
Скачать

5. Выводы

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

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

Спроектированная система удовлетворяет всем заданным требованиям.

Список используемых источников:

  • Конспект лекций по курсу “Микропроцессорные устройства”, В.А. Можаев

  • Лабораторный практикум по курсу “Микропроцессорные устройства”, В.А. Можаев

- Шамриков Б.М. «Основы теории цифровых систем» М.: Машиностроение, 1985. 296с.

Исходный код программы.

.PROGRAM KURS_MPU

;#include C:\LabMKP\Mb90V590.h

#include C:\LabMKP\Mb90V590.h

.EXPORT _main

.SECTION CONST_MAIN, DATA, ALIGN=2

ACP .DATA.B 10

.SECTION DATA_MAIN, DATA, ALIGN=2

; резервируем память для х(к), х(к-1), у(к-1)

XK .RES.B 1

SIGNY .RES.B 1

.SECTION CODE_MAIN, CODE, ALIGN=2

_main: MOV R0, #160

MOVW RW0, #250

MOVW RW3, #3

MOV R3, #0 ;X(к-1)=0

MOVW RW2, #0 ;Y(к-1)=0

; инициализация порта P8 и разрядов Р77, Р76 на вывод

MOV DDR8, #H'FF

; инициализация АЦП

MOV ADCS0, #H'00

MOV ADCS1, #H'00

MOV ADCR1, #H'E8

MOV ADER, #H'FF

; инициализация таймера для задержки 1мс

MOVW TMRLR0, #2000

MOVW TMCSR0, #H'0013

MOV SIGNY, #0

M1: MOVW RW1, #751

SETB ADCS1:1 ; старт на АЦП, считывание х(к)

WBTC ADCS1:7 ; окончание преобразование

MOV A, ADCR0

;MOV A, ACP ;

MOV XK, A ; сохраняем результат

SUB A, R3 ; DELTA(X)=х(к)-х(к-1)

CMP A, #0

BGE LOOP1

NEG A

MULU A, R0

NEGW A

JMP LOOP2

LOOP1: MULU A, R0 ; 160*DELTA(X)

LOOP2: MOVW RW7, A ; RW7=160*DELTA(X)

MOVW A, RW2 ; A=Y(K-1)

MULUW A, RW3 ;3*Y(K-1)

ADDW A, RW7 ; 3*Y(K-1)+160*DX

CMPW A, #0

BGE LOOP3

MOV SIGNY, #1

NEGW A

JMP LOOP4

LOOP3: MOV SIGNY, #0

LOOP4: MULUW A, RW0 ; 250*(3*Y(K-1)+160*DX)

DIVUW A, RW1 ; 250*(3*Y(K-1)+160*DX)/751

MOVW RW2, A ; Y(K-1)=Y(K)

MOV R3, XK ; X(K-1)=X(K)

MOV R1, #10

DIVU A, R1

MOV R2, A ;В R2 ЦЕЛАЯ ЧАСТЬ, В R1 остаток (ДРОБЬ)

MOV A, R1 ; ОКРУГЛЕНИЕ

CMP A, #5

BLO LOOP5

INC R2

LOOP5: MOV A, SIGNY

CMP A, #0

BEQ LOOP6

NEGW RW2

NEG R2

LOOP6: MOV A, #127

ADD R2, A

; организуем задержку

;WBTS TMCSR0:2

;CLRB TMCSR0:2

; выдача на ЦAП

MOV PDR8, R2

JMP M1

RET

17

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