- •Введение
- •1 Анализ технического задания
- •2.2 Арифметическо-логическое устройство
- •2.3 Память микроконтроллера
- •2.4 Управление работой микроконтроллера
- •2.5 Организация ввода-вывода информации в микроконтроллере
- •Xtal1, xtal2 – входы для подключения кварцевого резонатора.
- •3.2 Постоянное запоминающее устройство
- •4.3 Программируемый интервальный таймер (пит)
- •5.2 Шинный формирователь к580ва86
- •5.3 Подключение микросхем, входящих в микропроцессорную систему, к
- •5.4 Разработка структурной схемы
- •Заключение
- •Список используемой литературы
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
Н азначение входных и выходных сигналов: