Главная страница » Электрика в театре » Мультиплексоры демультиплексоры в последовательностных схемах

1 ... 27 28 29 30 31 32 33 ... 39

вень сигнала. Сигнал из этого же разряда передается в ЦПУ в качестве запроса или флажка прерывания. Передача запроса прерывания через линию РСО может быть запрещена программным способом.

Работа порта А зависит от режима управления. Если для порта А в режиме 1 задан вывод данных, то сигнал запроса устройства, поступающий от ЦПУ, открывает вентиль 1201, обеспечивая высокий уровень сигнала на линии РС7. Сигнал по этой линии передается к периферийному устройству в качестве

PC 7

РСВ

Периферийное ycaipoucaiSoy подключаемое pQlj

/< порту А

РОЗ

Режим и

РСЧ

РСЗ Режим i

1203

РСЗ

Режим

К ЦПУ

Перидзерий- pQ2 те устрой-

ство, подилю- РС1 чаемое д порту В

РСО

Рис. 12.7. Использование обмена данными стробированием при работе в режимах 1 и 2.

запроса на выполнение операции ввода-вывода. Ответ периферийного устройства передается по линии РС6. Сигнал из разряда РСЗ используется в качестве сигнала запроса прерывания ЦПУ. Если задан ввод в режиме 1, то сигнал запроса устройства из ЦПУ открывает вентиль 1202 и передается на линию РС5. Эта линия в свою очередь связана с периферийным устройством и используется для передачи на него сигнала запроса. Ответ периферийного устройства поступает по линии РС4, что приводит к формированию запроса на прерывание ЦПУ в линии РСЗ. При работе в режиме 1 через порт А может производиться либо ввод, либо вывод данных. Вследствие этого через неиспользуемые для управления разряды РС4 и РС5 или РС6 и РС7 порта С может осуществляться ввод-вывод данных. В упражнении У.6.8 показан типичный граф переходов, описывающий работу подобной схемы.

При работе в режиме 2 порт А может использоваться как для ввода, так и для вывода. Типичный граф переходов, соответствующий данному режиму, приведен в упражнении У.6.9. При работе в режиме 2 описанные выше сигналы запроса на ввод или



ВЫВОД направляются к вентилю 1203 (схема ИЛИ) для формирования в линии РСЗ сигнала запроса на прерывание. Для управления требуются все четыре входа РС4-РС7 порта С, однако обеспечивается большая гибкость в использовании порта А.

В табл. К-3 приложения К показан формат управляющего слова для режимов 1 и 2. Бит D7=l. Биты D6 и D5 используются для задания режима работы порта А. При работе в режиме 1 бит D4 определяет направление передачи данных через этот порт. Бит D3 используется для выбора направления передачи данных через разряды порта С, не используемые для управления. Бит D2 задает режим работы порта В. Бит D1 определяет направление передачи данных через порт В, а бит DO не используется.

При работе в режиме 2 биты выбора направления передачи данных D4 и D3 не используются, поскольку в этом режиме осуществляется двунаправленная передача.

Приемлемой схемой использования портов РРШ является работа порта А в режиме 2 и порта В в режиме 1 на вывод данных. Для инициализации работы РРШ можно использовать следующие команды:

MVI A,OFCH OUT PPIUC

Команда MVI загружает величину FCie в регистр А. Пользуясь табл. К.2 приложения К, можно удостовериться, что управляющее слово, необходимое для задания режима 2 для порта А и режима 1 на вывод для порта В, должно представлять собой величину FCie.

Команда OUT пересылает содержимое регистра А по адресу РРШС, являющемуся символическим адресом регистра управления РРШ.

Форматы управляющего слова приведены в табл. К.1-К-З приложения К, данные которого могут быть испо.т1ьзованы как справочные. Qj

12.2. СРЕДСТВА СВЯЗИ МИКРОПРОЦЕССОРНЫХ СИСТЕМ С УДАЛЕННЫМИ ОБЪЕКТАМИ

Первоначально для передачи данных на большие расстояния использовался телеграфный код или код Морзе. Развитие техники связи привело к переходу на телетайпный код и американский стандартный код для обмена информацией ASCII, приведенный в приложении Б. Разработчики ЭВМ и микро-ЭВМ придерживаются этого стандарта. Из очевидных экономических соображений следует, что передача данных на большие расстояния в последовательном коде по одной линии предпочтительнее па-



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

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

