Паралельні порти введення / виводу

Загальні відомості.

Через паралельні порти реалізується основний інтерфейс між мікро контролером і зовнішніми пристроями. Кількість ліній вводу / виводу

8-розрядних мікроконтролерів дорівнює 8. У карті пам’яті мікроконтролера кожен порт введення / виведення представлений регістром даних порту. Для звернення до регістру даних при організації обміну в паралельному форматі використовуються ті ж команди, що для звернення до осередків резидентної оперативної пам’яті. Доступ до окремих розрядах портів здійснюється спеціальними командами, які називаються командами бітового процесора.

За функціональною ознакою

паралельні порти поділяють на три групи:

односпрямовані порти, призначені для передачі інформації в одному напрямку (тільки для введення або тільки для виведення);

двонаправлені порти, що дозволяють задавати напрямок передачі всіх ліній і кожної лінії окремо. У разі необхідності кожна лінія може бути налаштована індивідуально і обслужена командами бітового процесора незалежно від інших ліній того ж порту введення / виведення;

● порти з альтернативними функціями, які визначаються станом мікроконтролера. Окремі лінії таких портів пов’язані з вбудованими в мікроконтролер периферійними модулями (таймером, АЦП, контролером, послідовним приемопередатчиком і ін.), При цьому:

• якщо модуль активізований, то задіяні лінії введення / виводу порту автоматично конфігуруються відповідно до функціонального призначення в модулі і не можуть бути використані за іншим призначенням;

• якщо ж периферійний модуль МК не використовується, то його висновки можна задіяти як звичайні лінії введення / виводу порту.

Альтернативну функцію можуть мати лінії односпрямованих і двонапрямлених портів.

Структурно-функціональні особливості портів.

Розглянемо схемотехнику портів введення / виводу на рівні однієї лінії. Сукупність апаратних кошти, що обслуговуються одну лінію порту називають драйвером порту. Розглянемо основні типи двонапрямлених драйверів (або ліній введення / виводу).

Драйвери з установкою на введення / висновок.

Схема такого драйвера приведена на рис. 4.4.1. Налаштування драйвера на введення / виведення здійснюється установкою біта в спеціальному триггере напрямку передачі (ТИП). Нульове значення біта конфигурирует драйвер на введення, одиничне – на висновок.

Режим введення даних

автоматично встановлюється після скидання мікроконтролера. У початковому стані тригер напрямки передачі ТНП і тригер даних ТД знаходяться в нульовому стані, з виходів логічних елементів І знімаються нульові рівні сигналів, транзистори

VT

1 і

VT

2 замкнені і не впливають на процес введення. При введенні даних:

● на керований буфер В подається сигнал читання даних (

RD

# = 0, де # – знак інверсії), відкриваючи його;

● надходять на висновок РТХ дані передаються безпосередньо на внутрішню лінію Дані, минаючи тригер даних ТД.

Режим виведення даних

ініціюється шляхом установки тригера напрямку передачі ТНП в одиничний стан, після чого на один з входів логічних елементів І надходить одиничний рівень і управління транзисторами

VT

1 і

VT

2 вихідного каскаду порту передається триггеру даних ТД. Якщо на прямому виході ТД встановлений сигнал

Q

= 1, то відкритий транзистор

VT

2 і на виході контролера РТХ = 1. При

Q

= 0 відкритий транзистор

VT

1 і РТХ = 0.

Розглянуте технічне рішення реалізовано в мікроконтролерах НС08 фірми

Motorola

. його гідність – високоомний вхід в режимі введення, недолік – наявність тригера напрямку передачі.

Драйвери з установкою на введення.

Схема драйвера, що вимагає попередню установку тільки на введення даних, приведена на рис. 4.4.2.

Режим введення даних

ініціюється установкою тригера Т в стан

Q

= 1. Стан тригера Т контролюється за допомогою буфера В1. В цьому режимі транзистор

V

Т1 замкнений сигналом з інверсного виходу тригера. Дані в мікроконтролер надходять через буфер В2. Опір з боку виведення РТХ визначається значенням резистора

R

. Після скидання мікроконтролер автоматично переводиться в режим введення. По суті справи, режим введення відповідає режиму виведення одиничного біта.

Режим виведення даних

не вимагає ніяких попередніх установок:

● при виведенн
і нульового біта тригер Т переводиться в стан

Q

= 0, відмикається транзистор

VT

і з виходу РТХ знімається сигнал з низьким рівнем;

● при виведенні одиничного біта тригер Т переводиться в стан

Q

= 1, транзистор

VT

замикається і з виходу РТХ знімається сигнал з високим рівнем. Розглянуте технічне рішення реалізовано в мікроконтролерах

MCS

51 фірми

Intel

. його недолік – низький вхідний опір в режимі введення, обумовлене необхідністю використання підтягує до 1 резистора

R

для виведення одиничного біта.

Драйвери з керованими підтягуються резисторами.

Для усунення зазначеного вище недоліку в схему драйвера вводиться керований підтягаючий резистор. Одне з таких технічних рішень приведено на рис. 4.4.3.

Як навантаження вихідного каскаду використовуються транзистори

VT1

і

VT3.

керований транзистор

VT1

володіє опором в сотні разів меншою в порівнянні з транзистором

VT3.

Він забезпечує швидке переключення схеми і велику амплітуду імпульсу при виведенні одиничного біта. транзистор

VT3

виконує функцію підтягує резистора в сталому режимі, його опір значно більше, ніж

R

в схемі на рис. 4.4.2. При виведенні одиничного біта з появою

Q # =

0 відмикається транзистор

VT1

і на виході формується логічний рівень РТХ = 1. Через деякий час на виході елемента затримки

D

з’являється одиничний сигнал, який переводить транзистор

VT1

в замкнений стан.

На рис. 4.4.4 наведені загальні технічні рішення з керованими підтягуються резисторами. У схемі на рис. 4.4.4, а резистор

R

за допомогою

VT

3 підключається паралельно навантажувального транзистора

VT

1, що дозволяє при виведенні даних підтягувати логічний рівень до 1. У схемі на рис. 4.4.4, б резистор

R

підключається паралельно транзистору

VT

1, що дозволяє підтягувати логічний рівень до 0. Наведені схеми використовуються в контролерах фірми

Motorola

.

У контролері є засоби програмного підключення підтягують резисторів:

● спеціальний біт регістра конфігурації дозволяє підключення резистора

R

;

● біти 0-7 регістра вхідного опору безпосередньо підключають

R

до необхідної лінії. Значення біта можна багаторазово змінювати в ході виконання прикладної програми. Отже, є можливість динамічного управління вхідним опором по кожній лінії порту введення.

Ссылка на основную публикацию