Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Для обмена данными с внешними устройствами в микроконтроллерах MC68HC908GP32 используются 5 параллельных двунаправленных портов, которые имеют имена A, B, C, D, E,. В табл.16 указаны функции этих портов. Порты имеют до 8 линий ввода-вывода данных (i/o). В большинстве микроконтроллеров выводы некоторых портов используются для выполнения альтернативных функций, обеспечивая передачу входных и выходных сигналов для других модулей – ADC08, TIM08, SCI08, SPI08, KBI08. При работе этих модулей соответствующие выводы служат для передачи сигналов, необходимых для их функционирования, и не могут использоваться в качестве входов или выходов параллельных портов.
Таблица 16. Функции выводов параллельных портов
A | B | C | D | E |
8 i/o * 8 входов KBI08 | 8 i/o 8 входов ADC08 | 7 i/o * | 8 i/o 2 канала TIM08-1, 2 канала TIM08-2 4 вывода SPI08 | 2 i/o 2 вывода SCI08 |
Параллельные порты содержат 8-разрядные регистры данных PTx и направления пересылки DDRx (символ x = A, B, C, D, E, F, G или H указывает имя порта). Выводы некоторых портов (отмечены символом * в табл.16) могут подключаться к напряжению питания через «подтягивающие» резисторы. Такие порты имеют дополнительные регистры PTxPUE, отдельные биты в которых разрешают подключение к соответствующему выводу “подтягивающих” резисторов: если i -ый бит в этом регистре имеет значение PTxPUEi=1, то к i -ому выводу PTi порта x подключается “подтягивающий” резистор, если бит PTxPUEi=0 – не подключается.
В регистры DDRx вводится управляющий код, программирующий направление передачи для каждого вывода порта: если i -ый бит DDRxi имеет значение 0, то соответствующий вывод порта PTxi является входом, если DDRxi =1 - то выходом. В процессе начального запуска микроконтроллера в регистрах DDRx устанавливается нулевое значение всех битов, то-есть в исходном состоянии порты запрограммированы на выполнение ввода данных. Обращение к портам производится с помощью команд LDA, LDX и STA, STX. При выполнении команд STA, STX содержимое регистра A или X записывается в регистр PTx адресуемого порта. Если все или часть выводов порта запрограммированы в качестве выходов, то соответствующие разряды содержимого PTx поступают на эти выводы порта. При выполнении команд LDA, LDX производится считывание в регистр A или X данных, поступающих на выводы порта, которые запрограммированы на работу в качестве входов. Если же все или часть выводов данного порта запрограммированы как входы, то считывается содержимое соответствующих разрядов регистра данных PTx. Таким образом регистры PTx могут использоваться для временного хранения данных.
Регистры параллельных портов имеют адреса, расположенные в младших позициях адресного пространства, которые выделены для адресации регистров периферийных устройств (табл.17).
Таблица 17. Адреса регистров портов
Порт | Регистр | Адрес |
A | PTA | $0000 |
DDRA | $0004 | |
PTAPUE | $000D | |
B | PTB | $0001 |
DDRB | $0005 | |
C | PTC | $0002 |
DDRC | $0006 | |
PTCPUE | - | |
D | PTD | $0003 |
DDRD | $0007 | |
PTDPUE | - | |
PDCR | - | |
E | PTE | $0008 |
DDRE | $000C |
Большинство выходов портов обеспечивают при напряжении питания Vп=5,0 В допустимые значения токов нагрузки Iн0 = 1,6 мА при низком потенциале U0 на выходе, Iн1 = 2,0 мА при высоком потенциале U1 на выходе. При напряжении питания Vп=3,0 В микроконтроллеры 68HC908GP32 имеют допустимые значения токов Iн0 = 0,5 мА, Iн1 = 0,6 мА. Однако для некоторых выводов допускаются повышенные значения токов нагрузки, достаточные для подключения к ним светодиодов или других приборов со значительным потреблением тока. В микроконтроллерах 68HC908GP32 при напряжении питания Vп=5,0 В пять выводов PTC4-0 порта C обеспечивают значения токов нагрузки Iн0=15 мА, Iн1=10мА, а при напряжении Vп=3,0 В значения Iн0=10 мА, Iн1=4,0 мА.
Дата публикования: 2014-11-02; Прочитано: 799 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!