d0-7

CLHTx ПЛАТА

Регистры

CS2 RS

Е

Регистры npuenalпередачи

/\CIft ИСБ850

RkDAIA CLKRx

Рис. 12.8. Схема ACIA МС6850 фирмы Motorola.

1) передача символов в 5-, 6-, 7- или 8-битовых кодах;

2) выбор частоты тактовых импульсов, кратной скорости передачи в бодах (битах в секунду);

3) использование укороченных стоповых посылок;

4) выбор скорости передачи данных, измеряемой в бодах;

5) внутренняя и внешняя синхронизация.

Далее описываются способы программирования работы связных интерфейсов.

□ 12.2.1. Связной интерфейс фирмы Motorola

Асинхронный адаптер интерфейса связи ACIA (Asynchronous Communication Interface Adapter) MC6850, разработанный фирмой Motorola, представляет собой преобразователь параллельного кода в последовательный, предназначенный для асинхронной последовательной передачи данных. Он используется для управления обменом данными с модемами, устройствами на электронно-лучевых трубках, телетайпами и буквопечатаю-



Для обозначения асинхронной передачи автор использует термин handshake (обмен путем рукопожатия ). Имеется в виду, что при асинхронной передаче выполняется следующая последовательность щагов: проверить состояние устройства; активизировать устройство, если оно готово; передать данные (ввести или вывести); деактивизировать устройство. - Прим. перев.

щими устройствами ввода-вывода. Схема ACIA показана на рис. 12.8.

Для связи ACIA с шиной данных микропроцессора используются восемь линий (DO-D7), по которым производится передача данных в обоих направлениях. С адресной шиной связаны четыре линии, из которых три (CSO, CS1 и CS2) используются для выборки данного адаптера и одна (RS)-для выборки одной из двух пар регистров ACIA. Для связи с шиной ЦПУ имеются следующие три линии сигналов управления:

IRQ - запрос прерывания;

R/W - чтение/запись. Управляющий сигнал на этой линии выбирает один из регистров соответствующей пары регистров; Е - разрешение.

Со стороны подключения внешних устройств адаптер имеет два вывода для приема и передачи данных в последовательном коде:

Тх DATA - для передачи данных в канал связи; Rx DATA - для приема данных из канала связи. Для подачи в адаптер синхроимпульсов используются два вывода:

CLK Rx - для регулирования скорости приема данных;

CLK Тх - для регулирования скорости передачи данных.

Следующие три управляющих сигнала используются для управления асинхронной передачей');

CTS -признак отсутствия передачи данных и готовности к новой передаче;

DCD - признак обнаружения передачи данных;

RTS - запрос посылки данных.

ACIA содержит два управляющих регистра, называемых регистрами управления/состояния, и два регистра, используемых для буферизации передаваемых данных, которые называются регистрами передачи/приема. Сигнал RS = 0 обеспечивает выбор пары регистров управления/состояния, а сигнал RS = 1 - пары регистров передачи/приема. Сигнал R/W=l приводит к выбору регистра состояния из пары регистров управления/состояния или регистра приема из пары регистров передачи/приема, а сигнал R/W=0 -к выбору регистра управления или регистра передачи из указанных выше пар регистров. Формат



управляющего слова, записываемого в регистр управления, приведен в табл. И.5 приложения И.

Бит 7 определяет, используется ли в режиме приема данных из адаптера в ЦПУ выходной управляющий сигнал (IRQ -запрос прерывания). При работе в режиме приема запрос прерывания IRQ может быть разрещен или запрещен с помощью сигнала разрещения прерывания приема RIE. Сигнал RIE определяется значением бита 7 управляющего слова.

Биты 6 и 5 определяют состояние двух управляющих выводов RTS и IRQ при работе в режиме передачи данных. Для этого режима управление выводом RTS осуществляется непосредственно, а разрещение или запрещение запроса прерывания IRQ производится с помощью сигнала разрещения прерывания передачи TIE. Сигналы RTS и TIE устанавливаются и сбрасываются в зависимости от значений бит 6 и 5 управляющего слова (см. табл. И.5). Если бит 6=1 и бит 5-1, то на вывод адаптера TxDATA будут передаваться пробелы, использование которых является более предпочтительным, чем применение каких-либо специальных служебных символов-маркеров. Появление пробелов интерпретируется как признак конца передачи.

Биты 4, 3 и 2 задают длину передаваемого символа и количество стоповых битов, а также используются для проверки данных на четность/нечетность. Таблица И.5, содержащая информацию об этих битах, не требует дополнительных объяснений.. Биты 1 и О задают сигнал общего сброса адаптера (восстановления исходного состояния) и соотношение частоты тактовых импульсов и скорости передачи данных.

Программирование работы ACIA осуществляется путем загрузки в регистр управления адаптера управляющего слова. Приводимые далее команды обеспечивают настройку адаптера на следующий * режим работы: запрос прерывания IRQ запрещен; выдается сигнал RTS; производится проверка на четность; используется один стоповый бит, длина передаваемого слова 8 бит, коэффициент деления частоты тактовых импульсов 16.

LDAA #03 Содержимое регистра А=00000011

STAA ACIAC Приведение адаптера в исходное состоя-

ние

LDAA #$19 Содержимое регистра А=00011001

STAA ACIAC Загрузка в адаптер управляющего слова

Первая команда LDAA загружает в регистр А шестнадцатерич-ную величину 03 (задает сигнал общего сброса адаптера),

Команда STAA передает содержимое регистра А в регистр управления ACIA. Вторая команда LDAA загружает в регистр



> ЦПУ не успело прочитать данный символ до поступления в адаптер следующего символа. - Прим. перев.

2> Под ошибкой в формате понимается ситуация, когда не обнаружен столовый бит. - Прим. перев.

А величину 0001 ЮОЬ. Этот код задает требуемый режим работы адаптера Последняя команда STAA загружает содержимое регистра А в регистр управления ACIA.

ЦПУ опрашивает ACIA путем чтения содержимого регистра состояния. Назначение битов, записываемых в регистр состояния, описано в табл. И.6 приложения И. Бит 7 является признаком запроса прерывания. Этот бит устанавливается при прерывании работы ЦПУ. Бит 6 - признак обнаружения ошибки при проверке данных на четность или нечетность. Бит 5 - признак. потери символа'>. Биты 5 и О устанавливаются при наличии сигнала Е и чтении данных и сбрасываются при поступлении следующего сигнала Е и чтении данных. Бит 4 является признаком ошибки в формате данных) (ЕЕ - Framing Error). Бит 4 устанавливается при вводе символа в адаптер через вывод RxDAtA и сбрасывается при поступлении следующего символа на этот вывод. Бит 3 указывает, что поступил сигнал на вход. CTS. Бит 2 указывает состояние передача данных . Если на входе DCD сигнал равен 1, то бит 7=1 и сигнал IRQ = 0. Чтение содержимого регистра состояния и регистра, принимающего-данные со входа RxDATA, вызывает установку бита 2=0 и бита 7=0. Бит 1 указывает на состояние регистра передачи данных.. Отсутствие данных в регистре передачи приводит к установке бита 1 = 1. Если сигналы на входах Е и R/W равны нулю, то бит 1 = 0, так же как и при наличии сигнала CTS = 1. Бит О указывает на состояние регистра приема данных. Появление сигналов на обоих входах Е и R/W приводит к установке бит О=0 так же как и наличие сигнала DCD=1.

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

LDAA ACIAC Получить информацию о состоянии

ANDA #$0С Проверить биты состояния 3 и 2

Команда LDAA загружает содержимое регистра состояния ACIA в регистр А. Напоминаем, что для регистра состояния ACIA может выполняться операция загрузки содержимого этого регистра в регистр ЦПУ (т. е. операция чтения), а для регистра управления - операция записи в него содержимого регистра ЦПУ.

Команда ANDA сравнивает шестнадцатеричную величину ОС (OOOOllOOz), представляющую собой маску для проверки бит



CTS И DCD, с содержимым регистра состояния ACIA. Если эти проверяемые биты не равны нулю, то сбрасывается (устанавливается в 0) флажок в регистре состояния АЛУ центрального процессора. Этот флажок может использоваться при выполнении команд условного перехода. □

