Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Цифровые устройства и микропроцессоры

.pdf
Скачиваний:
516
Добавлен:
09.06.2015
Размер:
3.6 Mб
Скачать

80

Возможные варианты сочетания управляющих сигналов и направления передачи информации в системе приведены в табл.18.

 

 

 

 

 

Таблица 18

 

 

 

 

 

 

 

 

Входные сигналы

 

Направление пе-

Вид информ.

У/Д(А0)

Чт

Зп

ВК

редачи

 

 

0

0

1

0

ВВ51ШД

Данные

 

0

1

0

0

ШДВВ51

Данные

 

1

0

1

0

ВВ51ШД

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

 

1

1

0

0

ШДВВ51

Управляющие

 

 

 

 

 

 

слова

 

Кроме рассмотренных, к устройству управления записью/чтением подводится вывод синхронизации (СИ – С), на который подаются синхроимпульсы. При работе в синхронном режиме их частота должна быть min в 30 раз выше частоты приема или передачи; при работе в асинхронном режиме – min в 5 раз.

Сброс (Сбр. – С) установка микросхемы в исходное состояние, сигнал подаётся от генератора ГФ– 84.

При программировании в ВВ51 заносится инструкция режима и инструкция команды, координирующая работу ВВ51. Кроме того, для синхронной связи необходимы регистры для хранения символов синхронизации, которые тоже заносятся программно. В системах передачи данных часто необходимо контролировать то состояние микросхемы, которое устанавливается в процессе работы, сбоев, ошибок или других ситуаций. Микросхема содержит регистр состояний, позволяющий программисту читать её состояние в любой момент времени в процессе выполнения операции. Содержимое регистра состояния не изменяется во время чтения слова состояния. Формат регистра слова состояния приведён в табл. 19 и будет рассмотрен далее.

Таким образом, процессор может обращаться к семи регистрам микросхемы: регистру входных данных, регистру выходных данных, регистру режима, регистру команд, регистру слова состояния, двум регистрам синхросимволов).

Как же производится адресация, если для МП контроллер ВВ51 ассоциируется с адресами всего 2 портов (на вход У/D подаётся 0 или 1 с адресной линии А0). Дело в том, что выбор регистров режима, управления или символов синхронизации зависит от последовательности обращения при программировании микросхемы. Последовательность программирования приведена на рис.22.

Рассмотрим следующие блоки структурной схемы.

Устройство управления передатчиком УУПд вырабатывает внутренние и внешние управляющие сигналы для передачи. Для синхронизации передачи данных по выходу «Вых.пд» служит вход Си.Пд (TxC)(синхроимпульсы передатчика), на который подаются синхросигналы от приёмника данных.

81

При синхронном режиме данные поступают на выход передатчика при каждом срезе сигнала на входе Си. Пд., т. е. частота выдачи информации на выходе передатчика равна частоте синхросигнала на входе Си.Пд. Для асинхронного режима частота выдачи данных может программно (как определено

винструкции режима) устанавливаться равной частоте синхросигнала или же

в16 или 64 раза меньше её. Сигналы тактирования поступают с приемника данных от специального генератора скорости в бодах или через делитель от тактовых импульсов общего генератора, хотя синхронности с сигналом CLK не требуется. Например, скорость передачи 100 бод, тогда при кратности 1 – частота тактирования должна быть 100 Гц, при кратности 1/16 – частота тактирования равна 1,6кГц; при кратности 1/64 – частота тактирования 6,4 кГц. Максимальная частота на этом входе может быть 615 кГц.

Устройство управления передатчиком имеет ещё два выхода: готовность передатчика Г.Пд (Tx.Rd) и конец передачи К.Пд (Tx.Еnd).

