Обновление данных в портах

В командах, которые изменяют значения в защелках, образующих регистры портов Р0..Р3, новые данные фиксируются на фазе S6P2 последнего машин­ного цикла. На выводе эти данные появляются на фазе S1P1 следующего цикла, поскольку выходной буфер на фазе Р2 текущего состояния удержи­вает значение, имевшееся на фазе Р1 (рис. 3.11).

Рис. 3.11 - Временные параметры обновления данных в портах

Если при такой операции на линии портов Р1, 2 или 3 имеет место переход «0»-«1», то в такте S1 включается элемент «pull-up», обеспечивающий ток, приблизительно в сто раз превышающий обычный рабочий ток. Это уско­ряет перезарядку емкостей нагрузки и сокращает время переключения.

Операции типа «чтение-модификация-запись»

При обращении к портам Р0..Р3 одни команды читают состояние регистра порта (или отдельной защелки), а другие читают значение сигнала на выводе. Ко­манды, читающие состояние регистра, затем выполняют некоторую операцию, результат которой вновь записывается в регистр. Они называются команда­ми типа «чтение-модификация-запись». Если приемником является порт или бит порта, следующие команды обращаются к регистру (защелке) порта:

ANL <port>, <source>

ORL <port>, <source>

XRL <port>, <source>

JBC <port.bit>, <addr>

CPL <port.bit>

INC <port>

DEC <port>

DJNZ <port>, <addr>

CLR <port.bit>

SETB <port.bit>

MOV <port.bit>, <source>

Эти команды дают возможность изнутри правильно прочитать значение порта, когда он высоким значением открывает транзисторный вентиль и на линий потенциал падает до логического «0».


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: