МПС РГР АВТ-409 Журкин. Министерство образования и науки российской федерации новосибирский государственный технический университет
Скачать 0.76 Mb.
|
11.Режимы работы.Режим работы УСАПП задается программно путем загрузки в него управляющих слов из МП. Различаются управляющие слова 2-х видов: инструкции режима и команды. Инструкция режима задает синхронный или асинхронный режим работы, формат данных, скорость приема или передачи, необходимость контроля. Инструкция заносится сразу после установки УСАПП в исходное состояние программно или по сигналу RESET и заменяется лишь при смене режима. Команда осуществляет управление установленным режимом обмена и может многократно задаваться в процессе обмена, управляя различными его этапами. При асинхронном обмене команда загружается сразу же после инструкции режима, а при синхронном обмене перед ней располагаются 1-ин или 2-а синхросигнала. Ограничения на последовательность загрузки управляющих слов связаны с внутренней организацией УСАПП. В асинхронном режиме работы формат данных включает нулевой старт-бит, биты данных, контрольный бит и стоп-биты. Число битов данных и стоп-битов, а также наличие или отсутствие бита контроля задаются инструкцией режима. Формат инструкции режима для асинхронного обмена представлен на рис.2а. Разряды D0 и D1 определяют три разновидности асинхронного режима по частоте сигналов синхронизации (с частотой сигналов синхронизации 1/16 и 1/64 частоты синхронизации). Разряды D3 и D2 определяют число битов данных. Режим контроля задается разрядами D5 и D4: при D4=0 контроль по четности запрещен; значение разряда D5 устанавливает вид контроля - по четности или нечетности. Разряды D7 и D6 определяют число передаваемых стоп-битов. При синхронном обмене данные передаются в виде массивов слов, а для синхронизации запуска при приеме данных используются 1-ин или 2-а символа синхронизации. Формат инструкции режима для синхронного обмена представлен на рис.2б. Разряды D1 и D0 для синхронного режима должны иметь нулевое значение. Разряд D6 устанавливает вид синхронизации (внешняя или внутренняя). Разряд D7 определяет использование одного (D7=1) или двух (D7=0) символов синхронизации. Назначение разрядов D3,D2 и D5,D4 - такое же, как при асинхронном обмене. Команды подаются на УСАПП после инструкции режима и управляют выполнением конкретных операций. Назначение отдельных разрядов команд управления УСАПП поясняется в табл.4. Таблица 4. Назначение разрядов команд управления УСАПП
Для контроля состояния УСАПП в процессе обмена данными МП может с помощью команды ввода считывать слово-состояние БИС из специального внутреннего регистра состояний. Значение управляющих сигналов при чтении слова-состояния указано в табл. 3. Формат слова-состояния приведен на рис. 2в. Кроме уже рассмотренных в табл.2 сигналов в слове-состоянии формируются три флага ошибок: разряд D3 устанавливается при возникновении ошибки четности (РЕ); разряд D4 устанавливается при возникновении ошибки переполнения (ОЕ), если МП не прочитал символ: D5 устанавливается при наличии ошибки стоп-бита (FЕ), если в конце посылки для асинхронного режима не обнаруживается стоп-бит. После записи инструкции режима и команды УСАПП готов к выполнению обмена данными в одном из 5-ти режимов: синхронная передача; синхронный прием с внутренней синхронизацией; синхронный прием с внешней синхронизацией; асинхронная передача; асинхронный прием. На рис. 3а приведена временная диаграмма сигналов управления УСАПП при записи инструкции режима, синхросигналов и команды, а на рис.3б - временная диаграмма сигналов управления при чтении слова-состояния. При синхронной передаче данных на выходе TxD с частотой сигнала синхронизации формируется последовательность, начинающаяся с синхросигналов, запрограммированных инструкцией режима. Затем передаются поступающие из МП коды символов, каждый из которых может заканчиваться битом контроля. Если МП не загрузил очередной символ к моменту передачи, то УСАПП вставляет в передаваемую последовательность синхросигналы, а на выходе TxE вырабатывается сигнал Н-уровня, идентифицирующий пустую передачу. При синхронном приеме с внутренней синхронизацией УСАПП начинает работу с поиска во входной последовательности синхросигналов. УСАПП сравнивает записанные в него при настройке синхросигналы с принимаемыми символами. После обнаружения синхросигналов устанавливается сигнал Н-уровня на выводе SYNDET и начинается прием входных данных (рис.3в). Сигнал на выводе SYNDET автоматически сбрасывает при чтении слово-состояние УСАПП. При синхронном приеме с внешней синхронизацией (рис.3г) на вывод SYNDET подается сигнал от внешнего устройства, который разрешает прием данных на входе RxD со скоростью сигналов синхронизации, поступающих на вход RxC. Возможна организация приема данных в МП по прерыванию, если сигнал на выводе SYNDET использовать как запрос прерывания. При асинхронной передаче последовательные данные формируются на выходе TxD по спаду сигнала синхронизации TxC с периодом, задаваемым инструкцией режима и равным 1,16 или 64 периодам сигнала синхронизации. Если после передачи символа следующий символ отсутствует, то на выходе TxE устанавливается напряжение Н-уровня, пока новые данные не поступят от МП. В программе, реализующей алгоритм асинхронной передачи, запись очередного байта в УСАПП производится по команде вывода (out), если в слове-состоянии разряд D0=1, что соответствует Н-уровню сигнала на выходе TxRDY, используется как сигнал запроса прерывания. Асинхронный прием данных начинается с поиска старт-бита который устанавливает на входе RxD напряжение L-уровня. Наличие этого бита вторично проверяется стробированием его середины внутренним строб-импульсом. Если старт-бит найден, то запускается внутренний счетчик битов, который определяет начало и конец битов данных, бит контроля и стоп-биты. Прием стоп-бита идентифицирует окончание приема байта информации и сопровождается установкой сигнала Н-уровня на выходе RxRDY. В программе реализующей алгоритм асинхронного приема передача очередного байта данных в МП может производиться по команде ввода (IN) если в слове-состоянии разряд D1=1 что соответствует Н-уровню сигнала на выходе RxRDY или по прерыванию, если сигнал на выходе RxRDY используется как сигнал запроса прерывания. |