KnigaRead.com/
KnigaRead.com » Справочная литература » Справочники » Майк Тули - Справочное пособие по цифровой электронике

Майк Тули - Справочное пособие по цифровой электронике

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Майк Тули, "Справочное пособие по цифровой электронике" бесплатно, без регистрации.
Перейти на страницу:

Обнаружить неисправность в программируемых микросхемах последовательного ввода-вывода гораздо труднее. Здесь также рекомендуется прежде всего проверить условия со стороны ЦП, т. е. различные сигналы шины управления и выбора микросхемы. Убедившись в том, что микросхема выбирается, можно проверить состояния линий RTS и CTS (при выводе) и  или  (при вводе). Следует также проверить наличие и правильность сигналов синхронизации (типичная частота синхронизации приема-передачи составляет 500 кГц). Наконец, из-за различий в схемах весьма желательно иметь под рукой фирменные материалы по эксплуатации микросхем.

Полезно, также выполнить короткую тест-программу порта, например цикл, который непрерывно выводит в порт один и тот же байт. Отметим, однако, что последовательный интерфейс с RS-232C требует сигналов квитирования, поэтому очень важно проверить драйверы и приемники линии связи, разъемы и кабели, а также само периферийное устройство, прежде чем менять микросхему последовательного ввода-вывода.

Глава 8

Интерфейсы

Рассмотрим теперь два важнейших способа соединения микропроцессорных систем и периферийных устройств: хорошо известный (но часто довольно плохо понимаемый) последовательный интерфейс RS-232C и менее известную универсальную приборную шину GPIB (IEEE-488).


8.1. Интерфейс RS-232C

Несомненно, интерфейс RS-232C/CCITT V24 является наиболее широко распространенной стандартной последовательной связью между микрокомпьютерами и периферийными устройствами. Интерфейс, определенный стандартом Ассоциации электронной промышленности (EIA), подразумевает наличие оборудования двух видов: терминального DTE и связного DCE.

Чтобы не составить себе неправильного представления об интерфейсе RS-232C, необходимо отчетливо понимать различия между этими видами оборудования. Терминальное оборудование, например микрокомпьютер, может посылать и (или) принимать данные по последовательному интерфейсу. Оно как бы оканчивает (terminate) последовательную линию. Связное же оборудование понимается как устройства, которые могут упростить последовательную передачу данных совместно с терминальным оборудованием. Наглядным примером связного оборудования служит модем (модулятор-демодулятор). Он оказывается соединительным звеном в последовательной цепочке между компьютером и телефонной линией (рис. 8.1).




Рис. 8.1. Типичная последовательная линия связи между микрокомпьютерами:

 1 — закрепленный 25-контактный разъем типа D (штырьки); 2 — съемный 25-контактный разъем типа D (отверстия); 3, 9 — кабель интерфейса RS-232C; 4 — съемный 25-контактный разъем типа D (штырьки); 5 — закрепленный 25-контактный разъем типа D (отверстия); 6 — телефонная линия; 7 — закрепленный 25-контактный разъем типа D (отверстия); 8 — съемный 25-контактный разъем типа D (штырьки); 10 — съемный 25-контактный разъем типа D (отверстия); 11 — закрепленный 25-контактный разъем типа D (штырьки)


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

Рассмотрим, например, ситуацию с принтером. К какому оборудованию его отнести? Еще вопрос: как связать два микрокомпьютера, когда они оба действуют как терминальное оборудование?

Для ответа на эти вопросы следует рассмотреть физическое соединение устройств.

Произведя незначительные изменения в линиях интерфейса RS-232C, можно заставить связное оборудование функционировать как терминальное. Чтобы разобраться в том, как это сделать, нужно проанализировать функции сигналов интерфейса RS-232C.

Сигналы интерфейса RS-232C. По-видимому, читатели знакомы с видом «стандартного» последовательного порта RS-232C, который всегда имеет форму 25-контактного разъема типа D.

Терминальное оборудование обычно оснащено разъемом со штырьками, а связное — разъемом с отверстиями (но могут быть и исключения).

Разводка контактов разъема RS-232C показана на рис. 8.2, а функции сигнальных линий приведены в табл. 8.1.



