22
2.3. Параллельные порты
Базовая конфигурация МК содержит четыре квазидвунаправлен-
ных 8-разрядных порта Р0...Р3 с возможностью независимого индиви-
дуального задания направления передачи каждой линии. Они обеспе-
чивают обмен информацией микроконтроллера с внешними устройст-
вами и выполнение альтернативных функций, таких как обращение к
внешней памяти, прием запросов прерываний, управление работой
счетчиков/таймеров.
Каждый из портов содержит 8-разрядный параллельный регистр
данных с логикой управления и драйвер - выходной каскад, соединяю-
щий порт с внешними линиями. Регистры данных находятся в области
BSEG регистров специальных функций и, следовательно, имеют как
байтовую, так и битовую адресацию. Это позволяет обращаться к пор-
там как к обычным ячейкам памяти или обслуживать каждую линию
порта командами битового процессора независимо от других линий того
же порта. С учетом этого обстоятельства схемотехника портов рас-
сматривается на уровне одной линии порта.
2.3.1. Драйверы портов
Схемотехника драйверов портов, кроме порта Р0, зависит от ис-
пользуемой технологии изготовления микроконтроллера.
Драйвер разряда порта для n-МОП
технологии (рис. 14) со-
держит выходной ключ на транзисторах VT2 и VT3 и схему ускоренного
заряда емкости нагрузки на элементах DD1, DD2, DD3 и транзисторе
VT1. Маломощный транзистор VT2 выполняет функцию подтягивающе-
го резистора. Емкость нагруз-
ки представляет суммарную
паразитную емкость, подклю-
ченную к выходу Р1.х драй-
вера (х=0…7 – номер линии
порта). При переходе сигнала
на входе 1 драйвера из лог.1
в лог.0 транзистор VT3 запи-
рается и напряжение на вы-
ходе Р1.х драйвера устанав-
ливается в результате заряда
емкости нагрузки через тран-
зистор VT2. Это приводит к затягиванию переходного процесса уста-
новления лог.1 на выходе драйвера и, следовательно, к снижению бы-
стродействия микроконтроллера. В этом случае схема ускоренного за-
ряда формирует импульс, который открывает на время 2t
OSC
мощный
транзистор VT1, ток которого на два порядка больше тока транзистора
VT2, что приводит к быстрому заряду емкости. Разряд емкости нагрузки
происходит через открытый транзистор VT3.
Данные, считываемые в микроконтроллер с вывода Р1.х при от-
крытом транзисторе VT3, будут искажены. При этом может нарушиться
ДРАЙВЕР РАЗРЯДА ПОРТА
2
VT3
VT2
VT1
1
1 1
2t
osc
P1.x
V
CC
DD1 DD2 DD3
3
Рис. 14