Параллельный программируемый интерфейс и организация




Портов в микроконтроллерах ATMEL

 

Цель работы: изучение работы микросхемы параллельного интерфейса, задания режимов работы и разработка схемных решений подключения внешних устройств через схему параллельного интерфейса. Организация параллельных портов в микропроцессорах фирмы Atmel и подключение внешних устройств к портам микропроцессора.

 

Теоретическая часть

Микросхема 8255 фирмы Intel представляет собой микросхему программируемого интерфейса, в котором реализовано три программируемых порта ввода вывода. На рисунке 2.1 показана структурная схема данной микросхемы.

 

 

Рисунок 2.1 – Структурная схема 8255.

 

Она содержит управляющий регистр и три 8-разрядных порта ввода вывода, имеющие обозначения А, В и С. Порт С представляет собой два отдельных программируемых порта: С - верхний (РС4-РС7) и С - нижний (РС0-РС3). На рисунке 2.2 приведена информация, поясняющая особенности работы микросхемы. Микросхема переводится в активное состояние, когда активен сигнал выбора чипа (CS). Сигналами А0 и А1 выбирается один из трех портов для организации передачи данных. При включении питания системы сигнал RESET переводит все 24 вывода, связанных с тремя портами, в третье состояние. Микросхема останется в этом состоянии до тех пор, пока прикладная программа не запишет в управляющий регистр по адресу 303Н слово, определяющее режим работы. Существует три режима работы:

1. Режим 0: ввод-вывод общего типа.

2. Режим 1: стробируемый ввод вывод.

3. Режим 2: двухсторонняя шина данных.

Выбор режима 0 предоставляет в распоряжение системы два 8-разрядных порта (А и В) и два 4-разрядных порта (С - верхний и С - нижний). Каждый порт можно запрограммировать на работу в качестве входного или выходного порта. Выходы портов буферизуются. В этом режиме возможно задание 16 различных конфигураций ввода вывода.

Режим 1 предоставляет системе два 8-разрядных порта: А и В. В этом случае входы и выходы буферизуются. Два 4-разрядных порта (С- нижний и С – верхний) используются как линии квитирования установления связи портов А и В, и они уже не могут использоваться в качестве портов обмена данными. При вводе данных в режиме 1 линии РС3, РС4 и РС5 используются в качестве линий квитирования установления связи для порта А. Линии РС0, РС1 и РС2 играют ту же роль для порта В. Линии РС6 и РС7 можно запрограммировать на работу в качестве входных и выходных линий порта. В этом режиме устройство ввода, как правило, направляет 8-разрядное слово данных на линии РА0-РА7 (или РВ0-РВ7), а затем выдает стробирующий сигнал с активным низким уровнем STB на линию РС4 (в случае обмена с портами А) или на линию РС2 (при обмене с портом В).

 

Рисунок 2.2 – Задание режимов работы

 

Подача такого строба обеспечивает загрузку слова данных во входной буферный регистр. В результате этого генерируется сигнал (с активным высоким уровнем) заполнения буфера – IBF, который выдается на линию РС5 для активизации порта А и на линию РС1 для активизации порта В Процессор считывает информацию с порта С и одновременно проверяет сигнал IBF, чтобы определить, достоверны ли данные имеющиеся на линиях выбранного рабочего порта. Если сигнал IBF представляет логическую единицу, то процессор считывает данные с порта А или В, а сам строб IDF сбрасывается фронтом сигнала RD.

При выводе данных в режиме 1 линии РС7, РС6 и РС3 служат в качестве линий квитирования установления связи для порта А. Линии РС0, РС1 и РС2 играют ту же роль для порта В. Линии РС4 и РС5 можно запрограммировать на работу в качестве входных или выходных линий порта. Процессор записывает данные в порт А или В и устанавливает флаг «буфер ввода заполнен» - OBF (РС7 для порта А или РС1 для порта В) – в состояние с активным низким уровнем для индикации выполнения этой операции. Устройство вывода контролирует состояние OBF, чтобы определить, когда появятся выводимые данные. Оно подтверждает прием данных путем выдачи сигнала подтверждения ACK (линии РС6 для порта А или РС2 для порта В), который имеет низкий активный уровень и подтверждает прием данных, сбрасывая флаг «буфер вывода заполнен».

