Универсальные порты ввода/вывода могут рассматриваться как самые простые периферийные модули. Они позволяют микроконтроллерам PIC контролировать работу и управлять другими устройствами. С целью расширения функциональных возможностей некоторые каналы портов ввода/вывода мультиплицированы с другими периферийными модулями. Набор дополнительных функций каналов портов ввода/вывода зависит от реализованных периферийных модулей в микроконтроллере.
Всего 2 порта с 13 входами ввода-вывода. Входы портов: RA0 – RA4 (PORTA), RB0 – RB4 (PORTB).
Все разряды могут быть сконфигурированы независимо друг от друга.
Индивидуальная конфигурация PORTA
Операция записи в PORTA означает появление на адресной шине адреса 5, а на шине данных – данных. Срабатывает дешифратор и посылает сигнал EN1 или EN3 на соответствующие регистры. EN1 позволяет захватить данные и сохранять их в регистре data write. Захват данных активирует одну из 3ех защелок: запись – Data Write Latch; чтение - DataRead Latch; Tristate latch хранит управляющие биты для каждого разряда порта (RAi –Output/Input).
|
|
Для управления портом предварительно нужно указывать конфигурацию соответствующих разрядов порта и только после этого указывать ввод это или вывод (Направлением каналов ввода вывода управляют регистры TRIS: 1 – Input, 0 – Output). Это позволяет устранить возможность ложного уровня на выходе порта, т.к. при включении питания в выходных защелках порта содержится случайное число.
R0 – R3 имеют одинаковую схемотехнику, R4 – упрощенную. От этого и разное управление.