Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МПС для АТП (ЛЕК).doc
Скачиваний:
33
Добавлен:
26.09.2019
Размер:
2.38 Mб
Скачать

7.2.2.Синхронный параллельный обмен

В однокристальном режиме все порты могут использоваться как порты общего назначения и работать на обмен в синхронном режиме, причем направление передачи для каждого разряда портов C и D независимо программируется значением соответствующего разряда регистров DDRC и DDRD (“0” - ввод данных, “1” - вывод). При попытке прочитать состояние линии, настроенной на вывод, возвращается величина присутствующая на входе выходного буфера линии. При настройке линии на ввод, соответствующий вывод устанавливается в высокоимпедансное состояние. Попытка произвести запись в такую линию не изменяют ее состояние, но записываемые данные сохраняются в выходном триггере линии. При настройке линии на вывод данные, записанные в триггере, подаются на выход. При RESET биты регистра управления направлением передачи данных сбрасываются, то есть все линии настраиваются на ввод данных.

Линии портов A, B и E (исключая биты 3 и 7 порта A) имеют фиксированное направление передачи данных.

Когда порт A используется в качестве порта общего назначения, биты [0:2] настраиваются только на ввод данных и запись информации по этим линиям не дает никакого эффекта. Биты [4:6] этого порта настроены исключительно на вывод данных и их чтение возвращает уровень на входе соответствующих выходных буферов. Каждый из битов 3, 7 может быть настроен как на ввод, так и на вывод данных с помощью битов DDRA3 и DDRA7 регистра управлением счетчиком внешних импульсов

При использовании порта B как порта общего назначения он настраивается исключительно на вывод и чтение его линий возвращает состояние на входах соответствующих выходных буферов.

Линии порта E соответствуют восьми каналам встроенного АЦП, но также могут быть использованы для обычного дискретного ввода. Запись в PORTE не дает никакого эффекта.

В расширенном режиме порты B и C используются только для связи с внешней памятью, линия AS/STRA стробирует передачу адреса на шину адреса/данных (порт C), а R/W/STRB определяет направление передачи данных.

7.2.2.1.Выбор режимов асинхронного обмена

Табл. 7.5. Работа портов ввода/вывода в асинхронных режимах

Режимы

работы

HNDS

OIN

PLS

Способ очистки STAF*

Порт C

Порт В

Режим с простым стробированием

0

X

X

Считать PIOC (STAF=1), потом прочитать PORTCL

Входное значение копируется в PORTCL по активному фронту на STRA

Запись в порт B стробируется сигналом на STRB

Режим ввода с квитированием

1

0

0=STRB работает по уровню

1=STRB работает по импульсу

Считать PIOC (STAF=1), потом прочитать PORTCL

Входное значение копируется в PORTCL по активному фронту на STRA

Обычный порт вывода, на который в этом режиме не оказывается никакого влияния

Режим вывода с квитированием

1

1

то же

Считать PIOC (STAF=1), потом записать в PORTCL

Выход, если на STRA активный уровень; иначе -согласно DDRC

Обычный порт вывода, на который в этом режиме не оказывается никакого влияния

*Установка по активному фронту на STRA