Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Схемотехника порта Р1 для одного разряда.




Режим вывода: Р1.х повторяет состояние триггера.

Режим ввода: требуется, чтобы транзистор был закрыт, следовательно, триггер должен быть в "1". Перед началом ввода необходимо выполнить настройку: mov P1,#0ffh

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

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

ANL - логическое И;

ORL - логическое ИЛИ;

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

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

CPL - инверсия бита;

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

DEC - декремент порта;

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

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

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

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

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

Действия над портом:

1. Установка или сброс битов порта.

2. Установка или сброс группы разрядов порта (с помощью команд ANL, XRL, ORL).

3. Тестирование входов порта:

а) ожидание прихода лог. "0": wait: JB P1.2, wait

б) ожидание прихода лог. "1": wait: JNB P1.2, wait

в) ожидание прихода импульса: wait: JNB P1.2, wait; wait: JB P1.2, wait. Для короткого импульса: CLR P1,0; SETB P1,0; wait: JNB P1.2, wait

г) ожидание поступления входного двоичного набора: mov A,#135 - код сравнения; wait: CJNE A,P1,wait.






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных