среда, 6 февраля 2013 г.

ввод вывод микроконтроллеров

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите парол

Имя и сайт используются только при регистрации

Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

На картинке опечатка: в первой колонке явно имеется ввиду DDRxn, а не DDxn.

Порты ввода-вывода являются основным средством связи микроконтроллеров AVR с окружающим миром. Упрощенная схема порта ввода-вывода показана на рисунке На каждой ножке МК стоят защитные диоды. На них сильно не рассчитывайте, если напряжение на входе превысит 5.5В, они наверняка не выдержат. Ножка МК способна пропустить через себя ток не больше 20mA. Каждый вход микроконтроллера обладает паразитной емкостью Сpin. Дальше идут, условно говоря, переключатели (в МК вместо переключателей стоят полевые транзисторы). Каждый переключатель замыкается при определенной конфигурации регистров управления портов ввода-вывода - DDRxn, PORTxn, PINxn и бита 2 (PUD) регистра SFIOR. x - имя порта (например "В"), n - номер бита порта (0-7). У разных микроконтроллеров разное количество портов. Например, рассмотрим цоколевку МК ATmega8Из рисунка видно, что у МК mega8 3 порта ввода вывода. Два полных порта (по 8 бит) - "PB" и "PD" и один не полный (7 бит) - "PC". PINxnРегистр чтения состояния порта. Из этого регистра можно только читать. Этот регистр содержит информацию о логическом уровне на выводах МК и это не зависит от настроек порта.DDRxn - регистр направления порта.PORTxn - регистр управления состоянием вывода.Бит 2 SFIOR: PUD(pullup disable) - запрещает подтягивающий резистор, вне зависимости от того разрешен он регистром управления или нет ("0" - разрешен pullup, "1" - запрещен pullup).Варианты установок битов регистров показаны в таблице 1Выход (DDRxn = 1). Здесь если в PORTxn записать "1"- на выходе и будет логическая единица, если записать "0" - логический нуль.Вход (DDRxn = 0). Если в PORTxn записать "0" - это будет режим высокоимпедансного входа (DDRxn=0, PORTxn=0 - включен по умолчанию). Если посмотреть на рисунок выше, этому режиму соответствует когда все переключатели разомкнуты, при этом входное сопротивление входа можно считать равным бесконечности. Если в PORTxn записать "1" - это будет режим с подтягивающим резистором.Также каждая ножка МК имеет альтернативные функции. По умолчанию они отключены. Если альтернативная функция включена, то ножка управляется периферийным устройством и тогда запись в DDRxn и PORTxn ничего не дает.Если ножка МК не используется, тогда рекомендуется обеспечить на ней определенный уровень. Это нужно чтобы уменьшить энергопотребление микроконтроллера из-за наводок возникающих на выводах. Самый простой способ обеспечить уровень - включить подтягивающий резистор. Подключать неиспользуемые ножки непосредственно к шине питания или к земляной шине не рекомендуется. Так как это может привести к чрезмерному току, если вывод случайно настроен на выход.

20фев/2011Порты ввода-вывода микроконтроллеров AVRАвтор: Рубрика: -> Просмотров: 8703

Новинки электронных устройств. Готовые устройства на микроконтроллерах

Порты ввода-вывода микроконтроллеров AVR

Комментариев нет:

Отправить комментарий