Выбор режима 2 предоставляет в распоряжение системы одну 8-разрядную шину для двусторонней передачи через порт А. Пять одноразрядных линий порта С становятся для порта А линиями состояния и управления. То есть порт А приобретает средства квитирования установления связи, аналогичные тем которые предусмотрены в режиме 1.

При работе в режимах 1 и 2, управляющие сигналы микросхемы, выдаваемые с порта С могут использоваться в качестве входных сигналов запроса на прерывание, направляемых процессору. На рисунке 2.3 показаны варианты задания режима в управляющем регистре программируемого периферийного интерфейса 8255.

 

 

Рисунок 2.3 – Варианты задания режимов 8255

 

Пример схемного применения микросхемы приведен на рисунке 2.4. В этом примере микросхема используется для считывания информации с переключателей и возбуждения светодиодных индикаторов. Схема проста, но дает общее представление о выборе конфигурации портов. В примере порт А подсоединен к 8-разрядному переключателю, а порт С - нижний через формирователь 74LS04 – к 4- разрядному светодиодному индикатору. Формирователь необходим для подачи на светодиоды тока необходимой величины. Для управления состоянием светодиодов программа считывает комбинацию битов установленную на переключателе. Выводы РА0-РА3 определяют комбинацию, которая должна воспроизводится светодиодами, а выводы РА4 - РА7 – число, соответствующее количеству периодов «включено-выключено», чем определяется частота мигания светодиодов. Схема подключения микросхемы к процессору показана на рисунке 2.5. Пример программы на Ассемблере для считывания состояний переключателей и возбуждения светодиодов в схеме приведен в приложении 1.

 

 

 

Рисунок 2.4 – Пример применения микросхемы 8255

Рисунок 2.5 – Схема подключения к процессору.

 

Организацию параллельных портов в современных микропроцессорах рассмотрим на примере микросхем Atmel семейства AVR. Каждый порт состоит из определенного числа выводов (пинов), через которые микроконтроллер может принимать или передавать цифровые сигналы. Конфигурирование каждой линии порта (задание направления передачи данных) может быть произведено программно в любой момент времени.

Максимальная нагрузочная способность выходных буферов портов при логическом «0» на выходе составляет 20 мА. Это позволяет напрямую управлять светодиодным индикатором. Количество доступных портов определяется моделью микроконтроллера.

Обращение к портам производится через регистры ввода \ вывода, причем под каждый порт в адресном пространстве зарезервировано по 3 адреса. По этим адресам размещаются три регистра: регистр данных порта, регистр направления порта и регистр выводов порта. Каждый разряд порта может конфигурироваться индивидуально. Таблица влияния состояния регистра направления и регистра выводов показана на рисунке 2.7.

 

 

 

Рисунок 2.6 – Структурная схема организации порта

 

Для понимания, как функционируют порты ввода вывода, рассмотрим структурную схему одного канала порта D (вывод D1) микроконтроллера AT90S4434 (рисунок 2.8). Данный канал в качестве расширения функциональной нагрузки является выходом данных UART.

 

 

 

Рисунок 2.7 - Таблица состояния разряда порта.

 

Триггер DDD1 представляет разряд регистра порта направления. Триггер PORTD1 представляет разряд регистра порта данных. Разряды регистров подключены к шине данных и управляются сигналами WP (запись в порт данных) и WD (запись в порт направления). Рхn - это вывод или пин порта. Триггер Шмитта, указанный знаком гистерезиса, работает исключительно при режиме ввода информации в порт, если триггер направления установлен в ноль и включен сигнал управления RP (чтение состояния вывода порта). Триггер Шмитта применяется для формирования логического сигнала с «правильными» фронтами. МОП транзистор в схеме выполняет роль источника тока, если включен режим чтения состояния порта.

 

 

Рисунок 2.8 - Структурная схема организации разряда порта.

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-04-20 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: