Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
цифра моя.doc
Скачиваний:
17
Добавлен:
17.09.2019
Размер:
553.98 Кб
Скачать

3 Разработка и описание общего алгоритма функционирования фильтра

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

Общий алгоритм функционирования фильтра приведен на рисунке 2. Работа фильтра начинается с подачи питания. Импульс, сформированный схемой сброса (дифференцирующая RC-цепь) при подаче питания, обнуляет программный счетчик МК и инициирует формирование импульса сброса RST для установки МК в исходное состояние. Исходное состояние МК после сброса однозначно определено и его следует учитывать при инициализации фильтра.

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

Таймер-счетчик Т/С0 (аппаратный узел) в режиме таймера настраивается на период переполнения, равный Тд, таймер запускается для формирования непрерывной последовательности импульсов с частотой дискретизации. Разрешаются внутренние прерывания от Т/С0, которые используются для программного формирования импульсов запуска АЦП, и внешние прерывания от входа - для пуска выполнения рабочего цикла фильтра по сигналам готовности данных от АЦП. Порт РВ РУ55 настраивается на вывод, РА РУ55 – на ввод данных из АЦП. Программа инициализации завершается операцией останова МК.

Из состояния останова МК выводится сигналом внутреннего прерывания от флага TF0 переполнения Т/С0. По данному прерыванию выполняется программный модуль формирования и вывода импульса пуска АЦП. После запуска АЦП программа снова переходит в состояние останова и находится в нем до следующего прерывания по входу сигналом готовности данных от АЦП.

Последующие операции (ввод, оперативные обращения к памяти, арифметические преобразования, преобразование кодов и вывод) в каждом цикле работы фильтра выполняется под управлением рабочей программы фильтра. Каждый рабочий цикл программы также заканчиваться остановом – ожиданием очередного прерывания.

4 Обоснование построения аппаратной части фильтра

Фильтр построен на основе микроконтроллера КР1830ВЕ31, ПЗУ КР1821РФ55, ОЗУ КР1821РУ55 (они составляют МП-систему) и АЦП AD7892AN-3. Перечисленных микросхем вполне достаточно для реализации поставленной задачи. Опишем каждую из них.

Микроконтроллер КР1830ВЕ31

Микросхема КР1830ВЕ31 включает в себя следующие основные блоки, которые необходимы для реализации фильтра:

  • 8-разрядный центральный процессор с возможностью обработки операндов: бит, нибл (4 бита), байт, 2 байта;

  • Память данных емкостью 128 байт;

  • Возможность добавления памяти программ до 64 Кбайт путем подключения внешних микросхем;

  • 32 – разрядный регистр общего назначения (РОН);

  • 128 флагов пользователя (программиста) для фиксирования внешних или внутренних событий, хранения значений отдельных битов;

  • 4 программируемых порта параллельного обмена (ввода/вывода);

  • Многорежимный порт последовательного обмена (ввода/вывода) со скоростью передачи информации от 110 бит/с до 1 Мбит/с;

  • Программируемая двухуровневая система прерываний, допускающая переопределять приоритеты при обработке внешних прерываний;

  • Двоичная и десятичная арифметика;

  • 8-разрядный стек для хранения адресов возврата при выполнении подпрограмм и обработке прерываний;

  • Взаимодействие с внешней средой в стандарте ТТЛ-микросхем.

КР1821РФ55

В устройство РФ55 входит ПЗУ емкостью 2К х 8 бит и два 8-разрядных порта ввода-вывода. Каждая линия обоих портов может программироваться индивидуально и определятся как входная или выходная. В проектируемой системе порты не используются, так как достаточно для реализации портов РУ55.

КР1821РУ55

В устройство РУ55 входит статическое ОЗУ емкостью 256 х 8 бит, два 8-разрядных (А и В) и один 6-разрядный порты (С) ввода-вывода и 14-разрядный программируемый счетчик/таймер. Все разряды портов А и В используются для ввода-вывода параллельно, т.е. невозможна установка передачи индивидуально для каждого разряда. Порты А и В содержат внутренние регистры для запоминания пересылаемого байта данных.

Порт С имеет режимы работы, сведенные в таблицу №2.

Таблица 2

PC2

PC1

Линии порта С

Назначение

1

0

РС0-РС5

Ввод

0

1

РС0-РС5

Вывод

1

0

РС0

РС1

РС2

РС3-РС5

INTR A

BF A

STB A

Вывод

1

1

РС0

РС1

РС2

РС3

РС4

РС5

INTR A

BF A

STB A

INTR В

BF В

STB В

В таблице №2 используются обозначения: INTR А (В) – запрос прерывания по порту А (В); BF А (В) – буфер порта А (В) полон; STB А (В) – управляющий сигнал записи, соответствующий порту А (В). Таймер запускается загрузкой слова состояния в РУ55. Команды управления таймером сведены в таблицу №3.

Таблица №3

ТМ2

ТМ1

Описание команды таймера

0

0

Холостая команда, не влияющая на работу таймера

0

1

Немедленный останов таймера, если он находится в состоянии счета. Холостая команда, если таймер не запущен.

1

0

Останов таймера после окончания текущего цикла счета. Холостая команда, если таймер не запущен.

1

1

Пуск таймера.

Формат управляющего слова РУ55 был показан выше. Для проектируемой системы был выбран 3й режим работы порта С для обеспечения условного вывода с квитированием.

AD7892AN-3

AD7892AN-3 представляет собой 12-разрядный АЦП с устройством выборки-хранения, генератором тактовых импульсов и многофункциональным интерфейсом, работающий от одного источника питания +5 В и реализующий алгоритм последовательных приближений с временем преобразования 1,3 мкс.

Устройство выборки-хранения имеет время хранения, позволяющее формировать цифровые коды с точностью до 12 разрядов для входной синусоиды с максимальной амплитудой ±10 В и частотой до 300 кГц. Для чтения цифрового кода можно использовать как параллельный 12-разрядный интерфейс, так и последовательный. Мы будем использовать параллельный интерфейс как более быстрый и простой с точки зрения программной реализации.

Выходной код является дополнительным. Числовые значения кода соответствуют значениям знакопеременного входного напряжения.

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