Электроприводы с системами числового программного управления. Иванов А.К - 88 стр.

UptoLike

Составители: 

Рубрика: 

87
мальной и максимальной задержек на распространение сигнала обозначены как
tpd, max и tpd, min соответственно.
В следующих примерах показано как установить на линиях 0 и 1 порта В
уровень лог. 1, а на линиях 2 и 3 – лог. 0, а также как настроить линии 4…7 на
ввод с подключением подтягивающих резисторов на линиях 6 и 7.
Результирующее состояние линий считываются обратно, но с учетом ска-
занного выше, включена инструкция nop для обеспечения возможности обрат-
ного считывания только что назначенного состояния некоторых выводов
.
Пример кода на Ассемблере
...
; Разрешаем подтягивание и устанавливаем высокие выходные уровни
; Определяем направления данных линий портов
ldi r16,(1<<PB7)|(1<<PB6)|(1<<PB1)|(1<<PB0)
ldi r17,(1<<DDB3)|(1<<DDB2)|(1<<DDB1)|(1<<DDB0)
out PORTB,r16
out DDRB,r17
; Вставляем инструкцию nop для синхронизации
nop
; Опрос состояния выводов порта
in r16,PINB
Прим.: В программе на Ассемблере используются два временных регист-
ра для минимизации интервала времени от момента настройки подтягивающих
резисторов на разрядах 0, 1, 6 и 7 до момента корректной установки бит на-
правления. С момента установки разрешается вывод лог. 0 на линиях 2 и 3 и
Рис. 4.13. Синхронизация во время опроса приложенного к выводу порта уровня