Параллельные порты ввода вывода

Параллельные порты ввода вывода.

Для связи ОМЭВМ с объектами управления, для ввода вывода информации используются 32 двунаправленные линии.

Эти линии сгруппированы в 4 порта по 8 линий в каждом. Каждая линия может быть индивидуальна и независимо запрограммирована на вход или выход. При использовании линии в качестве входа необходимо соответствующий бит порта установить в 1 . При установке ОМЭВМ в исходное состояние все линии портов включены в исходное состояние. Обращение к портам ввода вывода осуществляется через регистры специальных функций Р0 Р3. Обращение производится с использованием команд, оперирующих с байтами, битом или с комбинацией бит. В случае использования внешней памяти программ или данных, порт 0 служит для ввода младшего байта адреса внешней памяти, а через Р2 для вывода старшего байта вывода внешней памяти, поэтому, когда мы используем внешнюю память эти порты заняты.

Данные во внешнюю память передаются через регистр Р0 рис. 9 . Рисунок 9 Схема подключения внешней памяти Все выводы порта 3 могут быть использованы для реализации альтернативных функций. Альтернативные функции могут быть задействованы путем записи 1 в соответствующие разряды порта Р3 . В состав ОМЭВМ входят 2 независимых таймера счетчика Т0 и Т1, предназначенных для измерения временных интервалов, длительности импульсов регенерирования периодически повторяющихся прерываний.

Каждому таймеру счетчику соответствует 16-разрядный таймерный регистр, состоящий из двух байт TH0, TL0 TH1, TL1 Таймеры счетчики работают в двух режимах в качестве таймера и счетчика. При работе в качестве таймера, содержимое таймерного регистра увеличивается на единицу в каждом машинном цикле.

Путем программной установки таймерного регистра в исходное состояние и анализа флага переполнения могут быть реализованы различные временные задержки в диапазоне 0000-FFFF. Временная задержка, превышающая это значение 65535 мкс может быть получена накоплением переполнений в рабочем регистре под управлением программы. При работе в режиме счетчика событий таймерный регистр увеличивается на 1 каждый раз, когда сигнал на входе Т0 порта 3 переходит из 1 в 0 . Состояние внешнего входа Т0 или Т1 опрашивается каждую микросекунду машинный цикл. Для управления таймером счетчиком используются 2 регистра специальных функций TCON регистр управления и TMOD регистр режимов.

Прерывания МК51 имеет 5 аппаратных источников прерываний. Прерывание сигнал, который поступает в ОМЭВМ от одного из 5 источников прерываний и вызывает переход из основной программы в подпрограмму обработки прерываний.

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