3389 ЦИФРОВЫЕ УСТРОЙСТВА - Страница 4

Программирование режимов портов БИС РФ55

Каждый порт имеет 8-разрядный регистр направления передачи данных, содержание которого определяет индивидуальную настройку каждой линии порта на ввод или вывод. С этой целью в регистр направления передачи загружается управляющий байт, в котором нулевой бит настраивает соответствующую линию на ввод, а единичный – на вывод.

Адресация портов и регистров направления передачи данных осуществляется в соответствии с таблицей с помощью линий AD0 – AD7.

AD1

AD0

Адресуемый объект

0

0

Порт A

0

1

Порт В

1

0

Регистр направления передачи данных порта А

1

1

Регистр направления передачи данных порта В

Содержимое регистров направления передачи данных нельзя прочитать.

ОЗУ с портами ввода-вывода и таймером КР1821РУ55

(Intel 8155/8156)

В устройство РУ55 входит статическое ОЗУ емкостью 258 х 8 бит, два 8-разрядных (А и В) и один 6-разрядный (С) порты ввода-вывода и 14-разрядный программируемый счетчик/таймер.

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

Выводы и сигналы БИС РУ55

AD0 – AD7 (вход – выход). Мультиплексная шина адреса-данных.

ALE  (вход). Разрешение фиксации адреса, поступающего по шине AD0 – AD7  во внутренний регистр адреса.

РА0 – РА7, РВ0 - РВ7, РС0 – РС5 (вход – выход). Двунаправленные шины данных портов А, В, С.

/RD  (вход). Управление чтением данных из БИС.

/WR (вход). Управление записью данных в БИС.

IO/ M  (вход). Выбор порта или памяти.

RESET (вход). Сброс. Все порты настраиваются  на ввод в режиме простого обмена данными. Останов таймера. Содержимое ячеек ОЗУ и буферных регистров портов сохраняется .

TIN (вход). Вход синхроимпульсов таймера.

TOUT (выход). Выходной сигнал таймера.

CS (вход). Выбор кристалла.

Режимы работы портов БИС РУ55

В состав внутреннего устройства БИС РУ55 входят регистр управляющего слова  (РУС) и регистр слова состояния (РСС). В РУС хранится  поступающее из МП управляющее слово, которое задает режим работы портов и таймера. В РСС формируются  текущие сигналы, сопровождающие работу портов в режиме обмена с квитированием, а также – о завершении цикла счета в таймере. В РУС можно только записывать данные, а из РСС – только читать. Поэтому они имеют один адрес (000), а обращение к нужному регистру определяется сигналами /WR, /RD.

В зависимости от содержания РУС порты А и В могут работать или в режиме простого обмена без квитирования  или в режиме обмена с квитированием.

Функционирование таймера

Таймер представляет собой 14-разрядный счетчик, работающий на вычитание при воздействии импульса на вход 14- разрядного кода (N), определяющего время счета. Этот код загружается  в таймер побайтно. При этом два старших разряда (T15, Т14) старшего байта, загружаемого в таймер, задают его режим и тип сигналов на выходе.

Т15

Т14

Режим таймера

0

0

Режим 0

0

1

Режим 1

1

0

Режим 2

1

1

Режим 3

В режиме 0 сигнал на выходе таймера имеет высокий уровень в течение  половины времени счета и низкий уровень – в течение второй половины этого интервала.

Режим 1 отличается от режима 0 лишь тем, что после окончания счета таймер автоматически перезагружается  и на его выходе периодически появляется сигнал прямоугольной формы (меандр).

В режиме 2 на выходе таймера после окончания счета возникает короткий импульсный сигнал низкого уровня.

Режим 3 отличается от режима 2 тем, что после окончания счета таймер  автоматически перезагружается  и на его выходе периодически появляется короткий импульсный сигнал низкого уровня.

Адресация внутренних узлов БИС РУ55

В БИС РУ55  предусмотрены изолированные адресные пространства памяти и ввода – вывода: при IO/М = 0  адрес АD7…АD0 интерпретируется  как адрес одной из 256 ячеек ОЗУ, а при IO/М = 1 – как адрес одного из внутренних узлов в соответствии с таблицей.

А2

А1

А0

Адресуемые узлы

0

0

0

Регистры РУС и РСС

0

0

1

Порт А

0

1

0

Порт В

0

1

1

Порт С

1

0

0

Таймер (младший байт)

1

0

1

Таймер (старший байт)

При обращении МП ВМ85 к внешним устройствам (команды IN и  OUT) адрес на линиях AD0 – AD7 дублируется на линиях А8 – А15 шины адреса. При обмене с РУ55 линии А8 – А10 содержат адрес внутреннего узла РУ55, следовательно, для выдачи сигнала выбора кристалла CS можно использовать только линии А11 – А15.

Программирование  БИС РУ55.

Формат управляющего слова:

D7         D6         D5          D4          D3         D2           D1         D0

TМ2

ТМ1

IE B

IE A

PC2

PC1

PB

PA

Формат слова состояния:

D7        D6         D5          D4          D3             D2          D1            D0

х

ТС

IE B

BF B

INTR B

IE A

BF A

INTR A

 

Биты РА и РВ управляющего слова задают направление передачи данных через порты РА и РВ ( 0 – ввод, 1 – вывод).

Биты РС2 и РС1 определяют вариант использования порта С в соответствии с таблицей:

РС2

РС1

Линии порта С

Назначение

0

0

РС0 – РС5

Ввод

0

1

РС0 – РС5

Вывод

1

0

РС0

INTR A

 

 

РС1

BF A

 

 

РС2

STB A

 

 

РС3 – РС5

Вывод

1

1

РС0

INTR A

 

 

РС1

BF A

 

 

РС2

STB A

 

 

РС3

INTR B

 

 

РС4

BF B

 

 

РС5

STB B

Здесь и ранее использованы следующие обозначения:

INTR A (B) – запрос прерывания по порту РА (РВ);

BF A (B) – буфер порта РА (РВ) полон ( занят);

STB A (B) – управляющий сигнал записи, соответствующий порту РА (РВ).

Биты IEA, IEB управляющего слова (слова состояния) разрешают (IE = 1) или запрещают выработку  сигналов прерывания  INTR.

Биты ТМ2, ТМ1 содержат  код (ТМ2 ТМ1) команды управления таймером. Описание команд приведено в таблице.

ТМ2

ТМ1

Описание команды таймера

0

0

Холостая команда, не влияющая на работу таймера

0

1

Немедленный останов таймера, если он находится в состоянии счета. Холостая команда, если таймер не запущен.

1

0

Останов таймера после окончания текущего цикла счета. Холостая команда, если таймер не запущен.

1

1

Пуск таймера. Если таймер не был запущен , то производятся установление режима работы , загрузка N и пуск таймера немедленно  после загрузки. Если таймер находится в режиме счета, то установление нового режима, загрузка N и пуск производятся немедленно  после окончания текущего цикла счета

TС – бит переполнения таймера. Может использоваться для организации прерывания от таймера. Сбрасывается при каждом считывании содержимого регистра слова состояния.

 

2.2.Конфигурация МП системы на основе БИС комплекта К1821

