АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Порты ввода/вывода информации

Читайте также:
  1. II. ПОРТЫ АРХИПЕЛАГА
  2. III. Обеспечение деятельности аккредитованных представителей средств массовой информации
  3. А. Личные мотивы выдачи информации
  4. Абстрактные модели защиты информации
  5. Аварийная карточка системы информации об опасности.
  6. Автоматизированные системы обработки информации и управления в сервисе.Клачек.
  7. Акустические каналы утечки конфиденциальной информации
  8. Анкетирование - это метод получения информации путем письменных ответов респондентов на систему стандартизированных вопросов анкеты.
  9. Безопасность информации в сетях ZB
  10. Блок дополнительной информации
  11. Блока СКЗИ тахографа) информации о событиях
  12. В дальнейшем окончательный ввод информации осуществляется кнопкой ДОП.

Все четыре порта МК51 предназначены для ввода или вывода информации побайтно. Схемотехника портов ввода/вывода МК51 для одного бита показана на рис. 3.4 (порты 1 и 2 имеют примерно такую же структуру, как и порт 3). Каждый порт содержит управляемые регистр-защелку, входной буфер и выходной драйвер.

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

Все выводы порта 3 могут быть использованы для реализации альтернативных функций, перечисленных в табл. 3.3. Альтернативные функции могут быть задействованы путем записи 1 в соответствующие биты регистра-защелки (РЗ.0—Р3.7) порта 3.

Порт 0 является двунаправленным, а порты 1, 2 и З — квазидвунаправленными. Каждая линия портов может быть использована независимо для ввода или вывода информации. Для того чтобы некоторая линия порта использовалась для ввода, в D-триггер регистра-защелки порта должна быть записана 1, которая закрывает МОП-транзистор выходной цепи.

Т а б л и ц а 3.3.Альтернативные функции порта 3
Символ Позиция Имя и назначение
RD Р3.7 Чтение. Активный сигнал низкого уровня формируется аппаратурно при обращении к ВПД
WR Р3.6 Запись. Активный сигнал низкого уровня формируется аппаратурно при обращении к ВПД
Т1 Р3.5 Вход таймера/счетчика 1 или тест-вход
Т0 Р3.4 Вход таймера/счетчика 0 или тест-вход
INT1 РЗ.З Вход запроса прерывания 1. Воспринимается сигнал низкого уровня или срез
INT0 Р3.2 Вход запроса прерывания 0. Воспринимается сигнал низкого уровня или срез
TXD Р3.1 Выход передатчика последовательного порта в режиме UART. Выход синхронизации в режиме сдвигающего регистра
RXD РЗ.0 Вход приемника последовательного порта в режиме UART. Ввод/вывод данных в режиме сдвигающего регистра

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

Запись в порт. При выполнении команды, которая изменяет содержимое регистра-защелки порта, новое значение фиксируется в регистре в момент S6P2 последнего цикла команды. Однако опрос, содержимого регистра-защелки выходной схемой осуществляется во время фазы Р1 и, следовательно, новое содержимое регистра-защелки появляется на выходных контактах порта только в момент S1P1 следующего машинного цикла.

Нагрузочная способность портов. Выходные линии портов 1,2 и 3 могут работать на одну ТТЛ схему. Линии порта 0 могут быть нагружены на два входа ТТЛ схем каждая. Линии порта 0 могут работать и на n-МОП схемы, однако при этом их необходимо подключать на источник электропитания через внешние нагрузочные резисторы за исключением случая, когда шина порта 0 используется в качестве шины адреса/данных внешней памяти.

Входные сигналы для МК51 могут формироваться ТТЛ схемами или n-МОП схемами. Допустимо использование в качестве источников сигналов для МК51 схем с открытым коллектором или открытым стоком. Однако при этом время изменения входного сигнала при переходе из 0 в 1 окажется сильно затянутым.

Особенности работы портов. Обращение к портам ввода/вывода возможно с использованием команд, оперирующих с байтом, отдельным битом и произвольной комбинацией бит. При этом в тех случаях, когда порт является одновременно операндом и местом назначения результата, устройство управления автоматически реализует специальный режим, который называется "чтение - модификация - запись". Этот режим обращения предполагает ввод сигналов не с внешних выводов порта, а из его регистра-защелки, что позволяет исключить неправильное считывание ранее выведенной информации.

Подобный механизм обращения к портам реализован в следующих командах:

ANL - логическое И, например ANL Р1,А;

ORL - логическое ИЛИ, например ORL Р2,А;

XRL - исключающее ИЛИ, например XRL РЗ,А;

JBC - переход, если в адресуемом бите единица, и последующий сброс бита, например JBC P1.1, LABEL;

CPL - инверсия бита, например CPL РЗ.З;

INC - инкремент порта, например INC Р2;

DEC - декремент порта, например DEC Р2;

DJNZ - декремент порта и переход, если его содержимое не равно нулю, например DJNZ РЗ, LABEL;

MOV PX.Y, С - передача бита переноса в бит Y порта X;

SET PX.Y - установка бита Y порта X;

CLR PX.Y - сброс бита Y порта X.

Совсем не очевидно, что последние три команды в приведенном списке являются командами "чтение - модификация - запись". Однако это именно так. По этим командам сначала считывается байт из порта, а затем записывается новый байт в регистр-защелку.

Причиной, по которой команды "чтение - модификация - запись" обеспечивают раздельный доступ к регистру-защелке порта и к внешним выводам порта, является необходимость исключить возможность неправильного прочтения уровней сигналов на внешних выводах. Предположим для примера, что линия Y порта Х соединяется с базой мощного транзистора и выходной сигнал на ней предназначен для его управления. Когда в данный бит записана 1, то транзистор включается. Если для проверки состояния исполнительного механизма (в нашем случае -мощного транзистора) прикладной программе требуется прочитать со­стояние выходного сигнала в том же бите порта, то считывание сигнала с внешнего вывода порта, а не из D-триггера регистра-защелки порта приведет к неправильному результату: единичный сигнал на базе тран­зистора имеет относительно низкий уровень и будет интерпретирован в МК как сигнал 0. Команды "чтение - модификация - запись" реализуют считывание из регистра-защелки, а не с внешнего вывода порта, что обеспечивает получение правильного значения 1.

На рис.3.5 приведены временные диаграммы, иллюстрирующие про­цесс выполнения операций ввода/вывода информации через порты МК51.

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.)