Контроллер имитатора навигационного сигнала
Алгоритм функционирования контроллера имитатора навигационного сигнала, его упрощенная структурная схемы. Спецификация входных и выходных сигналов. Разработка аппаратной части заданного блока контроллера и программного обеспечения. Исходный код программы.
Рубрика | Коммуникации, связь, цифровые приборы и радиоэлектроника |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 13.10.2017 |
Размер файла | 1,1 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
МИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
"ЛЭТИ" им. В.И. Ульянова (Ленина)
Кафедра РС
Курсовая работа
по дисциплине "Микропроцессорные устройства"
Тема: Контроллер имитатора навигационного сигнала
Студент гр.4106 Гибалов А.С.
Преподаватель Смирнов Б.И.
Санкт-Петербург
2017
Содержание
- Введение
- 1. Уточнение задания на проектирование
- 1.1 Структура комплекса для испытаний
- 1.2 Алгоритм функционирования контроллера
- 1.3 Спецификация входных и выходных сигналов
- 1.4 Упрощенная структурная схема контроллера
- 2. Разработка аппаратной части заданного блока контроллера
- 2.1 Выбор МП по заданной тактовой частоте и описание блоков памяти
- 2.2 Полная разработка заданного блока
- 2.3 Уточнение структурной схемы с отражением всех принятых решений
- 3. Разработка программного обеспечения
- 3.1 Схема алгоритма модуля, определенного в задании и уточненного в разделе 1
- 3.2 Структуры данных, используемые для работы контроллера
- 3.3 Описание схемы алгоритма модуля
- 3.4 Исходный текст программы
- Заключение
- Список использованных источников
Введение
Радионавигационные системы (РНС) предназначены для определения местоположения движущихся и неподвижных воздушных, морских, наземных и космических объектов различного назначения. Кроме основной задачи РНС могут обеспечивать потребителей информацией о точном времени, параметрах движения (скорость, путевой угол, пройденный путь, взаимное расположение движущихся объектов и т.д.), а также осуществлять контроль за их перемещением.
В нашей стране разработан и эксплуатируется целый ряд РНС. Наиболее известные - это спутниковая РНС "ГЛОНАСС" и импульсно-фазовая РНС (ИФРНС) с наземным базированием "ЧАЙКА".
Принцип действия и режимы использования сигналов ИФРНС LORAN-C и "ЧАЙКА" состоит в следующем, передающие станции, излучающие группы (пачки) из восьми ("ведомые" станции) или девяти ("ведущие" станции) импульсов на несущей частоте 100 кГц и с полосой пропускания 20 кГц (110-90), объединены в цепи - группы станций, излучающих синхронизированные импульсные сигналы с одинаковой частотой повторения. Каждая цепь состоит из одной "ведущей" и двух-четырех "ведомых" передающих станций. Интервалы повторения пачек импульсов используются для опознавания цепей и уменьшения взаимных помех между ними. Значения интервалов повторения пачек изменяются от 30 000 до 100000 мкс (основные частоты) с дискретом 100 мкс (дополнительные частоты повторения).
Классическим режимом использования сигналов ИФРНС является стандартный разностно-дальномерный (гиперболический) режим.
Этому режиму свойственны ограничения по точности и размерам рабочей зоны, обусловленные геометрическим фактором, зависящим от взаимного расположения передающих станций и потребителей. Поэтому в зависимости от задач и требований потребителей получили широкое распространение и другие режимы использования сигналов ИФРНС, а именно: режим работы с функционально равноценными станциями, дальномерный, дифференциальный режимы, режим одновременной работы со смежными цепями.
Режим работы с функционально равноценными станциями реализуется в бортовой аппаратуре потребителей с помощью специальных алгоритмов и позволяет повысить точность местоопределения. В данном случае ведущая станция рассматривается в алгоритме обработки сигналов как обычная ведомая.
При наличии на борту потребителя высокостабильного опорного генератора частоты можно обеспечить повышение точности и надежности местоопределений.
При использовании метода одновременной работы со смежными цепями (объединенные цепи) возможны два варианта обработки информации. В первом варианте одну гиперболу получают с помощью пары станций одной цепи, а другую - с помощью пары станций другой цепи. Во втором варианте в бортовой аппаратуре используется алгоритм обработки, при котором одна гипербола получается путем измерения разности времен приема сигналов пары станций одной цепи, а другая создается "искусственно" с помощью пары станций двух смежных цепей. Режим работы со смежными цепями позволяет существенно повысить точность местоопределений и расширить рабочие зоны. Этот режим широко используется в США и Европе благодаря работе ряда станций одновременно в двух цепях (в двойном режиме).
контроллер имитатор навигационный сигнал
1. Уточнение задания на проектирование
1.1 Структура комплекса для испытаний
В задании на курсовой расчет предлагается спроектировать один из блоков имитатора сигналов РНС типа LORAN-C, предназначенного для выполнения контрольных и оценочных испытаний судовой приемоиндикаторной аппаратуры, с учетом указанных ограничений.
Испытания исправной аппаратуры необходимо производить в условиях, соответствующих эксплуатационным, т.е. все сигналы и помехи должны иметь параметры, уровни которых соответствуют практическим.
В процессе проверки аппаратуры необходимо регулировать параметры сигналов и помех в соответствии с программой испытаний, поэтому целесообразно управление всем этим многообразным хозяйством возложить на единый управляющий комплекс - ПК. Структурную схему комплекса можно представить в виде, в котором она представлена на рис.1.1.
Рис.1.1 Структурная схема комплекса для проведения оценочных испытаний приемоиндикаторной аппаратуры
Из рис.1.1 видно, что каждый имитатор представляет собой самостоятельный контроллер, который имеет вход управления и выход, предназначенный для формирования сигнала.
Целью данного курсового расчета является проектирования имитатора - контроллера ВЩ4, представленного контроллером типа А, формирующего сигналы поверхностной волны с возможностью перестройки амплитуды и частоты.
1.2 Алгоритм функционирования контроллера
Схема алгоритма функционирования контроллера типа А представлена на рис.1.2.1.
Рис.1.2.1 Схема алгоритма функционирования имитатора-контроллера A-Ctrl
Контроллер после выполнения диагностирования (блок 1), получения сообщения о работоспособности аппаратуры и программного обеспечения, последующей инициализации (блок 2) ожидает получения пакета управления (блок 3), затем после принятия всех пакетов управления, выделяет свой и выполняет настройку параметров своего сигнала в соответствии с полученными указаниями. После подготовки к функционированию в указанном режиме, им выдается сигнал "Готов" (блок 4) на ПК, чем подтверждает готовность начать работу. При получении команды "Старт" через фиксированный интервал времени запускается режим генерации временного паттерна и начинается передача разнополярных импульсных сигналов в аналоговый блок для формирования навигационных сигналов (блок 7). В течение всего времени генерирования навигационных сигналов контроллер должен следить за поступлением очередного пакета управления (блок 7) и при его появлении прекращать генерацию и подготовиться к настройке на новый режим (переход на блок 2).
Разрабатываемый контроллер представляет собой устройство, генерирующее импульсы (временной паттерн) для формирования навигационного сигнала и использует канал управления для получения управляющей информацией и сигналов "Старт". A-Ctrl - контроллер, которому соответствует программный модуль, состоящий из модуля инициализации (блок 2), ориентированный на поддержку приема пакетов управления (блок 3) и пакета "Старт" (блок 5). Программный модуль включает в себя блок фиксированной задержки (блок 6), внутри которого имеется специальный модуль управления амплитудой. Также он включает таймер временного паттерна, поэтому следует к нему отнести еще блок 7.
В основу построения этого варианта имитатора-контроллера положена линейная зависимость выходного радиосигнала аналогового блока имитатора при изменении амплитуды возбуждающего дельта-импульса. Для управления амплитудой дельта-импульса предлагается использовать умножающий ЦАП.
На временной диаграмме рис.1.2.2 пре Тповт - период повторения пачек сигнала (по заданию численное значение соответствует S).
Рис.1.2.2 Временная диаграмма запуска режима генерации временного паттерна РН-сигналов
1.3 Спецификация входных и выходных сигналов
Контроллер-имитатор, используемый в курсовом проекте можно представить в виде следующей упрощенной блок-схемы (рис.1.3.1.)
Рис.1.3.1 Упрощенная блок-схема контроллера-имитатора
Контроллеры типа А имеют устройство 1 (устройство ввода-вывода - УВВ1 или IO1) для приема управления настройкой контроллера (вход 1) и передачи одиночного сигнала готовности к работе (выход 2). Второе устройство УВВ2 (IO2) предназначено для формирования временного паттерна РН-сигналов. Предполагается, что импульсы положительной полярности 3 и отрицательной полярности 4 формируются на разных выходах УВВ2. У них так же имеется отдельный цифровой канал управления амплитудой как правило, 8-разрядный, который реализуется УВВ3, после чего на выходе образуются импульсы положительной полярности 5 и отрицательной полярности 6, но с измененной амплитудой. Разрабатываемый контроллер представлен следующей блок-схемой (рис.1.3.2.).
Рис.1.3.2 Блок-схема контроллера типа А
Параметры радионавигационного сигнала: все сигналы имеют несущую частоту 100 кГц и занимают диапазон частот от 90 до 110 кГц. Огибающая одиночного радиосигнала описывается экспоненциально-степенной функцией . При сигнал имеет длительность переднего фронта 65 мкс и максимальную крутизну фронта в пределах 3-го периода высокочастотного заполнения.
Различная полярность импульсных сигналов временного паттерна приводят к различной фазе высокочастотного заполнения при неизменной форме огибающей (рис.1.3.3.).
Рис.1.3.3 Фазовое кодирование сигнала
Фазовый код сигналов для курсового расчета - резервный код ВЩ4, содержит в себе код Франка, используемый на практике, и дополнительные пары кодов, имеющие аналогичные характеристики. Периоды повторения пакетов сигналов для курсового проекта представлены резервным периодом повторения типа S и имеет дополнительные частоты 0-7, которые могут быть использованы в пределах задания основной.
Так как управление тремя параметрами (частотой, задержкой распространения и амплитудой), пакет управления целесообразно выполнить в виде шести байтов.
Адресным параметром для передачи управления информации является первые два байта пакета управления: первый байт - код ASCII, второй байт - номер имитатора в группе (задается как 04). Остальные байты пакета задают параметры управления: третий байт - номер дополнительной частоты J от 0-7, четвертый байт - используется для задания задержки, пятый байт - для задания амплитуды, последний имеет одно и то же значение - FFh, что указывает на окончание пакета управления контроллера. Пакеты управления (кадры) передаются через интервалы времени, необходимые для приема, идентификации и передачи ответного сигнала "Готов". Отсутствие ответного сигнала свидетельствует о неисправности конкретного контроллера в системе.
Пакет "Старт" передается в виде 3 байтов, первый, из которых - 00h, второй задается ASCII-кодом литеры S и третий - кодом 0FFh. Ответный сигнал о готовности работы контроллера к работе выводится в виде одиночного байта, содержимое которого соответствует его номеру.
1.4 Упрощенная структурная схема контроллера
В состав контроллера войдут стандартные блоки CPU, ROM, RAM, IO1 (УВВ1), IO2 (УВВ2) и IO3 (УВВ3), связанные системной шиной SB. Устройство УВВ2 предназначено для вывода сформированного временного паттерна, который в свою очередь требует таймер (таймер временного паттерна), генерирующий требуемые временные интервалы. Учитывая необходимость диагностики устройства, в состав контроллера нужно включить устройство индикации, которое поможет в диагностировании неисправного устройства и укажет режим работы исправного контроллера. Структурная схема основного варианта контроллера представлена на рис.1.4.1.
Рис.1.4.1 Упрощенная структурная схема основного варианта контроллера
В контроллер введены индикаторное устройство (ИУ) и таймер временного паттерна (ТВП). ТВП формирует сигналы, соответствующие моментам времени формирования импульсов, полярность которых задается УВВ2 в соответствии с временным паттерном. Кроме сигналов системной шины SB показаны сигналы тактовой частоты (CLK), необходимые для работы делителей частоты и таймеров, входящих в состав контроллера. Тактовая частота потребуется в устройстве ТВП, в УВВ1, особенно если передача с ПК производится по последовательному интерфейсу, в индикаторном устройстве.
На рис.1.4.1 показаны связи на входы запросов прерывания МП. Такие сигналы информируют МП об окончании очередного интервала временного паттерна, о необходимости обновления информации на дисплее индикаторного устройства и о появлении новой управляющей информации из ПК. Связь УВВ2 с системной шиной зависит от структуры построения блока. Эта связь может отсутствовать, если для реализации устройства используется непрограммируемый ИС. В контроллере типа А должно быть добавлено устройство УВВ3 (IO3). В основу проектирования контроллера положен микропроцессор i8085 и микросхемы его поддержки, которые образуют микропроцессорный комплект MSC-85. Использование в задании микросхемы комплекта MSC-85 обозначаются в задании на курсовой проект как "основной вариант". Выделим подлежащие разработки блоки в соответствии с заданным вариантом реализации проектирования для контроллера типа А.
В соответствии с заданием разработке подлежат блок УВВ1, блок ТВП и блок ИУ. Подробной разработке подлежит блок УВВ2+УВВ3, задающий регулируемую амплитуду дельта-импульсов. Остальные периферийные блоки используются из "основного варианта".
Исходя из задания блок УВВ1 должен быть реализован в виде двунаправленной схемы на прием пакета от ПК и вывода ответа после приема своего пакета управления и настройке контроллера. Ввод данных должен быть выполнен по прерыванию.
В основу проектируемого контроллера положен микропроцессор i8085; одна из трех модификаций этого МП (8085АН, 8085АН-1, 8085АН-2) должна быть использована в зависимости от тактовой частоты, по заданию равной 3 МГц. Указанная тактовая частота позволяет использовать МП типа 8085АН-2. Выбор пал на этот прибор, как на более дешевый.
Выводы по разделу №1
В ходе уточнения задания на проектирование было установлено, что для разработки контроллера-имитатора радионавигационного сигнала типа А разработке подлежат устройства, которым соответствуют блоки УВВ1, ТВП, ИУ, УВВ2 и УВВ3. Последние два подлежат подробной разработке, в особенности УВВ3, являющийся характерным для данного типа контроллера, так как в нем должно происходить управление амплитудой дельта-импульсов. Так же выяснено, что для реализации требуемого контроллера ввод данных должен быть выполнен по прерыванию, а на основании указанной в задании тактовой частоты и экономичности был выбран микропроцессор 8085АН-2.
2. Разработка аппаратной части заданного блока контроллера
2.1 Выбор МП по заданной тактовой частоте и описание блоков памяти
Исходя из раздела 1 пункта 1.4 заданной тактовой частоте, равной 3 МГц, был выбран как менее энергозатратный МП типа 8085АН.
В состав контроллера входит память типа RAM (прибор 8155), которая может быть подключена непосредственно к МП, и память типа ROM (прибор 27С256), которая не обладает такой особенностью и требует разделения мультиплексной шины AD на адресную часть и данные. [3] Такое разделение обычно выполняется введением специального регистра-защелки (помещена в блок памяти).
Еще одна особенность МП состоит в том, что для управления БИС общего назначения необходимо сформировать системные сигналы MEMR#, MEMW#, I/OR#, I/OW#, для чего обычно используется комбинационная схема, например демультиплексор. Сигнал RESET IN# подключается к внешней кнопке перезапуска контроллера. Сигнал READY для МП 8085АН не используется, пояснение будет дано ниже. Функциональная схема центрального процессорного устройства представлена на рис.2.1.1.
Рис.2.1.1 Функциональная схема CPU
Схема модуля памяти приведена на рис.2.1.2.
Прибор 8155, реализующий память типа RAM, использует мультиплексную шину AD и сигналы управления МП (RD#, WR#, IO/M#). Выбор кристалла реализуется сигналом СЕ#. Объем памяти - 256 байт. [2]
Рис.2.1.2 Функциональная схема блока памяти контроллера
В качестве модуля памяти типа ROM используется БИС 27С256 [5]. Модуль имеет 15-разрядную шину адреса (A0…A14) и 8-разрядную шину данных (О0…О7). Управление производиться сигналом ОЕ# (вывод разрешен), в который для своего создания требует системного сигнала MEMR# и сигнала выбора кристалла CE#.
Поскольку БИС 27С256 - единственная микросхема, которая не допускает подключения к мультиплексной шине AD [0, 7]. Модуль памяти типа ROM занимает пространство в 32 Кбайт, начинающееся с нулевого адреса 0000h; модуль памяти типа RAM может быть расположен в любом месте адресного пространства МП (точное расположение будет определено далее в 2.3.). Стоит отметить, что прибор 8755, используемый для приема пакетов управления, также имеет модуль памяти типа ROM объемом 2 Кбайт, поэтому его необходимо учитывать в блоке памяти и предусмотреть место в пространстве памяти, причем лучше его расположить сразу же за основным модулем типа ROM. [3]
Прибор 8755 обладает невысоким быстродействием, поэтому может работать без сигналов READY для МП 8085АН, который используется в данном варианте курсового расчета. Поэтому в использовании автомата готовности, имеющегося в приборе 8755, необходимости не будет.
Временной паттерн состоит из 18 временных интервалов (так как тип станции ВЩ), имеющих значения 1000 (между каждым из первых восьми импульсов), 2000 (между восьмым и девятым), 50000 (между полупачками) 50000- (7*1000+2000) мкс, в начале каждого из которых в диалоговый блок выводятся короткие дельта-импульсы положительной или отрицательной полярности.
Для формирования таких интервалов требуется программируемый таймер, имеющий возможность изменять модуль счета от 1000/Т0 до 43000/Т0, где Т0 - период счетной частоты таймера. Для данного вариант он равен 0.33 мкс, что соответствует частоте 3 МГц, тогда максимальный модуль счета, требуемый от таймера, равен 129000.
Будем использовать для построения таймера временного паттерна (ТВП) синхронные счетчики 555ИЕ10. Учитывая, что эти счетчики имеют 4 разряда, для реализации требуемого модуля необходимо log16 129 000 = 4,24, т.е.5 микросхем.
Пять микросхем (DD3…DD7 на рис.3.16), соединенные последовательно, создадут счетчик на 20 разрядов. Значение 220 = 1 048 576 модуль счета выбранного варианта таймера.
Помимо разрабатываемого в данной КР блока УВВ3, имитатор содержит УВВ1 и УВВ2, ТВП, индикаторное устройство и аналоговый блок. Требования и ключевые особенности реализации этих блоков были изложены в разделе 1, а реализовывать их предполагается по "основному варианту" согласно [3] (индикаторное устройство: раздел 3.6, УВВ1: разделы 3.3 и 3.4, УВВ2: 3.10)
2.2 Полная разработка заданного блока
Согласно задания на курсовой проект и сходя из результатов раздела 1 главной задачей является разработка блока УВВ3. Как было выяснено ранее, данный блок предназначен для управления амплитудой дельта импульсов и реализуется умножающими цифроаналоговыми преобразователями DAC-0808.
На выходе УВВ3 должны формироваться дельта-импульсы, имеющие как положительную, так и отрицательную полярность, то есть должно быть два выхода, поэтому необходимо использовать 2 цифроаналоговых преобразователя.
DAC0808 - это 8-битный цифро-аналоговый преобразователь, который имеет следующие параметры:
время установления составляет 0,15 мкс;
интерфейс Parallel;
тип выхода Current;
тип источника опорного напряжения Ext;
напряжение питания цифровой части от 4.5В до 5.5В;
ток потребления 22 мА;
потребляемая мощность 2 мВт.
Схема реализации используемого ЦАП представлена на рисунке 2.2.1.
Рис.2.2.1 Схема реализации DAC0808
В данном ЦАП входы подписаны не в привычном виде, когда чаще используется с А0 по А7, а начиная с А1 и заканчивая А8. Также начинаются они со старшего байта, а не с младшего. Правая часть схемы служит для корректировки и усиления синтезированного радиосигнала.
Следует отметить, что к используемому DAC0808 обязательно должен быть подключён регистр хранения, для сохранения в нем весового коэффициента дельта-функций (смотреть рис.2.2.2.). Он сохраняет одно значение амплитуды на протяжении одного цикла работы для всех импульсов в пачке, пока не придет новый пакет управления, поэтому достаточно одного. Выбор пал на восьмиразрядный регистр 555ИР23.
Рис.2.2.2 DAC0808 с регистром хранения 74HC374 (555ИР23)
Следует отметить, что на выходе ЦАП обязательно должен стоять усилитель, так как без него радиосигнал получался бы очень слабым, причем выход у DAC0808 токовый, поэтому с помощью инвертирующего ОУ нужно преобразовать его в напряжение, то есть на один ЦАП необходимо использовать два ОУ. Также нужно учесть, что необходимо инвертировать сигнал, который отвечает за отрицательные дельта-импульсы, поэтому необходимо использовать инвертор, в качестве которого снова используем соответствующий ОУ.
На вход цифроаналогового преобразователя подается сигнал в качестве опорного напряжения с ТВП (как сигнал переполнения P8) в виде дельта-функций. Также следует учитывать, что у каждого импульса имеется собственная начальная фаза, поэтому нужно разделить импульсы по полярностям, а затем отправлять на ЦАП. Вариант реализации представлен на рисунке 2.2.3 Стоит обратить внимание, что инвертирующие операционные усилители, превращающие выходной ток в напряжение, имеют коэффициент передачи равный - 1. В регистр же загружается по шине AD код содержащий информацию о весовом коэффициенте дельта-импульсов и сигнал CS88#.
Расчет проведем на основании схем, представленных на рис.2.2.4.
Рис.2.2.4 Типы каскадов на ОУ
Формулы для расчета коэффициентов усиления ОУ различного типа:
для инвертирующего, и для неинвертирующего. Таким образом, у резисторов на ОУ с выхода ЦАП взяты номиналы по 5 кОм (это R1-R4), а для усиления выходного напряжения и преобразования отрицательной дельты в положительную 2.7, для отрицательной дельты , чтобы обеспечить одинаковый уровень импульсов. Резисторы R5, R7, R8, R10 взяты с номиналом 24.9 кОм, R6=67.3 кОм, R9=43 кОм. Соответственно, так как каскады подключены последовательно общий коэффициент усиление является произведение каскадных Кус.
2.3 Распределение пространства памяти между ROM и RAM и пространства УВВ между периферийными устройствами
Согласно [3], селектор адреса строится на основе демультиплексора (например, 555ИД7), на входы которого подаются линии адреса А11-А15. Пространство адресов распределить можем аналогичным образом, как это представлено в [3]. Схема дешифратора адреса представлена на рис.2.3.1., и карта памяти при таком селекторе - на рис.2.3.2.
Рис. 3.1 Дешифратор адреса
Рис. 3.2 Карта памяти
Таким образом, с учётом наиболее оптимального расположения адресов устройств в памяти, все адреса можно свести в одну таблицу, в которой представлена сводная информация по элементам памяти и устройствам ввода/вывода функциональных блоков.
Таблица 2.3.1 Память и устройства ввода/вывода контроллера
Функциональные блоки |
Память |
Размер |
Адрес |
УВВ |
Размер |
Тип ИМС |
|
CPU |
- |
- |
- |
- |
- |
- |
|
ROM |
ДА |
2Кбайт |
Любой |
- |
- |
8755 |
|
RAM |
Да |
256 байт |
Любой |
- |
- |
8155 |
|
Индикаторное устройство |
_ |
_ |
_ |
Да |
2 байта |
555ИР23 |
|
Устройство ввода пакетов управления (IO1) |
Да |
4 байт |
8755 |
||||
Устройство формирования дельта-импульсов (IO3) |
Да |
1 байт |
555ИР23 |
||||
Таймер временного паттерна |
Да |
6 байт |
8155 |
Таблица 2.3.2 Адреса модулей и устройств проектируемого контроллера
Функциональные блоки |
Память |
УВВ |
Сигнал выбора |
|||
Размер |
Адрес |
Адрес |
Размер |
|||
1 |
2 |
3 |
4 |
5 |
6 |
|
Модули памяти |
||||||
ROM (27C256) |
32 Кбайт |
0000h-7FFFh |
CSROM# |
|||
ROM (ROM 8755) |
2 Kбайт |
8000h-87FFh |
CS80# |
|||
RAM (RAM 8155) |
256 байт |
8800h-8FFFh |
CS88# |
Устройства ввода-вывода |
|||||||
Индикаторное устройство |
Регистр данных 555ИР23 |
90h |
1 байт |
CS90# |
|||
Регистр разрядов 555ИР23 |
98h |
1 байт |
CS98# |
||||
Таймер прибора 8155* |
8Ch…8Dh |
2 байт |
CS88# |
||||
Устройство вводов пакетов управления (IO1) |
Регистры данных (ports A, B прибора 8755**) |
80h…81h |
2 байт |
CS80# |
|||
Таймер временного паттерна |
Регистры временного хранения (ports A, B, C прибора 8155*) |
89h…8Bh |
3 байт |
CS88# |
|||
Устройство формирования дельта-импульсов (IO3) |
DAC0808 |
88h |
1 байт |
CS88# |
* Для прибора 8155 не учтен регистр RGCW, который занимает 1 байт со смещением 0 (адрес в пространстве УВВ 80h).
** Для прибора 8755 не учтены регистры DDRA и DDRB, которые используются для задания направления передачи и занимают по 1 байту со смещением 2 и 3 (адреса 82h и 83h соответственно).
2.3 Уточнение структурной схемы с отражением всех принятых решений
На рис.2.4 приводится структурная схема спроектированного контроллера с учётом используемых аппаратных решений. Схема содержит упомянутые ранее блоки кроме аналоговой схемы формирователя радиоимпульсов. Системная шина представлена мультиплексной шиной данных/адреса AD [0,7], шиной старшего адреса A [7,15] и шиной управления CB, по которой передаются сигналы управления внешними устройствами, системные сигналы приборов общего назначения и прерывания. Для двухуровневой дешифрации адреса в схему введен селектор адреса, формирующий сигналы, выбирающие микросхемы, входящие в состав устройства. Разработанный УВВ3 связан с системной шиной через шину данных (поступает на соответствующие входы 8155), а также с ТВП, выходы которого играют роль УВВ2, и сигналом CS88# с селектором адреса.
Рис.2.4 Уточненная структурная схема контроллера имитатора сигналов
* прибор 8155, используется в трех блоках: памяти (в части модуля RAM), в таймере временного паттерна (в части портов ввода-вывода) и в индикаторном устройстве (как таймер). Для этого прибора сигналы управления показаны для каждого блока (трижды).
** прибор 8755 используется в схеме два раза. Его сигналы управления также показаны два раза.
*** сигнал готовности READY, формируемый прибором 8755, подключается к входу микропроцессора 8085 в зависимости от используемой тактовой частоты последнего. В нашем случае он не нужен (смотрите 2.1.).
3. Разработка программного обеспечения
3.1 Схема алгоритма модуля, определенного в задании и уточненного в разделе 1
Схема алгоритма программного модуля, используемого для работы контроллера имитатора, была приведена в пункте 1.2 Подробная схема, построенная в соответствии с заданием на проектирование приведена на рис.3.1.1.
Рис.3.1.1 Схема алгоритма программы
Схема алгоритма ППОП, которая вводит каждый байт по прерыванию от входной линии стробов, приведенная на рис.3.1.2 была взята из [3]. В ППОП производится чтение принятого байта и запись в буфер для всех байтов пакета, что по принципу аналогично ППОП для проектируемого контроллера.
Рис.3.1.2 Схема алгоритма ППОП взятая за основу
Полученный алгоритм на основании данной схемы, который используется в программном модуле представлен на рис.3.1.3.
Рис.3.1.3 Схема алгоритма ППОП, используемая в программном модуле
3.2 Структуры данных, используемые для работы контроллера
В этом варианте производится прием пакетов управления, определения "свой/чужой" прием пакета "Старт" и выбор нужной таблицы временного паттерна из набора таблиц, заранее подготовленных для этого варианта. Для учебных целей будем выполнять идентификацию пакетов управления после приема всего пакета. Такая постановка задачи требует организацию буфера (BUF) на 12 байт, причем первые 6 байт будут использоваться для хранения "своего" пакета, а остальные для временного помещения данных о "чужих пакетах" и пакета "Старт". Необходима также и ячейка AMP для хранения значения амплитуды импульсов размером 1 байт. Для возможности адресации любого байта в процессе приема пакета и его идентификации необходим указатель данных (адресная переменная размером 2 байт, значение которой не должно выходить за пределы расположения буфера). Также требуются переменные для хранения состояния приема (свой пакет или чужой) и учета длительности принятого пакета. Возможная структура данных, расположенная в перемещаемом сегменте data, будет иметь вид
SEG data
BUF DS 12; буфер пакетов управления
AMPDS1; ячейка для хранения значения амплитуды
POINT DS 2; указатель записи в буфер
COUNT DS 1; счетчик записей
FLAG_RDY DS 1; флаг - битовая переменная
; = 1 пакет принят, 0 иначе
STRT_ENABLE DS 1; флаг разрешения старта
; = 0 при запуске программы
; = 1 после получения своего пакета управления
Структуры таблиц временного паттерна должны располагаться в перемещаемом сегменте памяти типа ROM и иметь формат вида
SEG code
TABL_TABL:
; таблица адресов расположения таблиц паттернов для всех J.
DW TABL0; J = 0
DW TABL1; J = 1
DW TABL2; J = 2
DW TABL3; J = 3
DW TABL4; J = 4
DW TABL5; J = 5
DW TABL6; J = 6
DW TABL7; J = 7
Рассчитывать данные таблиц TABL0, …, TABL7 в данном варианте не требуется, однако они должны быть обозначены.
Поскольку одной из задач варианта А-ctrl является настройка и запуск таймера временного паттерна, то для хранения начального адреса рабочей таблицы необходима адресная переменная POINTF0 и переменная-указатель в этой таблице - POINTF:
SEG data
POINTF0 DS 2; указатель начала выбранной таблицы
POINTF DS 2; указатель внутри выбранной таблицы
3.3 Описание схемы алгоритма модуля
Как видно из рис.3.1.1 программный модуль начинается с инициализации памяти, стека, портов УВВ, и регистра используемого для хранения значения амплитуды импульсов.
Далее происходит установка указателей для начала выбранных таблиц и создание ячейки для амплитудного значения.
Далее начинается генерация паттернов по различным таблицам. Этот процесс включает в себя всю часть алгоритма, представленную ниже. Начинается работа главной программы, помеченной меткой PROG. В ней идет прием пакета управления, после чего идет проверка на соответствие, если пакет определился как свой, то значение амплитуды, содержащееся в пятом байте, записывается в регистр ЦАП. Далее алгоритм работает аналогично алгоритму для контроллеров типа F.
3.4 Исходный текст программы
SEG DATA
; инициализация памяти
ROM EQU 0000H
RAM EQU 8800H
LEN_RAM EQU 0100H; для RAM 8155
KONEC EQU 0FFH
; инициализация стека
STACKSIZEEQU20H
DEFSEG STACK,CLASS=DATA,START=RAM+LEN_RAM-STACKSIZE
SEG STACK
STACKR: DS STACKSIZE
STPOINT EQU $
; инициализация портов ввода-вывода 8155
DEFSEGIOSPACE1, START=89h, CLASS=IOSPACE
SEGIOSPACE1
CW8155DS 1; режим работы (status word)
PA8155 DS 1; порт А 8155
PB8155 DS 1; порт В 8155
PC8155 DS 1; порт C 8155
TL8155 DS 1; младший байт счетчика 8155
TH8155 DS 1; старший байт счетчика 8155
; инициализация портов ввода-вывода 8755
DEFSEGIOSPACE2, START=80h, CLASS=IOSPACE
SEGIOSPACE2
RGA DS 1; порт A 8755
RGB DS 1; порт B 8755
DDRA DS 1; конфигурирование порта А
DDRB DS 1; конфигурирование порта В
; инициализация регистра ЦАП
DEFSEGIOSPACE3, START=88h, CLASS=IOSPACE
SEGIOSPACE3
DACRG1 DS 1; регистр для ЦАПов
; сегмент пользовательских данных
DEFSEG DATA1, CLASS=DATA, START=RAM
SEG DATA1
POINTTABLDS2; указатель начала выбранной таблицы
AMPLDS1; амплитуда импульсов
; сегмент таблицы
DEFSEGTABL_PATT, CLASS=CODE
SEGTABL_PATT
; Будем генерировать паттерн ++-++++ - + +---+-++ +
TABL0:
; задержка перед началом генерации 1000мкс +
DB60h,0F0h,1Fh;
DB60h,0F0h,1Fh;
DB60h,0F0h,2Fh;
DB60h,0F0h,1Fh;
DB60h,0F0h,1Fh;
DB60h,0F0h,1Fh;
DB60h,0F0h,1Fh;
DB0C0h,0E0h,2Fh;
DB78h,E0h,11h;
; первая полупачка закончилась
DB60h,0F0h,1Fh;
DB60h,0F0h,2Fh;
DB60h,0F0h,2Fh;
DB60h,0F0h,2Fh;
DB60h,0F0h,1Fh;
DB60h,0F0h,2Fh;
DB60h,0F0h,1Fh;
DB0C0h,0E0h,1Fh;
; вторая полупачка закончилась
DB78h,E0h,11h;
DBKONEC
TABL1:
; задержка перед началом генерации 1000мкс +
DB60h,0F0h,1Fh;
DB60h,0F0h,1Fh;
DB60h,0F0h,2Fh;
DB60h,0F0h,1Fh;
DB60h,0F0h,1Fh;
DB60h,0F0h,1Fh;
DB60h,0F0h,1Fh;
DB0C0h,0E0h,2Fh;
DB0B0h,73h,1Ah;
; первая полупачка закончилась
DB60h,0F0h,1Fh;
DB60h,0F0h,2Fh;
DB60h,0F0h,2Fh;
DB60h,0F0h,2Fh;
DB60h,0F0h,1Fh;
DB60h,0F0h,1Fh;
DB60h,0F0h,1Fh;
DB0C0h,0E0h,2Fh;
; вторая полупачка закончилась
DB0B0h,73h,1Ah;
DBKONEC
DEFSEGRST75SEG, START=3Ch, CLASS=CODE
SEGRST75SEG
JMPRST75_TVP
DEFSEGRST65SEG, START=34h, CLASS=CODE
SEGRST65SEG
JMPRST65_IO
DEFSEGRST55SEG, START=2Ch, CLASS=CODE
SEGRST55SEG
JMPRST55_ID
; главная программа
DEFSEGBEGIN, START=00h, CLASS=CODE
SEGBEGIN
PROG:
LXISP,STPOINT; инициализация стека
LXIH, TABL0;
SHLD POINTTABL; инициализация указателя таблицы
MVI A,0;
STA RUNONCE; инициализация флага первого запуска
; инициализация БИС 8155
MVIA, 11001111b; таймер включен, все порты на выход
OUTCW8155;
; инициализация БИС 8755
.
WAIT_LOOP:
JMP WAIT_LOOP; ждём прерывания
; подпрограмма обработки запросов обработки прерываний от ТВП
RST75_TVP:
PUSHH;;
PUSHPSW; сохранение регистров общего назначения
LHLDPOINTTABL; загружаем текущее значение указателя
MOVA, M;
INR A; проверка на окончание таблицы
JZ TABLRST;
DCR A;
CONT:
OUTPA8155;
INXH;
MOVA, M;
OUTPB8155;
INXH; заполняем коды ТВП
MOVA, M;
OUTPC8155;
INXH;
TABLRST:
LXIH, TABL0;
SHLD POINTTABL;
MOVA, M; заново загрузить код
JMP CONT; возвращаемся к заполнению кодов
LOADINIT:
; подпрограмма записи амплитуды импульсов в регистры ЦАП
; предполагается, что ППОП R6.5 сохранила амплитуду в ячейку по адресу AMPL
PUSH PSW;
LDA AMPL; загрузка в аккумулятор значения амплитуды
OUT DACRG1; запись амплитуды в ЦАП
POP PSW;;
RET; возвращаемся в ППОП 6.5
; подпрограмма обработки пакетов от ПК
RST65_IO:
.
; "если пакет управления принят"
CALL LOADINIT; вызвать по окончанию приёма пакета управления
.
RET
; подпрограмма обработки запросов от динамического индикатора
RST55_ID:
.
RET
.
END
Заключение
Результатом выполнения курсового расчета стала разработка контроллера синтеза радиосигнала, включающая разработку необходимого для работы контроллера программного модуля. Разработка контроллера проводилась с учетом аппаратных особенностей реализации, указанных в задании и методических указаниях. В результате был разработан блок формирования дельта-импульсов УВВ3. Все остальные блоки, составляющие контроллер имитатора, были взяты из учебного пособия [3]. Итогом работы является спроектированный контроллер, формирующий сигналы поверхностной волны с возможностью перестройки амплитуды с помощью ручного ввода и частоты в пределах заданной основной.
Список использованных источников
1. Писарев С.Б., Борисов А.И., Хотин А.Л. Радионавигационное обеспечение России на пороге XXI века: импульсно-фазовые радионавигационные системы LORAN-C и "ЧАЙКА" как необходимые компоненты глобального интегрированного радионавигационного поля. // Технологическое оборудование и материалы №6 июнь, 1998 Труды научно-технической конференции "Новые технологии и научно-технические достижения промышленности - человеку, обществу, государству" - ПРОМТЕХЭКСПО XXI.
2. Пухальский Г.И. Проектирование микропроцессорных устройств: Учебное пособие для вузов. СПб.: Политехника, 2014.
3. Смирнов Б.И. Проектирование микроконтроллеров Учебное пособие СПб. 2008.
4. Радиотехнические системы: Учеб. для вузов по спец. "Радиотехника" /Ю.П. Гришин, В.П. Ипатов, Ю.М. Казаринов и др.; Под ред. Ю.М. Казаринова. М.: Высш. шк., 1990.
5. М. Гук. Аппаратные средства РС. Энциклопедия СПб.: Питер Ком, 1998.
Размещено на Allbest.ru
Подобные документы
Разработка контроллера прибора, обеспечивающего реализацию функций оцифровки аналоговых данных с выводом результата в виде графического вида сигнала. Выбор контроллера и элементов схемы, их описание. Общий алгоритм работы и листинг программы управления.
курсовая работа [1,1 M], добавлен 26.12.2012Физические основы электрокардиографии. Виды помех и их устранение. Погрешности измерения амплитудно-временных параметров ЭКГ. Разработка имитатора сигналов: узел контроля напряжения батареи, расчет блока питания. Проведение поверки электрокардиографа.
магистерская работа [1,1 M], добавлен 05.02.2012Методика разработки схемы устройства для преобразования параллельного восьмиразрядного кода в длительность ШИМ-сигнала. Особенности создания программного обеспечения с помощью команд контроллера AT90S2313. Его проверка и отладка в среде AVR Studio 4.0.
контрольная работа [114,6 K], добавлен 07.08.2013Преобразование релейно-контактной схемы управления механизмом подъема крана с использованием силового магнитного контроллера. Группировка и обозначение сигналов. Механические характеристики магнитного контроллера. Функциональные схемы узлов механизма.
курсовая работа [471,5 K], добавлен 09.04.2012Последовательный связной интерфейс, скорость передачи данных. Интерфейс и его сигналы. Программная эмуляция SCI. Оборудование, особенности микросхемы. Структурная схема контроллера управления последовательным портом. Описание программного обеспечения.
курсовая работа [670,7 K], добавлен 23.06.2012Характеристика, применение и назначение микроконтроллерных систем управления. Разработка контроллера инверторного сварочного аппарата, обеспечивающего работу манипулятора. Общий алгоритм работы, составление программного обеспечения для данного блока.
курсовая работа [1,6 M], добавлен 26.12.2012Разработка контроллера управления цифровой частью системы, перечень выполняемых команд. Описание алгоритма работы устройства, его структурная организация. Синтез принципиальной электрической схемы, особенности аппаратных затрат и потребляемой мощности.
курсовая работа [318,8 K], добавлен 14.06.2011Программируемый логический контроллер, его структура и внутреннее устройство, принцип действия и функциональные возможности, описание электрооборудования. Разработка программы работы логического контроллера, экономическое обоснование его создания.
дипломная работа [802,4 K], добавлен 25.04.2015Разработка функциональной схемы устройства, осуществляющего обработку входных сигналов в соответствии с заданным математическим выражением зависимости выходного сигнала от двух входных сигналов. Расчет электрических схем вычислительного устройства.
курсовая работа [467,5 K], добавлен 15.08.2012Разработка микроконтроллера для контроля ритма дыхания больного в реанимационной палате. Структурная и принципиальная схемы микропроцессорного контроллера. Модули процессора, памяти, ввода и вывода, режимы индикации. Описание работы, принципиальная схема.
курсовая работа [197,6 K], добавлен 06.12.2013