скачать рефераты

скачать рефераты

 
 
скачать рефераты скачать рефераты

Меню

Реализация цифрового фильтра нижних частот скачать рефераты

p align="left">Текст программы

Программа "Цифровой фильтр (нижних частот)

Автор: Дмитриев Александр Юрьевич

Дата: 12 мая 2007 года

Разностное уравнение:

Определение символических имен операндов

B0: .EQU 90h ;линия для вывода импульса запуска внешнего ;источника данных

PBRU: .EQU 7002h ;порт РВ РУ 55

RGRU: .EQU 7000h ;регистр управляющего слова РУ 55

SRU: .EQU 00h ;управляющее слово для настройки порта РВ РУ 55

PBRF: .EQU 0801h ;порт РВ РФ 55

RGRF: .EQU 0803h ;регистр направления передачи порта РВ РФ 55

SRF: .EQU 01h ;управляющее слово для регистра направления передачи порта РВ РФ 55

TMOD: .EQU 89h ;регистр управления Т/С

STMOD: .EQU 02h ;управляющее слово для настройки Т/С0

TH0: .EQU 8Ch ;старший байт Т/С0

STH0: .EQU 8Eh ;управляющее слово для задания частоты переполнения Т/С0

TR0: .EQU 8Ch ;управляющий бит пуска Т/С0

IE: .EQU A8h ;регистр управления прерываниями

SIE: .EQU 83h ;управляющее слово для настройки прерываний

B: .EQU F0h ;регистр В

k1: .EQU F8h ;коэффициент =0,97

k2: .EQU D6h ;коэффициент =0,8394

Km: .EQU 5Bh ;коэффициент масштабирования

X: .EQU 30h ;ячейка хранения отсчета

X1: .EQU 31h ;ячейка хранения отсчета

X2: .EQU 32h ;ячейка хранения отсчета

Y: .EQU 40h ;ячейка хранения отсчета

Y1: .EQU 41h ;ячейка хранения отсчета

P1: .EQU 50h ;хранение отсчета

P2: .EQU 51h ;хранение отсчета

FILLCHAR 00h ;записать в пропуски между секциями 00

Инициализация по сигналу RST

S0: .SECTION

ORG 0000h ;переход к программе инициализации

LJMP INIT

S1: .SECTION

ORG 00A0h

INIT: MOV TMOD, #STMOD ;настройка режима Т/С0

MOV TH0, #STH0 ;задание частоты дискретизации

SETB TR0 ;пуск Т/С0

MOV A, #SRU ;настройка порта

MOV DPTR, #RGRU ;РВ РУ 55

MOVX @DPTR, A ;на ввод данных

MOV A, #SRF ;настройка порта

MOV DPTR, #RGRF ;РВ РФ 55

MOVX @DPTR, A ;на вывод данных

MOV IE, #SIE ;настройка прерываний

STOP: SJMP STOP ;останов МК

Формирование импульса по внутреннему прерыванию от Т/С0

S2: .SECTION

ORG 000Bh

LJMP START ;переход к п/п формирования импульса запуска внешнего источника данных

S3: .SECTION

ORG 00D0h

START: CLR B0 ;сброс бита В0

SETB B0 ;установка бита В0

RETI ;возврат из п/п обслуживания прерывания от Т/С0

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

S4: .SECTION

ORG 0003h

LJMP XYOUT

S5: .SECTION

ORG 0100h

XYOUT: MOV DPTR, #PBRU ;ввод данных через

MOVX A, @DPTR ;РВ РУ 55

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

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

входной отсчет - в аккумуляторе, масштабированный отсчет записать в ОЗУ

RLC A ;анализ знака

JC M1 ;переход к программе умножения отрицательного отсчета на

RRC A ;восстановление положительного отсета в аккумуляторе

MOV B, #Km ;вычисление произведения

MUL AB ;

MOV X, B ;запоминание масштабированного отсчета в памяти

SJMP M2 ;переход к продолжению

M1: RRC A ;восстановление отрицательного отсчета в аккумуляторе

CPL A ;получение положительного

INC A ;отсчета (смена знака)

MOV B, #Km ;вычисление произведе-

MUL AB ;ния и пересылка

MOV A, B ;в аккумулятор

CPL A ;получение отрицательного

INC A ;произведения (смена знака) MOV X, A ;запоминание масштабированного отсчета в памяти программный модуль вычисления произведения

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

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

M2: MOV A, X2 ;копирование в аккуму-

RLC A ;лятор и анализ знака

JC M3 ;переход к программе умножения отрицательного отсчета на

RRC A ;восстановление положительного отсчета в аккумуляторе

MOV B, #k1 ;вычисление произведе-

MUL AB ;ния

MOV P1, B ;запоминание в памяти

SJMP M4 ;переход к продолжению

M3: RRC A ;восстановление отрицательного отсчета в аккумуляторе