Рис. 8.2. Назначение линий 25-контактного разъема типа D для интерфейса RS-232C



Примечания:

1. Линии (контакты) 11, 18 и 25 обычно считаются незаземленными. Приведенные в таблице функции относятся к спецификациям Bell 113В и 208А.

 2. Линии 9 и 10 используются для контроля отрицательного (MARK) и положительного (SPACE) уровней напряжения.

 3. Чтобы избежать путаницы между RD (Read — считывать) и RD (Received Data — принимаемые данные), будем пользоваться обозначениями RXD и TXD, а не RD и TD.

 4. Иногда отдельные фирмы используют запасные линии RS-232C для контроля или специальных функций, относящихся к конкретной аппаратуре (по неиспользуемым линиям подают даже питание и аналоговые сигналы, так что будьте внимательны).


Классы сигналов. Сигналы интерфейса RS-232C подразделяются на следующие классы.

Последовательные данные (например, TXD, RXD). Интерфейс RS-232C обеспечивает два независимых последовательных канала данных: первичный (главный) и вторичный (вспомогательный). Оба канала могут работать в дуплексном режиме, т. е. одновременно осуществляют передачу и прием информации.

Управляющие сигналы квитирования (например, RTS, CTS). Сигналы квитирования — это средство, с помощью которого обмен сигналами позволяет DTE начать диалог с DCE до фактических передачи или приема данных по последовательной линии связи.

Сигналы синхронизации (например, ТС, RC). В синхронном режиме (в отличие от более распространенного асинхронного) между устройствами необходимо передавать сигналы синхронизации, которые упрощают синхронизм принимаемого сигнала в целях его декодирования.

На практике вспомогательный канал RS-232C применяется редко, и в асинхронном режиме из 25 линий обычно используются только девять линий (контактов), которые приведены в табл. 8.2.



8.2. Виды сигналов в интерфейсе RS-232C

В большинстве систем, содержащих интерфейс RS-232C, данные передаются асинхронно, т. е. в виде последовательности пакетов данных. Каждый пакет содержит один символ кода ASCII (американский стандартный код для обмена информацией), причем информация в пакете достаточна для его декодирования без отдельного сигнала синхронизации.

Символы кода ASCII представляются семью битами, например буква А имеет код 1000001. Чтобы передать букву А по интерфейсу RS-232C, необходимо ввести дополнительные биты, обозначающие начало и конец пакета. Кроме того, желательно добавить лишний бит для простого контроля ошибок по паритету (четности).

Наиболее широко распространен формат, включающий в себя один стартовый бит, один бит паритета и два стоповых бита. Эквивалентный ТТЛ-сигнал при передаче буквы А показан на рис. 8.3.



Рис. 8.3. Представление кода буквы А сигнальными уровнями ТТЛ.


Начало пакета данных всегда отмечает низкий уровень стартового бита. После него следует 7 бит данных символа кода ASCII. Бит паритета содержит 1 или 0 так, чтобы общее число единиц в 8-битной группе было нечетным (нечетный паритет — нечетность) или четным (четный паритет — четность). Последними передаются два стоповых бита, представленных высоким уровнем напряжения.

Таким образом, полное асинхронно передаваемое слово данных состоит из 11 бит (фактические данные содержат только 7 бит) и записывается в виде 01000001011. Здесь использован четный паритет, поэтому девятый бит содержит 0.

К сожалению, используемые в интерфейсе RS-232C уровни сигналов отличаются от уровней сигналов, действующих в микрокомпьютере. Логический 0 (SPACE) представляется положительным напряжением в диапазоне от +3 до +25 В, а логическая 1 (MARK) — отрицательным напряжением в диапазоне от —3 до —25 В.

На рис. 8.4 показан сигнал пакета данных для кода буквы А в том виде, в каком он существует на линиях TXD или RXD интерфейса RS-232C.



Рис. 8.4. Вид кода буквы А на сигнальных линиях TXD или RXD


Сдвиг уровня, т. е. преобразование ТТЛ-уровней в уровни интерфейса RS-232C и наоборот, производится специальными микросхемами драйвера линии и приемника линии. Разводка контактов наиболее популярных микросхем 1488 и 1489 показана на рис. 8.5.

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*