logo search
КС-ZAO / Лекции ЦЭВМруский вариант11

§7.3.1 Конфигурации ввода-вывода

На рис. 7.4 показаны функциональные схемы типовых битов-защелок и буферов ввода-вывода для каждого порта. Бит-защелка (бит СФР порта) изображен как D-триггер, который фиксирует значение на внутренней шине в ответ на сигнал процессора «write to latch» – «запись в защелку». ВыводQ триггера соединяется с внутренней шиной в случае сигнала процессора «read latch» – «прочитать защелку». И наконец по сигналу «read pin» - «прочитать контакт» контакт порта соединяется с внутренней шиной. Некоторые инструкции чтения порта вызывают сигнал «read latch», а другие «read pin» но об этом позже.

Как видно из рис. 7.4 выходные схемы портов 0 и 2 допускают переключение на внутреннюю шину адреса и адреса/данных внутренним сигналомCONTROL для использования в доступах к внешней памяти. Во время доступа к внешней памяти, регистрP2 остается неизмененным, а в регистрP0 записываются единицы.

Также изрис. 7.4 видно, что если бит-защелка регистраP3содержит 1, то выходной уровень контролируется сигналом «alternate output function». Реальный уровень на контактахP3.X всегда доступен альтернативной входной функции, если он есть.

Порты 1, 2 и 3 имеют внутреннюю нагрузку. Порт 0 имеет выход с открытым стоком. Каждая линия ввода-вывода может быть использована независимо от других как для ввода, так и для вывода. (Порты 0 и 2 не могут быть использованы в качестве портов ввода/вывода общего назначения во время их использования в качестве шины адреса/данных). Чтобы линия использоваться как входная, бит-защелка порта должен содержать 1, что отключает полевой транзистор выходной цепи.. После этого выходной контакт портов 1, 2 и 3 высоконагружен и может быть разгружен внешним источником.

Порт 0 отличается от остальных отсутствием внутреннего нагрузочного резистора. Нагрузочный транзистор выходной цепи регистраP0 используется только тогда, когда на выходе порта содержатся 1-цы во время обращений к внешней памяти. В противном случае нагрузочныйтранзистор закрыт. Т.о. линииP0 используемые для вывода имеют открытый сток. Запись 1 в бит-защелку оставляет оба выходныхтранзистора закрытыми и контакт работает вхолостую. В этом состоянии он может быть использован как высокоимпедансный вход.

Т.к порты 1, 2, и 3 имеют фиксированную встроенную нагрузку, их иногда называют «квази-двунаправленными» потами. Когда они настроены как выходные на них висит высокоомная нагрузка и если на них подключить низкоомную нагрузку то они будут являться источниками тока. C другой стороны порт 0 называют «истинно» двунаправленным портом, т.к. во входном режиме работает вхолостую.

По команде RESET на все регистры всех портов микросхем 8051 посылаются 1.