Минимальная конфигурация МП-системы, в которую входят только БИС из набора К1921, приведена на рис.1. Пунктир показывает границу МП-системы. Линии и шины, выходящие за границу, обеспечивают взаимодействие МП-системы с внешней средой (периферийными устройствами ПУ1…ПУ4. Для ввода-вывода можно использовать порты РА, РВ БИС РФ55 и РА, РВ, РС БИС РУ55.

Подключение БИС РФ55 и РУ55 к микропроцессору ВМ85

Можно использовать стандартный способ подключения при организации ввода и вывода в адресном пространстве ввода-вывода или организации ввода-вывода в едином адресном пространстве МП-системы. В схеме рис.1
использован второй вариант, так как для хранения управляющей программы достаточно использовать одну БИС РФ55.

При расширении МП-системы целесообразно разделять адресное пространство памяти и ввода-вывода. В таком варианте для выбора кристалла можно использовать неиспользуемые линии шины адреса. Используя свободные адресные линии  А11 – А15 для выбора микросхем, в состав системы на основе МП ВМ85 можно включить до пяти устройств РФ55, РУ55 без применения дешифратора для выработки сигнала выбора кристалла.

Адресация операндов в МП-системе, рис.1.

Минимальная конфигурация МП-системы позволяет адресовать БИС РУ55 и РФ55 и входящие в их состав внутренние объекты также без применения дешифратора. Для адресации используются свободные адресные линии: А14 – для выбора БИС РУ55 по линии CS; А13 – для выбора по линии IO/M внутреннего регистра, порта, таймера или ячейки ОЗУ в БИС РУ55; А12 – для выбора БИС РФ55 по линии /CS; А11 – для выбора по линии IO/M внутреннего регистра, порта или ячейки ПЗУ в БИС РФ55.

Таким образом, таблица адресации операндов в схеме рис.1 имеет следующий вид:

х000 0ххх хххх хххх – ячейка ПЗУ (РФ55),

х000 1ххх хххх хх00 – порт РА (РФ55),

х000 1ххх хххх хх01 – порт РВ (РФ55),

х000 1ххх хххх хх10 – регистр направления передачи

порта РА(РФ55),

х000 1ххх хххх хх11 – регистр направления передачи

порта РВ(РФ55),

х101 0ххх хххх хххх – ячейка ОЗУ (РУ55),

х111 0ххх хххх х000 – регистр управляющего слова или

регистр слова состояния (РУ55),

х111 0ххх хххх х001 – порт РА (РУ55),

х111 0ххх хххх х010 – порт РВ (РУ55),

х111 0ххх хххх х011 – порт РС (РУ55),

х111 0ххх хххх х100 – младший байт таймера (РУ55),

х111 0ххх хххх х101 – старший байт таймера (РУ55).

Режимы обмена через порты РФ55 и РУ55 различны. Порты РА и РВ РФ55 могут работать только в режиме простого обмена – без квитирования.

Порты РА и РВ РУ55 могут обеспечивать условный ввод или вывод с квитированием. Обмен служебными сигналами в таком случае осуществляется по линиям порта РС. Протокол обмена реализуется на аппаратном уровне. Рассмотрим процедуру такого обмена на примере ввода и вывода данных через порт РА.

При вводе  в МП через порт РА внешнее устройство выдает байт данных на линии  РА0 – РА7 и вырабатывает строб /STB А, по которому этот байт загружается  в буферный регистр порта. При этом устанавливается сигнал  BF А = 1 (следующий байт в порт записывать нельзя). По окончании строба  /STB А устанавливается сигнал запроса прерывания  INTR A для оповещения  МП о необходимости чтения  байта из порта . Сигналы  BF A и  INTR A  остаются активными  до выполнения  МП  команды ввода, по которой содержимое буферного регистра порта РА вводится в МП  по сигналу  /RD. С начала импульса  /RD сбрасывается сигнал  INTR A , а с его окончанием – сигнал BF А.

При выводе  данных  МП  вырабатывает сигнал записи  /WR =0, по отрицательному фронту этого импульса сбрасывается сигнал  INTR (INTR =0). По положительному фронту  импульса /WR  байт данных с шины данных записывается  в буферный регистр порта,  и устанавливается  сигнал BF = 1 (подготовлен байт для внешнего устройства). Внешнее устройство вырабатывает строб /STB, считывающий байт  из порта  и являющийся сигналом квитирования (подтверждения обмена). Сигнал BF снимается (по отрицательному фронту  строба /STB) и по положительному  фронту  импульса  /STB  устанавливается  сигнал

INTR = 1 для прерывания работы  МП с целью организации цикла вывода очередного байта данных.

Режим условного обмена с квитированием можно также реализовать программным способом. Информацию о наличии сигнала прерывания, о состоянии буферного регистра и о других управляющих сигналах МП может получить путем чтения  слова состояния  из РСС и анализа его содержимого.

2.3.  Характеристики БИС К572ПА1

Микросхема ЦАП К572ПА1 преобразует 10-разрядный входной параллельный двоичный код в ток на аналоговом выходе, пропорциональный значениям кода и опорного напряжения. Для преобразования кода в ток используются внешний источник опорного напряжения и матрица резисторов R-2R.

Для преобразования выходного тока в выходное напряжение, пропорциональное значению входного кода, требуются внешние операционные усилители (ОУ) с цепью отрицательной обратной связи.

Нумерация и назначение выводов микросхемы: 1 – аналоговый выход 1; 2 – аналоговый выход 2; 3 – общий вывод; 4-13 – цифровые входы (4 – старший разряд, 13 – младший разряд); 14 – напряжение источника питания; 15 – опорное напряжение; 16 – вывод резистора обратной связи.

ЦАП допускает работу при напряжении питания от +5 до +17 В и изменение опорного напряжения  в пределах Uоп = (+17 … -17) В. При напряжении питания от источника +5 В допускается непосредственная подача входных цифровых кодов в уровнях ТТЛ. Типовая схема включения ЦАП К572ПА1 в режиме четырехквадрантного умножения обеспечивает связь между напряжением на выходе Uвых  и входным кодом:

входной код 0000 0000,   Uвых = Uоп;

…          …

входной код 0111 1111,   Uвых = Uоп / 2 9;

входной код 1000 0000,   Uвых = 0;

…           …

входной код 1111 1111,   Uвых = - (Uоп – Uоп / 2 9 ).

В режиме четырехквадрантного умножения рекомендуется использовать ИС сдвоенного ОУ (два ОУ в одном корпусе ИС).

 

2.4.  Характеристики БИС КР572ПВ3

Микросхема КР572ПВ3 представляет собой АЦП последовательных приближений. Алгоритм преобразования реализуется с помощью регистра последовательных приближений, включающего сдвигающий регистр и регистр памяти на RS-триггерах. В нем выполняются операции поразрядного сдвига логической 1 в направлении от старших разрядов к младшим, хранения результата преобразования и поразрядной записи состояний выхода компаратора напряжений при последовательном сравнении входного аналогового напряжения и напряжений на выходе внутреннего ЦАП.

Нумерация и назначение выводов микросхемы КР572ПВ3: 1 – напряжение питания; 2 – опорное напряжение; 3 – вход смещения характеристики преобразования AI2; 4 – аналоговый вход AI1; 5 – аналоговая земля; 6-13 – цифровые выходы (6 – старший разряд, 13 – младщий разряд); 14 – выход состояния /BUSY; 15 – вход управления /RD; 16 – вход управления /CS; 17 – вход тактового сигнала CLK; 18 – цифровая земля.

АЦП имеет два одинаковых входа АI1 и AI2, соединенных внутренними резисторами с одним и тем же входом компаратора. На этот же вход компаратора подается выходное напряжение внутреннего ЦАП, управляемого регистром последовательных приближений.

Таким образом, АЦП обеспечивает преобразование в код суммы   напряжений, подаваемых на входы АI1 и AI2. При практическом использовании на вход AI1 подают входное напряжение, а на вход AI2 – напряжение, с помощью которого производится регулировка нуля АЦП (смещение характеристики преобразования), что дает возможность работы АЦП в биполярном режиме.

Диапазон изменения входного напряжения в униполярном режиме 0…+10 В, что соответствует выходным кодам от 0000 0000 до 1111 1111.

Управление работой АЦП КР572 ПВ3 осуществляется с помощью сигналов /CS (выбор кристалла) и /RD (чтение). Перепад 0/1 на входе /RD осуществляет сброс АЦП, сигнал 0 на входе /CS запускает процесс преобразования при условии, что предварительно АЦП был сброшен. Таким образом, если /CS = 0, то перепад 0/1 вызовет сброс и запуск преобразователя. Если же /CS = 1, то перепад 0/1 вызовет только сброс, а запуск произойдет по спаду 1/0 на входе /CS. На выходе /BUSY (АЦП занят) формируется сигнал 0 на интервале времени, когда осуществляется процесс преобразования. Данные на выходах D0…D7 существуют при сочетании сигналов /CS = 0, /RD = 0, /BUSY = 1. Если же этого сочетания нет, то выходы находятся в третьем состоянии.

При работе АЦП могут использоваться как внутренний, так и внешний тактовый генераторы. Импульсы с внешнего тактового генератора подаются на вход CLK. При использовании внутреннего тактового генератора к входу CLK подключается RC-цепь, задающая частоту импульсов (резистор R включается между входом CLK и источником питания, конденсатор С – между входом CLK и цифровой землей) Тактовая частота выбирается в пределах  0,4…1,5 МГц.



 
морской песок делает. сигнал на входе порта