Выход Г.Пд используется для информирования МП о готовности контроллера КР580ВВ51 принять новые данные или команды управления. При работе по запросу сигнал с этого выхода используется как сигнал запроса прерывания МП, после чего МП переходит на подпрограмму для передачи данных. При работе по опросу (считываемому типу прерываний) МП определяет состояние сигнала на этом выходе с помощью чтения слова состояния из регистра слова состояния. Микропроцессор программно определяет состояние разряда D0 (Г.Пд). В этот разряд запишется «1», как только в буфере передатчика (Б.Пд) не будет полезной информации, причём в разряде D0 управляющего слова (разрешение передачи) при программировании записана «1», а на входе готовности приёмника терминала (Г.Пр.Т) – «0» (об этом блоке будем говорить далее). После определения «1» в разряде D0 слова состояния МП выполнит передачу данных. Как только в контроллер запишется новое данное из МП, на выходе Г.Пд. установится «0», (соответственно, разряд D0 слова состояния тоже установится в «0»).

82

Рис. 21. Структурная схема КР580ВВ51А

Выход конец передачи КПд (Tx.End) установится в «1», как только преобразователь параллельного кода в последовательный в канале передатчика не будет содержать данных. Сброс сигнала на этом выходе происходит в момент записи новых данных в микросхему.

Асинхронная передача. Как уже говорилось, в асинхронном режиме работы формат данных (рис. 19) включает нулевой старт-бит, биты данных, контрольный бит и стоп-биты. Число битов данных и стоп-битов, а также наличие или отсутствие бита контроля задаются инструкцией режима. Более подробно инструкция режима рассматривается ниже в разделе «Программирование микросхемы». Если микросхема не содержит информацию для передачи, то на выходе Вых.Пд (TxD) устанавливается напряжение высокого уровня. Если в инструкции команды запрограммирована «пауза», на выходе устанавливается «0».

Синхронная передача. После записи в микросхему инструкции режима, синхросимволов, инструкции команды и данных передатчик не начнёт передачу до тех пор, пока на входе готовности приёмника терминала Г.Пр.Т. (СTS) не установится «0». Если на этом входе установился «0» и в разряд D0 инструкции команды записана «1», то передатчик начинает трансляцию по выходу передатчика Вых.Пд. (Tx.D) со скоростью синхроимпульсов, поступающих на вход синхронизации передатчика Си.Пд. (Tx.C).

Каждый раз после сигнала сброса (RS) программируются инструкция режима, синхросимвол (синхросимволы) и инструкция команды. Для начала передачи информации с выхода передатчика в него необходимо записать любые данные, которые будут потеряны, так как в это время приёмник внешне-

83

го устройства будет работать в режиме поиска синхросимволов. Может получиться, что МП не запишет очередную информацию в микросхему ВВ51А до того, как она передаст предыдущую информацию. В этом случае для предотвращения потери синхронизации между УСАПП и внешним устройством в поток данных автоматически вставляются синхросимволы. При этом на вывод «Конец передачи» К.Пд. (Tx.End) подаётся напряжение высокого уровня, показывающее, что микросхема не имеет информации для передачи и синхросимволы посланы внешнему устройству. Когда МП начинает записывать информацию в ВВ51А, на выходе К.Пд. устанавливается ноль.

Буфер приёмника (Б.Пр.) получает последовательность символов по выводу Вх.Пр.(RxD) вход приёмника. В этом блоке данные выделяются и преобразуются в параллельный код.

В асинхронном режиме перед началом приёма данных на выводе Вх.Пр. должен быть выставлен уровень «1». В соответствии с форматом данных при работе в асинхронном режиме, нулевой уровень воспринимается схемой как стартовый разряд, сообщаемый перед каждым данным. Определив стартовый разряд и получив данные, разряд чётности и стоп биты, приёмник преобразует их в параллельный код, после чего устанавливает сигнал «1» на выходе Г.Пр.–RxRDY (готовность приёмника). Сигнал на нём указывает о готовности данных приёмника ко вводу. Сигнал при работе по запросу может быть использован как сигнал запроса прерывания. Можно использовать его как сигнал запроса захвата в каналах ПДП. При работе по считываемому типу прерываний состояние сигнала на этом выходе определяется с помощью чтения слова состояния (табл. 19) и определения содержания его разряда D1 (ГПр).