CPL A ;получение положительного

INC A ;отсчета (смена знака)

MOV B, #k1 ;вычисление произведе-

MUL AB ;ния и пересылка

MOV A, B ;в аккумулятор

CPL A ;получение отрицательного

INC A ;отсчета (смена знака)

MOV P1, A ;запоминание в памяти

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

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

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

M4: MOV A, Y1 ;копирование в акку-

RLC A ;мулятор и анализ знака

JC M5 ;переход к программе умножения отрицательного отсчета на

RRC A ;восстановление положительного отсчета в аккумуляторе

MOV B, #k2 ;вычисление произведе-

MUL AB ;ния

MOV P2, B ;запоминание в памяти

SJMP M6 ;переход к продолжению

M5: RRC A ;восстановление отрицательного отсчета в аккумуляторе

CPL A ;получение положительного

INC A ;отсчета (смена знака)

MOV B, #k2 ;вычисление произведе-

MUL AB ;ния и пересылка

MOV A, B ;в аккумулятор

CPL A ;получение отрицательного

INC A ;произведения (смена знака)

MOV P2, A ;запоминание в памяти

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

отсчета , слагаемые

хранятся в ячейках ОЗУ, результат записать

в ячейку ОЗУ и вывести на ЦАП

M6: MOV A, X ;вычисление отсчета

ADD A, P1 ;и сохранение в памяти

ADD A, P2 ;

MOV Y, A ;

ADD A, #80h ;получение смещённого

кода для ЦАП

MOV DPTR, #PBRF ;вывод кода Y через порт

MOVX @DPTR, A ;РВ РФ55

программный модуль сдвига отсчетов в памяти, подготовка следующего рабочего цикла

MOV X2, X1 ;

MOV X1, X ;

MOV Y1, Y ;

RETI ;возврат из подпрограммы

обслуживания прерывания

по входу

END

Исходные определения и ручной расчёт результатов работы программы: "Цифровой фильтр (нижних частот)".

Разностное уравнение имеет вид:

Представим уравнение в виде: , где ,

1)Реализуемый коэффициент масштабирования (число без знака) при 8-разрядном формате беззнаковых коэффициентов:

;,

===

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

;

;

3) Входной положительный отсчет максимальной амплитуды (немасштабированный отсчет):

4)Масштабированный входной положительный отсчет максимальной амплитуды:

:==

5)Зададим состояние памяти после запоминания масштабированных входных отсчетов максимальной амплитуды и выходных отсчетов максимальной амплитуды:

Адрес ячейки памяти

Содержимое ячейки памяти

X

X1

X2

Y

Вычисляется программой:=

Y1

P1

Вычисляется программой:

P2

Вычисляется программой:

6) Получим произведение

7)Получим модуль произведения положительного отсчета на коэффициент :

==

8)Вычислим выходной отсчет:

=

Для отрицательных отсчетов:

3) Входной отрицательный отсчет максимальной амплитуды (немасштабированный отсчет):

4)Масштабированный входной отрицательный отсчет максимальной амплитуды:

:==

5)Зададим состояние памяти после запоминания масштабированных входных отсчетов максимальной амплитуды и выходных отсчетов максимальной амплитуды:

Адрес ячейки памяти

Содержимое ячейки памяти

X

X1

X2

Y

Вычисляется программой:=

Y1

P1

Вычисляется программой:

P2

Вычисляется программой:

6) Получим произведение

7)Получим модуль произведения отрицательного отсчета на коэффициент :

==

8)Вычислим выходной отсчет:

=

6. Составление и описание электрической принципиальной схемы устройства

Принципиальная схема цифрового фильтра содержит следующие микросхемы:

DD1- микроконтроллер КР1830ВЕ31;

DD2- БИС КР1821РФ55;

DD3- БИС КР1821РУ55;

D1- микросхема К155ЛН1 содержит 6 инверторов;

D2- операционный усилитель К140УД8;

DD4- ЦАП AD9708;

К микроконтроллеру подключается кварцевый резонатор ZQ1 с частотой

12 МГц, для обеспечения работы внутреннего генератора тактовых импульсов.

Обмен сигналами между микросхемами DD1, DD2, DD3 осуществляется по мультиплексированной шине адрес/данные (AD7…AD0). Для адресации микросхемы КР1821РФ55 используются: 3 старших разряда адресной шины (AD8, AD9, AD10) - адресация ПЗУ, А11(Р2.3) - по линии IO/M, выбор порта или памяти, A12(P2.4) - выбор кристалла по линии CS 2.

Для адресации микросхемы КР1821РУ55 используются: линия А14(Р2.6) - для выбора кристалла, А13 (Р2.5) - для выбора, по линии IO/M, порта РВ.

Микросхема КР1821РФ55 соединена с ЦАП портом РВ (РВ7…РВ0).

