Интерфейсная БИС КР580В551А: назначение, структура, подключение к МП-системе, режимы работы и программирование, страница 2

Формат инструкции асинхронного режима приведен на рис.3.

r3_51a.gif (6018 bytes) 

Инструкция определяет тип и скорость передачи/приема данных (биты D1, D0), длину передаваемого символа (биты D3, D2), вид контроля (D5, D4), количество стоповых бит (D7, D6). Асинхронный обмен может осуществляться со скоростью, равной 1/1, 1/16 или 1/64, частоты синхронизации приема/передачи, подаваемой на входы RxC и TxC. Максимальная скорость передачи при соотношении 1/16 достигает 19,2 Кбод, при 1/64 - 9,6 Кбод.

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

r1_51s.gif (2265 bytes)Символы синхронизации используются для запуска синхронизации приемника. Приемник, находясь в режиме ожидания, сравнивает поступающие биты с кодом синхронизации. При поступлении идентичных синхросимволов приемник переключается на режим приема последовательного потока информации. Передача информации в синхронном режиме осуществляется непрерывно, вследствие чего скорость обмена в синхронном режиме выше, чем при асинхронном. При отсутствии данных передатчик выдает в линию связи символы синхронизации.

Синхронный режим программируется с помощью инструкции режима, содержащей биты D0D1= 00 (рис.2).Назначение битов D2-D5 тоже, что и при асинхронном режиме: D3,D2 - определяют количество битов в символе ( 00 - 5 бит, 01 - 6 бит, 10 - 7 бит, 11 - 8 бит), D4 - бит разрешения контроля , D5 - бит, указывающий тип контроля ( 1 - на четность, 0 - на нечетность). Биты D6,D7 в синхронном режиме используются иначе: D6 - указывает вид синхронизации (1 - внешняя, 0 - внутренняя). D7 - указывает количество синхросимволов (1- один, 0-два).

Синхронная передача. Передатчик начинает работу, если на входе CTS/- сигнал "0", а разряд D0 инструкции команд содержит 1. Для начала передачи информации в передатчик необходимо записать любые данные, которые будут потеряны, т.к. в это время приемник внешнего устройства будет находиться в режиме поиска синхросимволов.

Инициализация режима осуществляется путем выполнения следующей группы команд.

Адрес

Команды

16-й код

Мнемоника

ассемблера

Комментарий

8208   AF   XRA A 8209   D39D   OUT USART+1 820B   D39D   OUT USART+1 820D   D39D   OUT USART+1 820F   3E40   MVI A,RESET   ;Программный сброс УСАПП 8211   D39D   OUT USART+1 8213   3E??   MVI A,MOD51   ;Программирование режима УСАПП 8215   D39D   OUT USART+1 8217   3E19   MVI A,SYNC1   ;Запись 1-го синхросимвола 8219   D39D   OUT USART+1 821B   3EE6   MVI A,SYNC2   ;Запись 2-го синхросимвола 821D   D39D   OUT USART+1 821F   3E      MVI A,COM 8221   D39D   OUT USART+1  ;Передача команды в УСАПП

Если микропроцессор не запишет очередной символ в УСАПП до того, как последний передаст предыдущий информационный символ, то для предотвращения потери синхронизации в поток данных автоматически вставляются синхросимволы. При этом на выходе TxEND устанавливается напряжение высокого уровня. При записи данных в УСАПП на выходе TxEND устанавливается напряжение низкого уровня.

Синхронный прием. При синхронном приеме возможны две разновидности режима: с внутренней и внешней синхронизацией. При работе с внутренней синхронизацией (разряд D6 инструкции режима равен 0) работа УСАПП начинается по команде, разряд D7 которой установлен в 1. При этом УСАПП входит в состояние поиска синхросимволов. Информация, поступающая на вход RxD, по фронту RxC/ непрерывно сравнивается с содержимым регистра первого синхросимвола, а затем при необходимости и второго синхросимвола. При обнаружении синхросимволов во время приема последнего бита на выводе SYNDET/BD, работающем как выход, устанавливается напряжение высокого уровня, сигнализируя ВУ о том, что произошел захват синхронизации. При сбросе и чтении слова состояния на линии SYNDET/BD устанавливается в напряжение низкого уровня. При внешней синхронизации на вывод SYNDET/BD, работающий как вход, подается напряжение синхронизации, которое разрешает прием информации по входу RxD со скоростью поступления сигналов RxC/.В режиме синхронного приема с внешней синхронизацией запрограммированные символы не используются, а начало и конец приема данных определяется сигналом SYNDET/BD. Так как фиксация данных в приемнике происходит по фронту I/O сигнала RxC/,то необходимо активизировать сигнал на входе SYNDET/BD в предыдущем периоде сигнала RxC/ (это позволяет исключить сдвиг битов данных). При синхронном приеме данных ошибки четности и переполнения проверяются так же, как и при асинхронном режиме.