Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
159
Добавлен:
21.02.2014
Размер:
1.48 Mб
Скачать

2.5 Организация ввода-вывода информации в микроконтроллере

Для связи МК 1816 с объектом управления, для ввода и вывода информации используются 27 линий. Эти линии сгруппированы в 3 порта по 8 линий в каждом и могут быть использованы для вывода, ввода или для ввода—вы­вода через двунаправленные линии. Кроме портов ввода— вывода, имеются 3 входные линии, сигналы на которых могут изменять ход программы по командам условного пере­хода: линия используется для ввода в МК сигнала запроса прерывания от внешнего источника; линия Т0 предназначена для ввода тестирующего сигнала от двоич­ного датчика объекта управления; кроме того, под управ­лением программы (ENTO CLC) по этой линии из МК мо­жет выдаваться сигнал синхронизации; линия Т1 исполь­зуется для ввода тестирующего сигнала или в качестве вхо­да счетчика событий (по команде STRT CNT).

Порты ввода — вывода Р1 и Р2. Каждая линия портов Р1 и Р2 может быть программным путем настроена на ввод, вывод или на работу с двунаправленной линией передачи. Специальная схемотехника цепей вывода портов Р1 и Р2, которая получила название квазидвунаправленной структуры, позволяет выполнять ввод, вывод и двунаправ­ленные передачи, несмотря на то, что выходы схем вывода статически заперты. Каждый контакт ввода - вывода пор­тов Р1 и Р2 является выходом с открытым стоком и входом с высоким импедансом, соответствующим по логическому уровню сигналу 1. На рисунке 9 показана схема одной линии ввода — вывода. Линия постоянно подключена к источнику электропитания +5В через резистор большого сопротив­ления (50 КОм), обеспечивая для единичной стандартной ТТЛ-нагрузки достаточный входной ток, соответствующий логической 1. В то же время потенциал в линии может быть приближен к потенциалу земли (уровень логического 0) нулевым сигналом на выходе стандартной ТТЛ-схемы.

Именно это обстоятельство и позволяет использовать ста­тически запертую схему вывода как для ввода, так и для вывода информации.

Рисунок 9 – Функциональная схема портов ввода – вывода Р1 и Р2

При передаче на выход из МК уровня 1 по сигналу ЗА­ПИСЬ для ускорения переходного процесса от 0 к 1 на ко­роткое время (0,5 мкс) открывается верхний МОП-транзи­стор с относительно низким сопротивлением (5 КОм). При передаче в линию уровня 0 открытым оказывается нижний МОП-транзистор выходной схемы с сопротивлением 3 КОм. Это сопротивление достаточно малое для того, чтобы обес­печить отвод тока из входной цепи ТТЛ-нагрузки.

Для того, чтобы настроить некоторую линию на режим ввода в МК, необходимо перед этим в буферный D-триггер этой линии записать 1. При этом нижний МОП-транзистор выходной схемы окажется закрытым и это обеспечит ТТЛ-источнику вводимого сигнала высокоимпедансную нагрузку. Сигнал системного сброса СБРОС автоматически записы­вает во все линии портов Р1 и Р2 сигнал 1.

Квазидвунаправленная структура портов Р1 и Р2 специфична тем, что в процессе ввода информации выполняется операция логического И над вводимыми данными и текущими (последними выво­димыми) данными. Для того, чтобы можно было осущест­вить ввод, необходимо следить за тем, чтобы в со­ответствующих линиях ввода сохранялось значение 1. Квазидвунаправленные буферные схемы портов Р1 и Р2 и ко­манды логических операций ANL и ORL представляют эффективное средство маскирования для об­работки однобитовых входов и выходов в МК.

В системе команд МК есть команды, которые позволя­ют выполнять запись нулей и единиц в любой разряд или группу разрядов порта. Но так как в этих командах маска задается непосредственным операндом, то необходимо знать распределение сбрасываемых и устанавливаемых ли­ний на этапе разработки исходной программы. В том слу­чае, если маска вычисляется программой и заранее не из­вестна, то в ОЗУ необходимо иметь копию состояния порта вывода. Эта копия по командам логических операций сое­диняется с вычисляемой маской в аккумуляторе и затем загружается в порт. Необходимость этой процедуры вызва­на тем, что квазинаправленная структура не позволяет вы­полнить операцию чтения состояний портов Р1 и Р2, за­фиксированных по последней команде вывода.

