Все сигналы программируемых микросхем последовательного ввода-вывода ТТЛ-совместимы. Отметим, однако, что эти сигналы рассчитаны только на очень короткие линии связи, например между клавиатурой и корпусом компьютера. Для последовательной передачи данных на значительное расстояние требуются дополнительные буферы и преобразователи уровней, включаемые между микросхемами последовательного ввода-вывода и линией связи.
Разводка контактов наиболее распространенных программируемых микросхем последовательного ввода-вывода показана на рис. 7.8.
Рис. 7.8. Разводка контактов распространенных программируемых микросхем последовательного ввода-вывода.
Поскольку работа программируемых микросхем параллельного ввода-вывода предсказуема, можно обнаружить возникающие в них неисправности, измерив сигналы на различных входных и выходных линиях. Поиск неисправностей в микросхемах параллельного ввода-вывода оказывается сравнительно простой задачей, чего нельзя сказать о микросхемах последовательного ввода-вывода.
Прежде всего следует убедиться в том, что ЦП действительно выбирает подозреваемую программируемую микросхему ввода-вывода. Для этого достаточно проверить сигналы на линиях управления с помощью логического пробника. Убедившись в выборе конкретной микросхемы, необходимо проверить ситуацию со стороны периферийного устройства. По возможности целесообразно написать короткую программу для исследования порта (т. е. считывания или записи данных) и проконтролировать возникающие при ее выполнении логические условия. Отказ транзистора внешнего драйвера часто выводит из строя буфер-драйвер внутри программируемой микросхемы ввода-вывода, но повреждение не обязательно распространяется на все восемь линий конкретного порта. Следовательно, перед заменой микросхемы ввода-вывода следует тщательно проверить периферийное устройство и соответствующие схемы.
Когда микросхемы вставлены в гнезда, целесообразно заменить подозреваемую микросхему на заведомо исправную (не забудьте при этом выключить питание и отсоединить все внешние схемы). Как и в случае с полупроводниковой памятью, рекомендуется смонтировать гнездо для микросхемы, если его нет.
Обнаружить неисправность в программируемых микросхемах последовательного ввода-вывода гораздо труднее. Здесь также рекомендуется прежде всего проверить условия со стороны ЦП, т. е. различные сигналы шины управления и выбора микросхемы. Убедившись в том, что микросхема выбирается, можно проверить состояния линий RTS и CTS (при выводе) и
или (при вводе). Следует также проверить наличие и правильность сигналов синхронизации (типичная частота синхронизации приема-передачи составляет 500 кГц). Наконец, из-за различий в схемах весьма желательно иметь под рукой фирменные материалы по эксплуатации микросхем.Полезно, также выполнить короткую тест-программу порта, например цикл, который непрерывно выводит в порт один и тот же байт. Отметим, однако, что последовательный интерфейс с RS-232C требует сигналов квитирования, поэтому очень важно проверить драйверы и приемники линии связи, разъемы и кабели, а также само периферийное устройство, прежде чем менять микросхему последовательного ввода-вывода.
Глава 8
Интерфейсы
Рассмотрим теперь два важнейших способа соединения микропроцессорных систем и периферийных устройств: хорошо известный (но часто довольно плохо понимаемый) последовательный интерфейс RS-232C и менее известную универсальную приборную шину GPIB (IEEE-488).
Несомненно, интерфейс 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.