Универсальный синхронно–асинхронный приемопередатчик

Пример HTML-страницы

Универсальный синхронноНазначение УСАПП.

С помощью УСАПП реализуется обмен между процессо­ром и внешним устройством (ВУ) в последовательном коде. Программным спосо­бом можно установить один из пяти режимов: асинхронная передача, асинхрон­ный прием, синхронная передача, синхронный прием с внутренней синхрониза­цией и синхронный прием с внешней синхронизацией. Асинхронный обмен харак­теризуется одиночными посылками информации со стороны УСАПП или ВУ, содержащими старт–бит, 5–8 бит данных, бит контроля четности, 1–2 стоп–бита. При синхронном обмене после передачи одного или двух синхросимволов следу­ет непрерывный поток данных в виде массива. табл. 3.7.1

Организация обмена.

Для организации обмена помимо аппаратных средств используются:

● команды ввода (

IN

) и вывода (

OUT

);

● два вида управляющих слов: инструкция режима (табл. 3.7.1) и инструкция команды (табл. 3.7.2);

● слово состояния

(табл. 3.7.3);

● информационно–управляющие сигналы

(табл. 3.7.4–3.7.6), действующие на выводах УСАПП (рис. 3.7.1). табл. 3.7.2 - табл. 3.7.3

Структура УСАПП.

В схеме УСАПП (рис. 3.7.1) можно выделить передатчик, приемник, буфер ввода–вывода, регистры управляющих слов и слова состояния, блок управления. рис. 3.7.1

Передатчик предназначен для преобразования данных, поступающих из процессора в виде 8–разрядного параллельного кода, в последовательный код с добавлением служебных символов согласно формату данных при синхронном и асинхронном обмене. Управление работой передатчика осуществляется моду­лем управления, который отслеживает прием новых данных со стороны процес­сора, добавляет к ним стартовый и стоповый биты, контрольный бит и синхрони­зирует вывод из сдвигающего регистра с использованием уведомительных и уп­равляющих сигналов (табл. 3.7.4). табл. 3.7.4

Приемник предназначен для преобразования последовательности симво­лов, поступающих от передатчика ВУ, в параллельный 8–разрядный код и записи этого кода в свой регистр данных. В приемник входят два регистра данных и ре­гистры для хранения синхросимволов. Модуль управления приемником включает логику формирования синхроимпульсов приема, счетчик числа принятых битов, схему контроля четности, триггер ошибки четности РЕ (

Parity

Error

), триггер ошибки кадра (

Framing

Error

FE

) и триггер ошибки переполнения (

Overrun

Error

— ОЕ) и другие узлы. Назначение сигналов приемника приведено в табл. 3.7.5. табл. 3.7.5

Буфер ввода–вывода предназначен для связи УСАПП с процессором, представляет собой 8–разрядное двунаправленное устройство с третьим высокоомным состоянием Z.

Регистры управляющих слов хранят инструкции режимов (табл. 3.7.1) и команд (табл. 3.7.2), а регистр слова состояния — необходимые сведе­ния о состоянии УСАПП (табл. 3.7.3).

Блок управления координирует режимы УСАПП. Назначение управляющих сигналов приведено в табл. 3.7.6. табл. 3.7.6

С помощью сигналов:

● активизируется работа УСАПП ( ¯ВК);

● задается направление передачи между процессором и УСАПП ( ¯Зп , ¯Чт). Направ­ление передачи инициируется командами ввода (

IN

) и вывода (

OUT

);

● определяется вид передаваемых данных (У/Д);

● осуществляется перевод УСАПП в исходное состояние (Сброс) и в высокоомное состояние

Z

.

Задаваемые сигналами режимы УСАПП приведены в табл. 3.7.7. табл. 3.7.7

Режимы работы УСАПП.

На рис. 3.7.2 приведена блок–схема алгоритма ра­боты УСАПП в различных режимах. Во всех режимах подачей системного сигнала сброса УСАПП устанавливается в исходное состояние. При синхронном обмене с помощью команды

OUT

(вывод) в УСАПП передаются и хранятся до конца сеанса инструкция режима, один или два синхросимвола и инструкция команды, которые предварительно формируются в аккумуляторе процессора. Вид выводимой из процессора информации (управляющие слова, данные) координируется сигна­лом У/ ¯Д. При асинхронном обмене синхросимволы не выводятся. Во всех режимах текущий сеанс обмена завершается выводом инструкции команды, содержащей:

