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

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

1) Код АЦП для входного отсчета максимальной амплитуды: , после смены знака

2) Получение масштабированного отсчета:

После смены знака

3) Получим произведение P:

После смены знака

4) Получим максимальные положительный и отрицательный Yn:

Зададим состояние памяти для входных и выходных отсчётов максимальной амплитуды:

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

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

7001h

(порт РА РУ55)

32h

35h

Результат

Вычисляется программой в текущем цикле

После согласования с АЦП

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

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

7001h

(порт РА РУ55)

32h

35h

Результат

Вычисляется программой в текущем цикле

После согласования с АЦП

Произведем ручной расчет уравнения, подставив максимальные значения; ±Yn=±0,497983±0,497983±0,497983*0,0081=±0,999999

Расчётные значения и соответствующие им значения, вычисляемые программой в эмуляторе, идентичны – программа работает правильно (без переполнения и логических ошибок).

Небольшие расхождения в результатах происходят по следующим причинам:

1) Коэффициент масштабирования в двоичном коде равен 0,49609375(10).

2) При умножении двоичных кодов 8 младших разрядов теряются.

Максимальный положительный результат, полученный в программе.

Максимальный отрицательный результат, полученный в программе.

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

Принципиальная схема цифрового фильтра состоит из следующих компонентов: МК КР1830BE31, ПЗУ КР1821РФ55, ОЗУ КР1821РУ55, АЦП AD7892AN-3 и ЦАП AD9708.

Подключение БИС РФ55 к микроконтроллеру BE31 и адресация операндов.

Для выбора РФ55 и внутренних узлов в их составе с МК используются свободные линии шины адреса A11…A15 (линии P2.3…P2.7 порта P2, через который выводится старший байт адреса), что позволяет обойтись без применения дешифратора.

Адресная линия P2.4 (A12) – для выбора БИС РФ55 по линии СS2; P2.3(A11) для выбора по линии IO/M внутреннего регистра, порта или ячейки ПЗУ в БИС РФ55.

Подключение БИС РУ55 к микроконтроллеру BE31 и адресация операндов.

Для выбора РУ55 и внутренних узлов в их составе с МК используются свободные линии шины адреса A11…A15 (линии P2.3…P2.7 порта P2, через который выводится старший байт адреса), что позволяет обойтись без применения дешифратора.

Адресная линия P2.6 (A14) – для выбора БИС РУ55 по линии СS2; P2.5 (A13) для выбора по линии IO/M внутреннего регистра, порта или ячейки ОЗУ в БИС РУ55.

Подключение АЦП к микропроцессорной системе.

Поскольку в соответствии с ТЗ, разрядность данных равна 8, параллельная шина для чтения данных (выводы 21, 22, 23, 24, 25, 26, 27, 28 РУ55) подключена к старшим выводам чтения 12-разрядного кода отсчёта (выводы 16,15,13,12,11,10,9,8 АЦП). Остальные выводы не подключаются.

Подключение ЦАП AD9708.

Вывод WR МК через инвертор подключен к входу CLOCK. Вывод SLEEP заземлен (нормальный режим энергопотребления).

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

При включении питания на входе RST КР1830ВЕ31 появляется короткий импульс, и микропроцессор переходит в исходное состояние, описанное выше. Далее процессор выполняет подпрограмму инициализации (настраивает порты и таймер-счетчик). После выполнения инициализации процессор выходит на метку STOP и ждет прерывания. После переполнения таймера-счетчика Т/С0, процессор переходит на вектор обработки прерывания от Т/С0 и выполняет подпрограмму запроса данных с АЦП, т.е. выдает импульс на выходе Р1.3 порта Р1, далее процессор ожидает следующего прерывания, т.е. снова выходит на метку STOP по команде RETI. Импульс с выхода Р1.3 микропроцессора поступает на вход АЦП. Когда код на выходе АЦП готов, на вход INT1 поступает импульс с выхода ЕОС. При появлении импульса на входе INT1 микропроцессор переходит на вектор обработки прерывания на входе INT1. В подпрограмме обработки прерывания от INT1 микропроцессор считывает входной код Xn с выхода внешнего устройства через порт РА КР1821РУ55 и выполняет вычисление Yn. Далее микропроцессор записывает код Yn в порт РВ КР1821РУ55 и выполняет подпрограмму подготовки следующего цикла. При вводе кода Yn в порт РВ КР1821РУ55 микропроцессор формирует строб WR по которому выходной код копируется во входной регистр ЦАП. ЦАП преобразует выходной код в напряжение. Микропроцессор, выполнив программу подготовки следующего цикла, снова выходит на метку STOP по команде RETI и ждет следующего прерывания, по следующему прерыванию от таймера-счетчика Т/С0 программа повторяется.