Порт Р2 отличается от порта Р1 тем, что его младшие 4 бита могут быть использованы для расширения МК-системы по вводу - выводу. Через младшую тетраду порта Р2 по специальным командам с обращением к портам Р4—Р7 возможен доступ к четырем внешним четырехбитным пор­там ввода—вывода. Работа этих внешних портов синхрони­зируется сигналом ПРОГ/СТБВВ.

Порт BUS представляет со­бой двунаправленный буфер с тремя состояниями и пред­назначен для побайтного ввода, вывода или ввода—вывода информации.

Если порт BUS используется для двунаправленных пе­редач, то обмен информацией через него выполняется по командам MOVX. При выводе байта генерируется стробирующий сигнал ЗП, а выводимый байт фиксируется в бу­ферном регистре. При вводе байта генерируется стробирующий сигнал ЧТ, но вводимый байт в буферном регистре не фиксируется. В отсутствие передач порт BUS по своим выходам находится в высокоимпедансном состоянии.

Если порт BUS используется как однонаправленный, то вывод через него выполняется по команде OUTL, а ввод— по команде INS.

Вводимые и выводимые через порт BUS байты можно маскировать с помощью команд AND и OR, что позволяет выделять и обрабатывать в байте отдельный бит или труп­пу бит. Для этого предварительно по команде OUTL BUS, A в порт BUS из аккумулятора должна быть загружена маска.

В МК-системах простой конфигурации, когда порт BUS не используется в качестве порта-расширителя системы, обмен выполняется по командам INS, OUTL и MOVX. Воз­можно попеременное использование команд OUTL и MOVX. Однако при этом необходимо помнить, что выводи­мый по команде OUTL байт фиксируется в буферном реги­стре порта BUS, а команда MOVX уничтожает содержимое буферного регистра порта.

В МК-системах, имеющих внешнюю память программ, порт BUS используется для выдачи адреса внешней памяти и для приема команды из внешней памяти программ. В та­ких системах использование команды OUTL BUS недопус­тимо, так как фиксация в буферном регистре порта BUS выводимого байта явится причиной неправильной выборки следующей команды.

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

Однако динамический выбор идентичных устройств, а следовательно, и использование одной параметризуемой подпрограммы управления этими устройствами возможны в том случае, если обращение к внешним портам ввода— вывода выполнять по командам обращения к внешней па­мяти MOVX.

2.6 Цоколевка корпуса МК К1816ВЕ48

Цоколевка корпуса МК48 показана на рисунке 10. Ниже приводятся символические имена выводов корпуса и даются краткие пояснения их назначения:

Рисунок 10 - Цоколевка корпуса МК КМ1816ВЕ48

2.7 Генератор тактовых импульсов

Генератор тактовых импульсов выполнен на микросхеме КР580ГФ24 и предназначен для синхронизации микропроцессорной системы. Генератор тактовых импульсов (ГТИ) формирует тактовые импульсы с частотой до 2,5 МГц и амплитудой 12В, а так же некоторые управляющие сигналы для микропроцессорной системы.

Структурная схема ГТИ представлена на рисунке 11, а подключение ГТИ к МП показано на рисунке 12. ГТИ состоит из задающего генератора, (SGN), генератора тактовых импульсов (GLG), порогового элемента, формирователей и логических схем. Для работы ГТИ необходимо подключение внешнего кварцевого резонатора с частотой в 9 раз большей, чем частота выходных тактовых импульсов ГТИ.

Основные временные характеристики тактовых импульсов следующие:

Время переднего и заднего фронтов (tLH, tHL), нс 0÷50

Ширина импульса CLK1 (tCLK1), нс ≥60

Ширина импульса CLK2 (tCLK2), нс ≥220

Временной интервал между задним фронтом

CLK1 и передним фронтом CLK2 (tD1), нс ≥0

Временной интервал между задним фронтом

CLK2 и передним фронтом CLK1 (tD2), нс ≥70

Задержка CLK2 по отношению к CLK1, tD3,нс ≥80

Основные электрические параметры микросхемы КР580ГФ24 следующие:

Входное напряжение L-уровня UIL, В 0,8

Входное напряжение H-уровня UIH, В 0,2

Напряжение RESIN, UIH-UIL, В 0,25

Выходное напряжение L-уровня UOL, В 0,45

Выходное напряжение H-уровня UOH, В:

на выходах CLK1, CLK2 9,4

на выходах READY, RESET 3,6

на всех других выходах 2,4

Ток источника питания ICC, мА 115

Н азначение входных и выходных сигналов:

Соседние файлы в папке курсовой проект