D

3 = 1 в разряде конец передачи (или

D

0 = 0 — при передаче и

D

2 = 0 — при приеме), если следующий сеанс обмена данными не потребует изменения режима УСАПП;

D

6 = 1 в разряде установка УСАПП в исходное состояние, если следующий сеанс обмена требует изменения режима УСАПП. Рассмотрим особенности отдельных режимов работы УСАПП. рис. 3.7.2

Синхронная и асинхронная передача.

После передачи в УСАПП уп­равляющих слов командой

OUT

из аккумулятора процессора в буфер ввода–выво­да записывается первый байт данных (левая часть рис. 3.7.2). В передатчике вы­водимый байт данных преобразуется в требуемом формате и поступает на ВыхПд, если сигнал готовности приемника ВУ ¯ГПмВУ = 0. При асинхронном выво­де единственного байта данных сеанс передачи заканчивается и из процессора выводится следующая инструкция режима или (и) команды. При синхронном вы­воде первый байт данных является пустым (при программировании он может быть задан произвольно), так как ему на выходе передатчика не предшествуют синхросимволы. Поэтому УСАПП всегда выводит массив, по крайней мере, из двух байтов. При выводе массива байтов передача очередного байта из процессора в УСАПП возможна лишь после завершения выдачи предыдущего байта. О завер­шении выдачи байта данных передатчик извещает сигналом ГПд = 1 на своем выходе и значением

D

0 = 1 слова состояния. При использовании сигнала ГПд = 1 на выходе ГПд микропроцессор переходит на выполнение прерывающей про­граммы вывода данных через УСАПП.

При использовании слова состояния, а именно этот случай представлен на рис. 3.7.2, осуществляется циклический его ввод в процессор из регистра состо­яния по команде

IN

(ввод) при У/ ¯Д = 1 до тех пор, пока в разряде

D

0 не появится единицы, после чего будет выводиться следующий байт данных. После вывода последнего байта данных в аккумуляторе процессора формируется инструкция команды на завершение сеанса передачи.

Как видно из рис. 3.7.2, отличие синхронной передачи состоит в том, что после передачи первого байта начинается опрос разряда

D

0 слова состояния и вывод байтов данных. При асинхронной передаче этой процедуры может не быть.

Синхронный и асинхронный прием.

При синхронном приеме с внут­ренней синхронизацией в разряде

D

6 (вид синхронизации) инструкции режима записывается нуль, чтобы использовать вывод ВидС для выдачи сигнала в ре­гистр состояния

PC

. Эта операция реализуется после загрузки инструкции коман­ды в регистр управляющих слов (РУС) следующим образом. Из УСАПП в ВУ посы­лается сигнал запроса готовности передатчика ¯ЗПдВУ = 0. После поступления ответного сигнала ¯ГПмВУ = 0 на вход ВхПм подаются последовательно синхро–символы и слово данных. При совпадении принятых синхросимволов с синхросимволами инструкции команды слово данных записывается в регистр приемника и на выходе ВидС устанавливается сигнал ВидС = 1, который выводится в разряд

D

6 регистра состояния. Единичные сигналы на входе ГПм приемника и в дублиру­ющем его разряде

D

1 слова состояния свидетельствуют об окончании приема слова данных и готовности выдачи его из УСАПП в процессор.

При синхронном приеме с внешней синхронизацией в инструкции режима

D

6 = 1 и вывод ВидС используется как вход, на который из ВУ подают сигналы разрешения приема данных. При этом байты данных принимаются в УСАПП с так­товой частотой синхроимпульсов, поступающих на вход ¯СПм приемника от пере­датчика ВУ. Для реализации обоих режимов синхронного приема в программе после передачи в УСАПП инструкции команды предусмотрено два цикла ввода в процессор слов состояния (рис. 3.7.2, правая часть) с проверкой в них значений разрядов

D

6 (вид синхронизации) и

D

1 (готовность приемника). При позитивных результатах проверок по команде

IN

в процессор вводится байт данных.

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

D

1 готовности приемника УСАПП.


Понравилась статья? Поделиться с друзьями:
Все об энергетике, электротехнике и электронике
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: