Rambler's Top100

Порты ввода/вывода

Конфигурация
Электрические параметры
Автор


Конфигурация

Порты ввода-вывода AVR с точки зрения программиста устроены очень просто и удобно. Порт состоит из трёх регистров:

1. Регистр "защёлок" PORTx

PORTx7 PORTx6 PORTx5 PORTx4 PORTx3 PORTx2 PORTx1 PORTx0

2. Регистр направления DDRx:

DDRx7 DDRx6 DDRx5 DDRx4 DDRx3 DDRx2 DDRx1 DDRx0

3. Регистр выводов PINx:

PINx7 PINx6 PINx5 PINx4 PINx3 PINx2 PINx1 PINx0

где x = { A, B, C, D, E, F}.

Если бит в регистре DDRxi = 0, данный вывод является входом. Чтение входного уровня производится в бите PINxi, т.е. непосредственно с вывода контроллера. Значение бита в PORTxi определяет, включен или выключен резистор между шиной питания и выводом порта. Запись непосредственно в регистр PINx недоступна.
Если DDRxi = 1, PORTxi настроен на вывод, а логический уровень на выводе определяется PORTxi. Резстор при этом выключен.
ATmega имеет два однонаправленных порта - C и F. C работает только на вывод, а F - на ввод, в обоих портах отсутствуют регистры направления. C не имеет регистра PINC, а F - регистра PORTF.

Оглавление Оглавление

Электрические параметры

Порты AVR имеют встроенную защиту от КЗ. "Коротыш" на шину питания или "землю" не приводит к выходу из строя. Единственный раз мне приходилось видеть выведенную из строя "ногу" контроллера после того, как на неё попало 12 вольт.
Основные рабочие характеристики:

Ток "0" (втекающий) 20 мА
Ток "1" (вытекающий) 10 мА
Сопротивление "подтягивающего" резистора 35...120 кОм

Максимальный ток вывода, указанный в документации - 40 мА. Правдивость этого не проверена. Может различаться для разных моделей.

Оглавление Оглавление

© Берёзкин С.Е., 2001 г.

stlab@rambler.ru



Оглавление

Главная

Микроконтроллеры



Рейтинг@Mail.ru bigmir)net TOP 100 Rambler's Top100 AllBest.Ru Яндекс цитирования