- •Проектирование микроконтроллеров
- •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.
3.2.Блок памяти
Как указано в табл. 2.3, память типа RAM реализуется модулем памяти прибора 8155 [3]. Прибор использует мультиплексную шину AD и сигналы управления МП (RD#, WR#, IO/M#). Выбор кристалла реализуется сигналом CE#. Объем памяти 256 байт.
В качестве модуля памяти типа ROM в задании предложено использовать БИС 27C256 [4]. Модуль [3, рис. 3.18] имеет 15-разрядную шину адреса (A0...A14) и 8-разрядную шину данных (O0…O7). Управление производится сигналом OE# (вывод разрешен), который для своего создания требует системного сигнала MEMR# и сигнала выбора кристалла CE#.
Поскольку БИС 27С256 единственная микросхема, которая не допускает подключение к мильтиплексной шине AD[0, 7], целесообразно регистр (защелку), выполняющий демультиплексирование адреса, расположить в этом блоке, а не в CPU. Модуль памяти типа ROM занимает пространство в 32 Кбайт, начинающееся с нулевого адреса 0000h; модуль памяти типа RAM может быть расположен в любом месте адресного пространства МП (точное расположение модуля определено в 3.13). Схема модуля приведена на рис. 3.2.
В 3.3 описывается использование прибора 8755 для приема пакетов управления, но прибор имеет и модуль памяти типа ROM объемом 2 Кбайт,
|
Рис. 3.15. Функциональная схема блока памяти контроллера |
поэтому его необходимо учесть в блоке памяти и предусмотреть место в пространстве памяти, причем лучше его расположить сразу же за основным модулем типа ROM.
Прибор 8755 обладает невысоким быстродействием (время доступа прибора 8755A равно 450 нс), поэтому может работать без сигналов READY только для микропроцессоров 8085AH. Указанный тип МП предназначен для работы на частотах до 3 МГц, более высокочастотные варианты МП должны использовать автомат готовности, имеющийся в приборе 8755. При подключении выходного сигнала этого автомата готовности к входу READY МП необходимо обратить внимание на его Z-состояние и добавить «подтягивающий» резистор, подключенный к Vcc. Подробнее автомат готовности описан в [3].
3.3.Блок приема пакетов управления
Блок приема пакетов управления на структурной схеме рис. 2.12 обозначен как УВВ1. Исходя из задания, блок должен быть реализован в виде двунаправленной схемы на прием пакета от ПК и вывода ответа после приема своего пакета управления и настройки контроллера. Ввод данных должен быть выполнен по прерыванию.
Структурная схема устройства программного ввода с квитированием приведена во второй дополненной версии [3, рис. 2.10], помещенной на компакт-диске.
Структурные схемы указывают на необходимые сигналы для ввода (внешняя шина данных DI[0,7], строб STB# и сигнал квитирования IBF) и вывода (строб OBF# и сигнал подтверждения ACK# и шина данных DO[0, 7]). Там же приведена принципиальная схема. Эта схема может быть принята за основу блока. При этом должны быть учтены требования аппаратной реализации задания, т. е. использование портов ввода-вывода прибора 8755.
В данном случае это означает, что вместо регистров 1533ИР22 и 1533ИР23, изображенных в [3, рис. 2.10], должны быть использованы выходные регистры портов (PA[0, 7], PB[0, 7]) прибора 8755 (структура портов прибора 8755 приведена в [3, рис. 3.132]). Реализация остальных элементов должна быть выполнена с учетом использования прибора 8755. Запрос прерывания, связанный в устройстве ввода с появлением строба IBF, должен быть подан на вход прерывания МП R6.5.
Для вывода ответного сигнала линия подтверждения прерывания (ACK) может быть опущена, так как ответный сигнал представляет одиночный байт и проблем с его приемом в ПК не предвидется, однако, учитывая возможные модификации системы в дальнейшем, будем использовать полный вариант.
Функциональная схема устройства ввода пакетов управления, построенная с учетом указанных ограничений, приведена на рис. 3.3. Управление триггерами квитирования ввода (IBF) и вывода (OBF#) производится сигналами OE1 и OE2, которые дублируют сигналы чтения входных пакетов (чтение регистра данных порта A) и записи ответного сигнала (запись в регистр порта B). Подробности см. в [4, табл. 3.29].
|
Рис. 3.16. Функциональная схема устройства приема пакетов управления |
Замечание. Изображенное на рис. 3.3 решение требует использования дополнительных ИС (DD2, DD3) для формирования сигналов OE1#, OE2# и инвертирования адресных сигналов (A8, A9). Решение можно упростить, если использовать свободные (если имеются) сигналы CS# с выхода селектора адреса. Такое изменение схемы, естественно, потребует изменения программ драйверов, обслуживающих ввод и вывод данных.
Другие варианты схем параллельного вода пакетов управления. Рассмотренный вариант имеет близкий аналог – схему, в которой регистры данных реализованы на отдельных внешних регистрах (например, 1522ИР23). Такое решение рассмотрено в 2.3 [3].
Еще один вариант основан на использовании прибора 8155, который имеет в своем составе порты A и B, специально предназначенные для программной и по прерыванию работы в режиме ввода-вывода с квитиро-ванием [3].
Следующий вариант ([4, рис. 2.17]) предполагает использования двунаправленной шины данных при обмене данными между ПК и контроллером. Имеющейся в [4] информации вполне достаточно для построения такого приемопередатчика и написания программ-драйверов.