Для синхронизации передачи данных микросхемы соединены по служебным входам и . Для синхронизации вывода готового кода на ЦАП, необходимо подать сигнал записи () на вывод CLOCK. Но так как запись в регистр защелку осуществляется по положительному фронту управляющего строба, следовательно, перед выводом CLOCK надо поставить инвертор.

Для обеспечения требуемого размаха выходного напряжения ±5 В, используется усилитель с дифференциальным включением выводов на основе ОУ К140УД8.

Расчет дополнительных элементов:

, , , где

амплитуда напряжения на выходе ЦАП, - максимальный ток на выходе, - сопротивление для нагрузки на выходе, - опорный ток, - опорное напряжение, - сопротивление резистора на выводе FS ADJ для задания опорного тока.

Принимаем =0,5 В=5 В и =50 Ом, следовательно,

=10 мА, =0,31 мА, = R2=3,9 кОм.

C4=C5=C6=C7=0,1 мкФ, R3=R4==50 Ом.

Так как =0,5 В, следовательно, усилитель должен имеет коэффициент усиления =10. Для усилителя на ОУ с дифференциальным включением выводов

=; R7=R6=150 Ом; R8=R5=10150=1,5 кОм.

7. Расчёт быстродействия устройства

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

Количество машинных циклов с момента поступления запроса на прерывание по входу до выхода на метку STOP равно 78. Период дискретизации равен

. Длительность машинного цикла , следовательно

время выполнения программы равно 78=78 мкс, что меньше чем период дискретизации, т.е. условие фильтрации в реальном времени выполняется.

8. Расчёт АЧХ и ФЧХ устройства для заданных и реальных значений коэффициентов. Оценка устойчивости устройства

Разностное уравнение имеет вид:

В общем виде уравнение проектируемого фильтра можно представить в виде:

Коэффициенты имеют следующие значения:

; ;;;

В z-плоскости свойства цифрового фильтра описывает передаточная функция H(z), которая при однокаскадной структуре и для приведенного выше разностного уравнения имеет вид:

H(z)= ;при ,где Т=()

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

Передаточная функция для заданных значений коэффициентов:

Передаточная функция для реальных значений коэффициентов будет иметь вид:

Модуль H(f) даст АЧХ, а аргумент ФЧХ. Построим графики АЧХ и ФЧХ для заданных и реальных значений коэффициентов:

Амплитудно-частотные характеристики фильтра

В увеличенном масштабе

Фазо-частотные характеристики фильтра (в градусах)

В увеличенном масштабе

Оценка устойчивости фильтра.

Если все полюса передаточной функции

,

т.е. корни уравнения лежат внутри круга единичного радиуса с центром в точке z=0, то фильтр будет устойчив.

Решая уравнение, получим один полюс =, он меньше единицы, следовательно, фильтр устойчив.

Заключение

В данном курсовом проекте было разработано цифровое устройство. Также была разработана программа, обеспечивающая работу данного устройства как цифрового фильтра нижних частот, определен общий алгоритм функционирования устройства. Устройство имеет высокое быстродействие и в полной мере удовлетворяет требованиям технического задания, получены частотные характеристики проектируемого фильтра. С учетом выводов, сделанных в процессе определения функций устройства и способов их реализации, выбрана необходимая элементная база и составлена электрическая принципиальная схема цифрового фильтра. Аппаратная часть по возможности была минимизирована, а программа оптимизирована, что обеспечивает работу устройства в реальном масштабе времени.

Список использованных источников

1. Цифровые устройства и микропроцессоры: Методические указания к курсовому проекту / Рязан. гос. радиотехн. университет; Сост. Н.И.Сальников. Рязань, 2006.

2. Цифровые устройства: Методические указания к курсовому проекту по дисциплине "Цифровые устройства и микропроцессоры" / Рязан. гос. радиотехн. акад.; Сост. Н.И.Сальников. Рязань, 2002, № 3389.

3. Сальников Н.И. Микроконтроллеры 8051 в устройствах управления радиоэлектронных приборов: Учеб. пособие. Рязан. гос. радиотехн. акад. Рязань, 1998.

4. Соколов Ю.П. Микроконтроллеры семейства МСS-51: архитектура, программирование, отладка: Учеб. пособие. Рязан. гос. радиотехн. акад. Рязань, 2002.

5. Щелкунов НН., Дианов А.П. Микропроцессорные средства и системы. М.: Радио и связь, 1989.

6. Интегральные микросхемы: Микросхемы для аналого-цифрового преобразования и средств мультимедиа. Выпуск 1. М.: ДОДЭКА, 1996.

7. Угрюмов Е.П. Цифровая схемотехника. СПб.: БХВ-Петербург, 2001.

8. Солонина А.И., Улахович ДА., ЯковлевЛ.Н. Алгоритмы и процессоры цифровой обработки сигналов. СП6.: БХВ-Петербург, 2001.

Страницы: 1, 2