Ошибки работы адаптера устанавливают соответствующие биты в слове состояния (четности, формата или переполнения). Бит переполнения устанавливается, если к моменту окончания приёма очередного данного МП не считал ранее записанные данные из регистра принимаемых данных. В этом случае ранее записанная информация теряется.

При синхронном приёме данных по входу Вх.Пр существует два вида режима работы, отличающиеся методом синхронизации приёма данных: режим внутренней синхронизации и режим внешней синхронизации. Формат данных при синхронном режиме уже рассматривался выше (рис. 20).

При синхронном приёме с внутренней синхронизацией работа микро-

схемы начинается с поиска синхросимолов. Информация принимается по входу Вх.Пр.(Rx.D) в буфер приёмника и непрерывно сравнивается с содержимым регистра первого синхросимвола. Если содержимое двух регистров не одинаково, то регистр прёмника принимает следующий бит информации и сравнение повторяется. Когда содержимое сравниваемых регистров становится одинаковым, микросхема заканчивает поиск и переходит в режим синхронизации. При этом, если не запрограммирован контроль на чётность (нечётность), на выводе В.С – SУNDET/BD (вид синхронизации), работающем как выход, после приёма последнего бита синхросимвола устанавливается

84

уровень «1», сигнализируя внешнему устройству о том, что произошёл захват синхронизации.

Если УСАПП запрограммирован на работу с двумя синхросимволами или с контролем на чётность (нечётность), то описанная ситуация произойдёт во время последнего бита второго синхросимвола или бита контроля соответственно

Сигнал «0» на выводе В.С. устанавливается автоматически после каждого чтения слова состояния. Состояние сигнала на выводе В.С. отображается в этом слове.

В режиме синхронного приёма с внешней синхронизацией вывод В.С.

используется как входной для подачи напряжения синхронизации, которое разрешает приём информации по входу Вх.Пр. со скоростью синхросимволов, поступающих на вход синхронизации приёмника СИ.Пр (Rx.C). Длительность входных сигналов, поступающих на вход «вид синхронизации (В.С.)» должна быть больше или равна периоду частоты синхронизации сигналов, поступающих на вход синхронизации приёмника Си.Пр. Этот же контакт (В.С.), но только в качестве выхода применяется и при асинхронной работе. Сигнал на нём называется сигналом обнаружения разрыва, и он высоким уровнем отмечает прием символа, состоящего из одних нулей.

Рассмотрим последний блок структурной схемы: устройство управления модемом (УУМ). Этот блок осуществляет обмен управляющими сигналами со связными модемами различных типов, которые включаются между ВВ51А и линией связи с удаленными ВУ, с целью проверки состояния внешних устройств. Для каждого канала (приёмного и передающего) в устройстве управления модемом имеется по одному одноразрядному входу и выходу.

Запрос передатчика терминала (З.Пд.Т. – DTR) – выход сигнала запроса передатчика терминала. Это сигнал общего назначения. В частности, сигнал запрашивает внешнее устройство о его готовности передавать данные через вход приёмника Вх.Пр. микросхемы ВВ51А к МП. Выход сигнала запроса управляется программно установкой «0».

Готовность передатчика терминала (Г.Пд.Т. – DSR) – входной сигнал общего назначения. В частности, по этому входу внешнее устройство сообщает о готовности передатчика передать данные. Состояние входа фиксируется в слове состояния (D7) и может быть проанализировано.

Запрос приёмника терминала З.Пр.Т.(RTS) – выходной сигнал общего назначения, в частности, используется как сигнал запроса приемника терминала о его готовности принять через ВВ51А данные. Нуль на выходе устанавливается программно.

Готовность приёмника терминала Г.Пр.Т.(CTS) – входной сигнал общего назначения, в частности, вход может быть использован для информирования микросхемы о готовности приемника модема принять данные в ответ на сигнал Г.Пр.Т. Нулевой сигнал на этом входе при наличии «1» в разряде D0 управляющего слова, записанного при начальной установке схемы, разрешает передачу данных на выходе передатчика Вых.Пд.

85

Часто возникает необходимость контролировать состояние схемы, устанавливаемое в процессе обмена данными. Для этой цели используется регистр состояния, в разрядах которого отображаются сбои, ошибки и наличие сигналов на управляющих выводах микросхемы. Микропроцессор может считывать содержание регистра состояния в любой момент времени в процессе обмена данными. Как уже говорилось выше, с помощью программной проверки разрядов D0, D1 организуется работа по опросу, т. е. без использования сигнала запроса прерывания МП. Формат регистра состояния приведён в табл. 19. Наличие ошибок при обмене информации по каналам связи фиксируется в разрядах ошибок регистра состояния, но не воздействует на режим работы схемы. Разряды ошибок сбрасываются при записи инструкции команды.

Программирование микросхемы КР580ВВ51А

После начальной установки (внешней или внутренней) в схему должны быть записаны команды начальной установки из микропроцессора. Различаются управляющие слова двух видов: инструкция режима и команды. Инструкция режима задаёт синхронный

 

 

Таблица 19

Разряд

Обозначение

Пояснение

 

D0

ГПд

В разряд записывается «1», если буфер данных

 

 

 

передатчика не содержит данных

 

D1

ГПр

При «1» приёмник готов выдать данные МП

 

D2

КПд

При «1» передатчик закончил преобразование

 

 

 

данных

 

D3

ОЧ

В разряд ошибки чётности записывается «1», если

 

 

 

обнаруживается ошибка чётности. Разряд сбрасыва-

 

 

 

ется в «0» записью «1» в разряд D4 инструкции ко-

 

 

 

манды.

 

D4

ОП

В разряд ошибки переполнения записывается «1»,

 

 

 

если МП не считывает данные из приёмника к мо-

 

 

 

менту записи новой посылки. Разряд сбрасывается в

 

 

 

«0» записью «1» в разряд D4 инструкции команды

 

 

 

В разряд ошибки формата записывается «1» (толь-

 

D5

ОФ

ко при асинхронном режиме), если в конце данного

 

 

 

не обнаруживается в стоп-бите «1». Разряд сбрасы-

 

 

 

вается в «0» записью «1» в разряде D4 инструкции

 

 

 

команды

 

 

 

Состояние такое же, как состояние сигнала на вы-

 

D6

Вид синхр

ходе Вид СИНХР

 

 

 

Состояние разряда такое же, как состояние сигна-

 

D7

ГПдТ

ла на входе ГПдТ.

 

 

 

 

 

или асинхронный режим работы, формат данных, скорость приёма или передачи, необходимость контроля. При синхронном режиме приёма данных указывается также тип синхронизации (внутренний или внешний). Инструкция заносится сразу после установки УСАПП в исходное состояние программно

86

или по сигналу сброса и заменяется лишь при смене режима. Команда осуществляет управление установленным режимом обмена и может многократно задаваться в процессе обмена, управляя различными его этапами.

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

Формат инструкции режима при асинхронном и синхронном режимах работы схемы приведён на рис. 5.

Инструкция команды должна записываться в схему всегда после инструкции режима и синхросимволов (в синхронном режиме). Она может записываться в любое время в процессе обмена информацией по каналам связи. Формат инструкции команды приведён в таблице 20.

Начальная установка схемы по сигналу СБРОС (внешняя) или с помощью «1» в разряде D6 инструкции команды (внутренняя) возвращает схему в исходное состояние и приводит к необходимости записи новой инструкции режима.