и 12.2.2. Универсальный интерфейс фирмы Intel

Устройство 8251А называют также универсальным приемопередатчиком, работающим в синхронном или асинхронном режиме- USART (Universal Synchronous/Asynchronous Receiver/ /Transmitter). Функциональная схема этого устройства, выполненная на одном кристалле, приведена на рис. 12.9. В USART имеются ДЬа управляющих регистра, называемых регистрами управления/состояния. ЦПУ записывает управляющую инфор-

т-7 Is

ш

Регистры упраВлении/сосрюйния

Ш ф С1к

ТхП ГхЯ

Регистры приема/передауи

usart 8z51a

RkC SYRDET

УпраБлееие аСменом данными с модемом

У ШпаВлениеК il передачей I

( Цпрпдпеш1е\ -1 приемом ]

Рис. 12.9. Схема USART 8251А фирмы Intel.

мацию в эту пару регистров и считывает из нее информацию о состоянии. USART включает также два регистра данных, называемых регистрами приема/передачи данных. ЦПУ записывает .данные в регистр передачи и считывает их из регистра приема. Восемь выводов устройства DO-D7 соединены с щиной данных ,и один вывод CS (используемый для выбора кристалла')) - с адресной щиной.

> Под выбором кристалла здесь понимается разрешение информационной вязи с данным адаптером. - Прим. перев.



Передача управляющих сигналов осуществляется через следующие выводы:

1) сброса;

2) подачи в адаптер тактовых импульсов, используемых обычным способом (CLK);

3) подачи сигнала управление/данные (C/D), используемого для выбора пары регистров управления/состояния (CfD = = 1) или регистров данных (C/D = 0);

4) подачи сигнала запись (WR), инициирующего передачу информации из шины данных в pejiCTpbi USART;

5) подачи сигнала чтение (RD), инициирующего передачу информации из регистров US ART в шину данных.

Сигналы WR=1 и RD = 1 отсоединяют USART от шины данных.

На схеме, приведенной на рис. 12.9, имеется еще группа выводов для сигналов управления модемом, передачей и приемом. Их функциональное назначение описывается ниже.

Управление обменом данными с модемом. Это управление обеспечивает возможность подключения к микро-ЭВМ любого модема. Для управления обменом данными с модемом используются следующие управляющие сигналы:

1) DSR (Data Set Ready - данные для системы подготовлены)- входной сигнал USART, поступающий из модема и указывающий на готовность модема к передаче данных;

2) DTR (Data Terminal Ready) -данные для терминала подготовлены)- выходной сигнал USART, передаваемый в модем и используемый вместе с сигналом DSR для управления обменом;

3) RTS (Request То Send -запрос на передачу данных) - выходной сигнал USART, передаваемый в модем и используемый в качестве запроса на передачу данных;

4) CTS (Clear То Send -признак отсутствия передачи данных и готовности к новой передаче) - входной сигнал, используемый для разрешения USART передачи следующей порции данных.

Буферизация и управление передачей. Буфер передатчика принимает данные, поступающие в параллельном коде из шины данных, и преобразует их в последовательный код. В поток этих данных включаются необходимые служебные символы, и данные передаются на выходную линию TxD, подключаемую по сигналу разрешения передачи и сигналу CTS.

Для буферизации и управления передачей используются следующие сигналы:



1) TxR (Transmitter Ready - передатчик готов к обмену) - выходной управляющий сигнал, обычно посылаемый в ЦПУ для указания на готовность передатчика к приему символа'); сигнал TxR сбрасывается при поступлении переднего фронта сигнала WR;

2) ТхЕ (Transmitter Empty - передатчик пуст )-выходной управляющий сигнал USART, информирующий ЦПУ о за-вершении передачи;

3) ТхС (Transmitter Clock - синхронизация передачи) - входной управляющий сигнал USART; при работе в асинхронном режиме скорость передачи данных (измеряемая в бодах) определяется как частное от деления частоты поступления сигналов ТхС.

