- •Проектирование микроконтроллеров
- •Isbn 5-7629-0812-7 сПбГэту «лэти», 2008
- •Список использованных сокращений
- •1.Цели и задачи курсового проектирования. Уточнение задания
- •2.Разработка структурной схемы контроллера Типы разрабатываемых контроллеров-имитаторов
- •2.1.Схемы алгоритмов функционирования контроллеров
- •2.2.Варианты заданий на курсовой расчет
- •2.3.Спецификация входных и выходных сигналов контроллеров
- •2.4.Параметры радионавигационного сигнала
- •2.5.Форматы пакетов управления и пакета «старт»
- •2.6.Упрощенная структурная схема контроллера
- •3.Разработка функциональных блоков контроллера
- •3.1.Блок cpu
- •3.2.Блок памяти
- •3.3.Блок приема пакетов управления
- •3.4.Входные сигналы параллельного интерфейса блока приема управляющих пакетов и пакета «старт»
- •3.5.Последовательный интерфейс для приема пакетов управления
- •3.6. Блок индикации
- •3.7.Электрический расчет драйверов сид-дисплея
- •3.8.Особенности построения сид-индикатора на приборах с оа
- •3.9.Блок формирования временного паттерна
- •3.10.Реализация интерфейса для передачи дельта-импульсов
- •3.11.Табличное представление временного паттерна
- •Другие варианты построения таймера временного паттерна, встречающиеся в курсовом расчете
- •3.12.Селектор адреса
- •4.Уточненная структурная схема контроллера
- •5.Разработка программного обеспечения
- •5.1.Программный модуль курсового расчета
- •5.2.Структура данных модуля
- •5.3.Конструирование программного модуля
- •6.Описание шаблонов программного обеспечения, представленного на cd
- •Последовательность действий для запуска исполняемого модуля программы
- •Варианты управления контроллером
- •6.1.Варианты шаблонов формирования временного паттерна
- •6.2.Варианты шаблона "Динамическая индикация"
- •Список иллюстраций Список таблиц
- •Список литературы
- •Типы схем
- •Проектирование микроконтроллеров
- •197376, С.-Петербург, ул. Проф. Попова, 5.
6.1.Варианты шаблонов формирования временного паттерна
Подобные шаблоны относятся к программным модулям типа F-patt и предполагают исследование модулей формирования временного паттерна при различных аппаратных решениях построения таймеров временного паттерна. Модули включают инициализацию необходимых устройств и переменных, требуемую структуру данных и подпрограмму обработки запросов прерывания (ППОП) временного паттерна.
Формирование временного паттерна на синхронных счетчиках типа 555ИЕ10. Этот вариант анализируется в лабораторном цикле дисциплины «Цифровые устройства и микропроцессоры» и подробно описан в лабораторном практикуме [6]. Здесь следует лишь напомнить, что все файлы этого варианта имеют единое имя (PAT4) и загрузка шаблона производится через меню файлового менеджера путем последовательного выбора разделов: «ЦМПУ 2000 Меню шаблонов курсового расчета Вариант "Формирования временного паттерна" Таймер 555ИЕ10 (pat4»).
Использование таймера 8253/54 для построения таймера временного паттерна. (pat3). Шаблон программы ориентирован на использование таймера 8253, который эмулирован портами I/O. Таймер работает в режиме mode 2, использует 16 разрядный формат, канала 0. Загрузка модуля счета следующего временного интервала в таймер может производиться во время реализации текущего модуля счета с перегрузкой счетчика новым значением в момент переполнения (переход 0 1).
Старт производится аппаратно по перепаду 01 на пине GATE. Прибор 8253 расположен по адресу 80h (используется 4 байта) в карте пространства ввода-вывода. Управление полярностью дельта-импульсов выполняется через 2 линии port B прибора 8355, но для наглядности используются все 8 линий для вывода символов P (знак +) и M (знак ).
Перед рассмотрением функционирования шаблона необходимо остановиться на структуре данных использованной в программе.
Для задания номера дополнительной частоты в шаблоне используется переменная FRE_ALT, значение которой по умолчанию равно 0, но может быть перед запуском программы на исполнение изменено от 1 до 7. Значение этой переменной используется для выбора одной из восьми таблиц задания временного паттерна (адрес выбранной таблицы хранится в переменной POINT0). Структура таблиц временного паттерна для всех возможных значений дополнительных частот (J) представлена ниже.
DEFSEG tabl_patt,CLASS=code
SEG TABL_PATT
TABL0: tabl 0 ; таблица паттерна для j=0
TABL1: tabl 1 ; таблица паттерна для j=1
TABL2: tabl 2 ; таблица паттерна для j=2
…
TABL7: tabl 7 ; таблица паттерна для j=7
TABL_TABL:
DW TABL0 ; адрес расположения таблицы паттерна для j=0
DW TABL1 ; адрес расположения таблицы паттерна для j=1
DW TABL2 ; адрес расположения таблицы паттерна для j=2
…
DW TABL7 ; адрес расположения таблицы паттерна для j=7
Замечание. В данной структуре использован макрос генерации таблицы с заданной дополнительной частотой (с именем tabl j), описанный в 3.10.
Схема алгоритма модуля поддержки временного паттерна приведена на рис. 6.9 (а – главная программа, б – ППОП).
Главная программа производит инициализацию (1), вычисление по значению FRE_ALT адреса рабочей таблицы (блок 2), сохранение этого адреса в переменной POINT0, загрузку начального адреса рабочей таблицы временного паттерна в указатель чтения (POINT), а также снятие масок с входа запроса прерывания таймера и разрешение прерывания. Программную поддержку таймера временного паттерна выполняет ППОП.
Модуль ППОП сохраняет все используемые в ППОП регистры в стеке (блок 1), загружает из памяти указатель чтения POINT и производит чтение текущего байта (блок 2). Если текущий байт соответствует концевому коду таблицы временного паттерна (блок 3, концевой код 0FFh), то указатель необходимо перегрузить на начало таблицы (блок 9) и повторить блок 2. В противном случае выполнить загрузку регистра знака прибора 8355 (блок 4) и продолжить чтение кодов модуля и загрузку таймера (блоки 5 и 6), затем восстановить регистры из стека, разрешить прерывание и вернуть управление главной программе. Для запуска исполняемого модуля используются загрузочные файлы PAT31.ZGR, PAT32.ZGR или PAT33.ZGR. Подробности построения загрузочных файлов можно найти в файле README3P.ZGR, а описания программы – в файле PAT3.INC. Загрузочные файлы демонстрируют различные варианты кодов содержимого знака и модуля записываемого в таймер временного паттерна. Эти файлы можно открыть и проанализировать. Для запуска исполняемого модуля используются загрузочные файлы PAT31.ZGR, PAT32.ZGR или PAT33.ZGR. Подробности построения загру
|
а |
|
б |
Рис. 6.45. Схема алгоритма основной программы и ППОП модуля поддержки ТВП |
зочных файлов можно найти в файле README3P.ZGR, а описания программы в файле PAT3.INC.
