Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КП по ЦУМ_low_freq.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
793.6 Кб
Скачать

5 Функциональная схема цифрового фильтра

Вывод (копирование) кода выходного отсчёта y n (YD7… YD0) во входной буферный регистр ЦАП определим через порт PB БИС КР1821РУ55 – по линиям шины G , в режиме простого вывода без квитирования. Запись кода y n в регистр защёлку ЦАП выполняется при поступлении нарастающего фронта управляющего строба CLOCK на вход синхронизации CLOCK. Управляющий строб записи вырабатывается процессором в каждом машинном цикле записи данных во внешнее устройство.

Зададим настройки выводов БИС AD9708 в соответствии с типовой схемой включения и требованиями технического задания на КП.

Вывод SLEEP заземлён – работа в нормальном режиме энергопотребления. Вывод REFLO заземлён, вывод REFIO через конденсатор С = 0,1 мкФ соединён с аналоговой землёй – используется внутренний источник опорного напряжения +1,2 В для получения весовых токов ЦАП. Резистор RSET на входе FS ADJ задаёт максимальное значение выходных токов ЦАП. Наличие конденсаторов, подключенных к входам COMP1 и COMP2, обусловлено требованиями подавления внутренних шумов и надёжной работы переключателей тока в ЦАП.

Преобразование выходного тока IOUTA в выходное напряжение в униполярном режиме работы выхода осуществляется с помощью резистора нагрузки Rн A . Выходное напряжение UВЫХ = (-2.5...+2.5) В (требование ТЗ) получается с помощью операционного усилителя с униполярным включением входов.

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

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

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

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

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

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

  3. выбирается банк 0 РОН (текущий банк регистров),

  4. порты P0, P1, P2, P3 настраиваются на ввод для приёма данных;

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

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

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

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

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

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

Настройка таймера-счётчика Т/С0.

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

Управляющее слово для регистра TMOD (прямой адрес 89)

TMOD.7

TMOD.6

TMOD.5

TMOD.4

TMOD.3

TMOD.2

TMOD.1

TMOD.0

x(0)

x(0)

x(0)

x(0)

0

0

1

0

GATE1

C/ 1

M1.1

M0.1

GATE0

C/ 0

M1.0

M0.0

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

Максимальный коэффициент пересчёта 8-разрядного счётчика (без перезагрузки) равен kМАКС = 28 = 256. Чтобы в режиме суммирования 8-разрядный Т/С0 имел требуемый коэффициент пересчёта kСЧ = N, при перезагрузке в него должно записываться число NИСХ = kМАКС – N, для рассматриваемого примера NИСХ = 34 = 22(16).

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

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

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

Определение управляющих битов регистра IE

Имя регистра

IE

Адрес регистра

A8

Бит регистра

IE.7

IE.6

IE.5

IE.4

IE.3

IE.2

IE.1

IE.0

Имя

бита управления

EA

-

-

ES

ET1

EX1

ET0

EX0

Значение

бита управления

1

0

0

0

0

0

0

1

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

По сделанному выше определению порт PA РУ55 настраивается на ввод с квитированием, а порт PB – на вывод. Для этого соответствующие биты записываются в состав управляющего слова (константа #1А) для регистра управляющего слова РУ55. При инициализации фильтра – команды MOV A #1А, MOV DPTR, #7000 , MOVX @DPTR, A.

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

D7

D6

D5

D4

D3

D2

D1

D0

x(0)

x(0)

x(0)

1

1

0

1

0

TM2

TM1

IE B

IE A

PC2

PC1

PB

PA

IE A –управляющий бит разрешения (IE A = 1) или запрещения выработки сигналов прерывания INTR A от порта PA.

PC2, PC1 – управляющий код, определяющий назначение линий порта PC:

10 – PC0 – выход сигнала INTR A;

PC1 – выход сигнала BF A;

PC2 – вход управляющего строба ;

PB- управляющий бит направления передачи данных через порт PB; PB = 0 – ввод, PB = 1 – вывод

PA- управляющий бит направления передачи данных через порт PA; PA = 0 – ввод, PA = 1 – вывод

Запись в ОЗУ 8разрядных кодов ошибок предсказания так же осуществляется в инициализации фильтра.

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

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