14 Л екція № 6. Порти вводу та виводу.
Лекція № 6. Порти вводу та виводу.
PIC16F62X имеют два порта ввода/вывода, PORTA и PORTB. Некоторые каналы портов мультиплицированы с периферийными модулями микроконтроллера. Когда периферийный модуль включен, вывод не может использоваться как универсальный канал ввода/вывода.
Регистры porta и trisa
PORTA - 8-разрядный порт ввода вывода. RA4 имеет триггер Шмидта на входе и открытый сток на выходе, мультиплицирован с тактовым входом TOCKI. RA5 имеет триггер Шмидта на входе, без выходного буфера. Все остальные каналы PORTA имеют триггер Шмидта на входе и полнофункциональные выходные КМОП буферы.
Все каналы PORTA имеют соответствующие биты направления в регистре TRISA, позволяющие настраивать канал как вход или выход.
Запись Т в TRISA переводит соответствующий выходной буфер 3-е состояние. Запись '0' в регистр TRISA определяет соответствующий канал как выход, содержимое защелки PORTA передается на вывод микроконтроллера.
Чтение регистра PORTA возвращает состояние на выводах порта, а запись производится в защелку PORTA. Все операции записи в порт выполняются по принципу «чтение - модификация - запись», т.е. сначала производится чтение состояния выводов порта, затем изменение и запись в защелку.
Каналы PORTA мультиплицированы с модулем компараторов и источником опорного напряжения. Настройка работы этих периферийных модулей определяется битами в регистрах CMCON (управляющий регистр компаратора) и VRCON (управляющий регистр источника опорного напряжения). Когда компаратор включен, чтение состояние выводов PORTA будет давать результат '00'.
Примечания:
При сбросе микроконтроллера все биты регистра TRISA устанавливаются в 1, настраивая PORTA на вход. Функция цифрового входа заблокирована, т.к. каналы PORTA подключены к модулю компараторов для снижения тока потребления.
Если вывод RA6/OSC2/CLKOUT настроен как CLKOUT, то соответствующие биты регистров TRISA, PORTA игнорируются и читаются как 'О'.
Биты регистра TRISA управляют направлением каналов PORTA при включенном модуле компараторов. Пользователь должен удостовериться, что соответствующие каналы PORTA настроены на вход при использовании их в качестве входов компаратора.
RA2 также функционировать как выход при включенном модуле источника опорного напряжения (Vref находится в режиме высокого импеданса). Пользователь должен установить в '1' бит TRISA<2> для настройки канала на вход.
В одном из режимов (определяется регистром CMCON) RA3 и RA4 становятся выходами компаратора. Биты TRISA<4:3> должны быть сброшены в '0' для работы в этом режиме.
Пример 5-1 Инициализация PORTA
CLRF PORTA ; Инициализация защелок PORTA
MOVLW 0X07 ; Выключить компаратор,
MOVWF CMCON ; каналы PORTA - цифровые входы/выходы
BCF STATUS, RP1
BSF STATUS, RPO ; Выбрать банк 1
MOVLW 0x1 F ; Значение для инициализации
; направления каналов PORTA MOVWF TRISA ; Настроить RA<4:0> как входы
; Биты TRISA<7:5> всегда читаются как 'О'.
Таблица 5-1 Функциональное назначение выводов PORTA
Обозначение вывода |
№бита |
Тип буфера |
Описание |
RA0/AN0 |
БитО |
ST |
Двунаправленный порт ввода/вывода, аналоговый вход компаратора |
RA1/AN1 |
Бит1 |
ST |
Двунаправленный порт ввода/вывода, аналоговый вход компаратора |
RA2/AN2/Vref |
Бит 2 |
ST |
Двунаправленный порт ввода/вывода, аналоговый вход компаратора, выход источника опорного напряжения Vref |
RA3/AN3/CPM1 |
БитЗ |
ST |
Двунаправленный порт ввода/вывода, аналоговый вход компаратора, выход компаратора |
RA4/T0CKI/CPM2 |
Бит 4 |
ST |
Двунаправленный порт ввода/вывода, может использоваться какТОСМ, выход компаратора |
RA5/MCLR/THV |
Бит 5 |
ST |
Вход сброса микроконтроллера, вход напряжения программирования. Когда вывод настроен как -MCLR, то по низкому уровню сигнала производиться сброс микроконтроллера. При нормальной работе напряжение на -MCLR/THV не должно превышать VDD. |
RA6/OSC2/CLKOUT |
Бит 6 |
ST |
Двунаправленный порт ввода/вывода, выход генератора для подключения резонатора. В режиме ER генератора на выходе CLKOOUT формируется сигнал с частотой 1/4 0SC1, обозначая циклы команд |
RA7/0SC1/CLKIN |
Бит 7 |
ST |
Двунаправленный порт ввода/вывода, вход генератора, вход внешнего тактового сигнала, вывод ER смещения |
Обозначение: ST - вход с триггером Шмидта.
Обозначения: - - не используется, читается как 0; и - не изменяется; х- не известно; q - зависит от условий. Примечание. Затененные биты не влияют на работу PORTA.