Рассмотрим фрагмент программы, который инициализирует регистр режима и содержит приказ разрешения работы передатчика и запуска асинхронной передачи со следующим форматом: 7 бит символа, бит чётного паритета и 2 стоповых бита. Предположим, что регистры режима и команд имеют адрес 71Н, а частоты синхронизации в 16 раз больше соответствующих скоростей в бодах.

MOV AL, 11111010B; инструкция режима OUT 71H, AL

MOV AL, 00110011B; инструкция команды

OUT 71H, AL

Следующий пример показывает программирование микросхемы в синхронный режим с внутренней синхронизацией и поиском одного символа синхронизации. Запрограммированы 7 информационных бит и бит чётного паритета. Адреса сохраним прежние.

MOV AL, 00111000B ; инструкция режима OUT 71H, AL

MOV AL, 16H

OUT 71H, AL

MOV AL, 10010100B ; инструкция команды

OUT 71H, AL

87

Рис. 22. Последовательность программирования и алгоритм работы КР580ВВ51А

88

Д7 Д6 Д5 Д4 Д3 Д2 Д1 Д0

{{{{

Д1

Д0

0

0

0

1

1:1

1

0

1:16

1

1

1: 64

 

 

 

Д3

Д2

 

0

0

5

0

1

6

1

0

7

1

1

8

 

 

 

Д5

Д4

 

0

Х

 

1

0

 

1 1

Д7 Д6

 

0

0

1

( Д1 = Д0 = 0)

0

1

 

1

0

1,5

 

1

1

2

 

 

 

 

Д7 Д6

0

1

0

1

Рис. 23. Формат инструкции режима

89

 

 

 

Таблица 20

Разряд

Обозначение

Содержание

Пояснение

 

Разрешение передачи ин-

0

Передача информации не-

 

формацией

 

возможна

До

 

1

Передача информации воз-

 

 

можна

 

Запрос о готовности пере-

0

Д1

датчика терминала передать

1

Записывает «0» на выходе

 

данные

 

ЗПдТ

 

Разрешение приема инфор-

0

Приём информации невоз-

Д2

мации (Р.Прм)

 

можен

 

1

Приём информации возмо-

 

 

 

жен

 

Отключение канала пере-

0

Нормальная работа канала

Д3

датчика

1

Уровень «0» на выходе ка-

 

 

 

нала

 

Начальная установка разря-

0

 

дов ошибки

 

 

Д4

1

Установка разрядов ошибки

 

 

регистра состояния в ис-

 

 

 

ходное состояние

 

Запрос о готовности при-

0

Д5

емника терминала принять

 

 

1

Записывает «0» на выходе

 

данные

 

ЗПрТ

Д6

Программный сброс схемы

0

 

в исходное состояние

1

Возвращает схему к уста-

 

 

 

новке режима работы

Д7

Установка режима поиска

0

 

синхроимпульсов

 

 

 

1

Устанавливает режим по-

 

 

 

иска синхроимпульсов

Рассмотрим ещё один пример,

где с помощью словосостояния (про-

граммный ввод, т.е. работа микропроцессорной системы « по опросу») производится ввод 80 символов с внешнего устройства через последовательный интерфейс КР580ВВ51А. (Будем считать, что микросхема была ранее уже запрограммирована). Примем адрес буферного регистра данных равным 0070Н. Введённые символы разместить в ячейках памяти, начинающихся с BUF. После считывания слова состояния производится проверка бита D1 ГПр. (RxRDY) до тех пор, пока он не установится символом, принятым в буферный регистр входных данных. Затем символ пересылается в ячейки памяти, начинающейся с адреса BUF.

MOV

AL, 00010110B ; инструкция команды, разрешающая

OUT

71H, AL

; приём

MOV

SI, 0

; инициализация индексного регистра

MOV

CX,80

; счётчик

MET: IN

AL, 71H

; прочитать слово состояния

TEST

AL, 02H

 

JZ

MET