Буферизация и управление приемом. Приемник принимает последовательный поток данных со входа RxD и преобразует го в параллельный код. В буфере приемника производится исключение битов, окаймляющих посылку данных, и другой служебной информации, используемой при передаче данных по каналу связи. Для буферизации и приема данных используются следующие управляющие сигналы:

1) RxR (Receiver Ready - приемник готов к обмену) - выходной сигнал USART, обычно посылаемый в ЦПУ, когда подготовлены данные для ввода в микро-ЭВМ;

2) RxC (Receiver Clock - синхронизация приема)-входной управляющий сигнал для синхронизации приема данных; при работе в асинхронном режиме скорость передачи данных в бодах определяется как частное от деления частоты поступления .сигналов RxC.

3) SYNDET (Sync Detect - обнаружение синхросигнала) - сигнал, передаваемый в двух направлениях и используемый при работе в синхронном режиме (см. Синхронный режим).

Программирование работы USART. При работе в асинхронном режиме программирование USART осуществляется путем последовательной передачи двух управляющих слов в один из пары регистров управления/состояния, а именно регистр управления. Этими двумя управляющими словами являются команда установки режима работы USART (MODE INSTRUCTION) и команда управления обменом данными (COMMAND INSTRUCTION).

Поскольку два управляющих слова загружаются в один и тот же регистр, то должны быть приняты определенные меры предосторожности. Управляющее слово MODE INSTRUCTION

Имеется в виду прием символа из шины данных для передачи в канал вязи. - Прим. перев.



может загружаться в регистр управления пары регистров управления/состояния только после операции сброса USART. Второе управляющее слово COMMAND INSTRUCTION может загружаться всегда при C/D=l, за исключением момента, следующего непосредственно за операцией сброса.. Таким образом, второе управляющее слово COMMAND INSTRUCTION (CW2) может изменяться после передачи в USART управляющего слова MODE INSTRUCTION (рис. 7.13).

Формат управляющего слова MODE INSTRUCTION показан Б табл. К-4 приложения К. Виты D1 и DO используются для задания режима и выбора характеристик передачи данных. Если биты D1 D0=00, то осуществляется синхронная передача, если же они равны 01, 10 или 11 -асинхронная передача. При работе в асинхронном режиме биты D7D6 определяют формат посылок. Значения бит D7D6 = 00 не используются; D7D6=01 указывает на использование одного, D7D6=10 - полутора, а D7D6=11-двух стоповых импульсов. Биты D5 и D4 указывают способ проверки данных на четность или нечетность. При D5D4=00 и D5D4=10 проверка не производится, D5D4 = 01 указывает на проведение проверки на нечетность, а D5D4 = 11 - на четность. Проверка на четность или нечетность производится только при передаче данных между USART и телетайпом или дисплеем. Информация, принимаемая шиной данных, не содержит указателя четность/нечетность .

Значения бит D3 D2 указывают длину символа, передаваемого по каналу связи. При D3 D2, равных 00, 01, 10 или 11, длина символа равна 5, 6, 7 или 8 бит соответственно. Упомянутые ранее биты D1 DO также используются для задания режима работы устройства. Значения бит D1 D0=00 не допустимы. D1 D0=01 задает равенство скорости передачи данных частоте тактовых импульсов, D1 D0=10 обеспечивает отношение частоты тактовых импульсов к скорости передачи, равное 16, D1 D0= = 11 - равное 64.

Фактическое управление работой USART осуществляет управляющее слово COMMAND INSTRUCTION, формат которого для USART 8251А показан в табл. К.5 приложения К. Задание бита D7=l разрешает выделение синхронизирующего символа в потоке данных. При работе в асинхронном режиме этот бит игнорируется. При D6=l происходит сброс устройства и требуется повторная передача в USART управляющего слова MODE INSTRUCTION. Единичное значение бита D5 используется для генерации сигнала запроса посылки данных (RTS),предназначенного для управления обменом данными с модемом. Бит D4= 1 применяется для сброса признаков любой ошибки, зафиксированной в регистре состояния пары регистров управления/состоя-ния. При D3=l на выводе TxD устанавливается низкий уровень,



1 ... 27 28 29 30 31 32 33 ... 39

© 2000-2024. Поддержка сайта: +7 495 7950139 добавочный 133270.
Заимствование текстов разрешено при условии цитирования.