Диагностика портов ЭВМ

16390
знаков
2
таблицы
4
изображения

Последовательная передача данных

Микропроцессорная система без средств ввода и вывода ока­зывается бесполезной. Характеристики и объемы ввода и вывода в системе определяются, в первую очередь, спецификой ее применения — например, в микропроцессорной системе управления некоторым промышленным процессом не требуется клавиатура и дисплей, так как почти наверняка ее дистанционно программирует и контроли­рует главный микрокомпьютер (с использованием последовательной линии RS–232C).

Поскольку данные обычно представлены на шине микропроцессора в параллельной форме (байтами, словами), их последовательный ввод–вывод оказывается несколько сложным. Для последовательного ввода потребуется средства преобразования последовательных входных данных в параллельные данные, которые можно поместить на шину. С другой стороны, для последовательного вывода необходимы средства преобразования параллельных данных, представленных на шине, в последовательные выходные данные. В первом случае преобразование осуществляется регистром сдвига с последовательным входом и параллельным выходом (SIPO), а во втором — регистром сдвига с параллельным входом и последовательным выходом (PISO).

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

Существуют специальные микросхемы ввода и вывода, решающие проблемы преобразования, описанные выше. Вот список наиболее типичных сигналов таких микросхем:

D0–D7 — входные–выходные линии данных, подключаемые непосредственно к шине процессора;

RXD — принимаемые данные (входные последовательные данные);

TXD — передаваемые данные (выходные последовательные данные);

CTS — сброс передачи. На этой линии периферийное устройство формирует сигнал низкого уровня, когда оно готово воспринимать информацию от процессора;

RTS — запрос передачи. На эту линию микропроцессорная система выдает сигнал низкого уровня, когда она намерена передавать данные в периферийное устройство.

Все сигналы программируемых микросхем последовательного ввода–вывода ТТЛ–совместимы. Эти сигналы рассчитаны только на очень короткие линии связи. Для последовательной передачи данных на значительные расстояния требуются дополнительные буферы и преобразователи уровней, включаемые между микросхемами последовательного ввода–вывода и линией связи.

 

Общие сведения о интерфейсе RS–232C

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

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

Различие между терминальными и связными устройствами довольно расплывчато, поэтому возникают некоторые сложности в понимании того, к какому типу оборудования относится то или иное устройство. Рассмотрим ситуацию с принтером. К какому оборудованию его отнести? Как связать два компьютера, когда они оба действуют как терминальное оборудование. Для ответа на эти вопросы следует рассмотреть физическое соединение устройств. Произведя незначительные изменения в линиях интерфейса RS–232C, можно заставить связное оборудование функционировать как терминальное. Чтобы разобраться в том, как это сделать, нужно проанализировать функции сигналов интерфейса RS–232C (таблица 1).

 

Таблица 1. Функции сигнальных линий интерфейса RS–232C.

Номер контакта

Сокращение

Направление

Полное название

1 FG Основная или защитная земля
2 TD (TXD) К DCE Передаваемые данные
3 RD (RXD) К DTE Принимаемые данные
4 RTS К DCE Запрос передачи
5 CTS К DTE Сброс передачи
6 DSR К DTE Готовность модема
7 SG Сигнальная земля
8 DCD К DTE Обнаружение несущей данных
9 К DTE (Положительное контрольное напряжение)
10 К DTE (Отрицательное контрольное напряжение)
11 QM К DTE Режим выравнивания
12 SDCD К DTE Обнаружение несущей вторичных данных
13 SCTS К DTE Вторичный сброс передачи
14 STD К DCE Вторичные передаваемые данные
15 TC К DTE Синхронизация передатчика
16 SRD К DTE Вторичные принимаемые данные
17 RC К DTE Синхронизация приемника
18 DCR К DCE Разделенная синхронизация приемника
19 SRTS К DCE Вторичный запрос передачи
20 DTR К DCE Готовность терминала
21 SQ К DTE Качество сигнала
22 RI К DTE Индикатор звонка
23 К DCE (Селектор скорости данных)
24 TC К DCE Внешняя синхронизация передатчика
25 К DCE (Занятость)

Примечания:

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

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

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

Стандартный последовательный порт RS–232C имеет форму 25–контактного разъема типа D (рис 1).

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

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

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

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

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

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

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


Таблица 2. Основные линии интерфейса RS–232C.

Номер контакта

Сигнал

Выполняемая функция

1 FG Подключение земли к стойке или шасси оборудования
2 TXD Последовательные данные, передаваемые от DTE к DCE
3 RXD Последовательные данные, принимаемые DTE от DCE
4 RTS Требование DTE послать данные к DCE
5 CTS Готовность DCE принимать данные от DTE
6 DSR Сообщение DCE о том, что связь установлена
7 SG Возвратный тракт общего сигнала (земли)
8 DCD DTE работает и DCE может подключится к каналу связи
Виды сигналов

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

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

Наиболее широко распространен формат, включающий в себя один стартовый бит, один бит паритета и два стоповых бита. Начало пакета данных всегда отмечает низкий уровень стартового бита. После него следует 7 бит данных символа кода ASCII. Бит четности содержит 1 или 0 так, чтобы общее число единиц в 8–битной группе было нечетным. Последним передаются два стоповых бита, представленных высоким уровнем напряжения. Эквивалентный ТТЛ–сигнал при передаче буквы А показан на рис. 2.

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

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

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

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

 

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

На рис. 4 представлен типичный микрокомпьютерный интерфейс RS–232C. Программируемая микросхема DD1 последовательного ввода осуществляет параллельно–последовательные и последовательно–параллельные преобразования данных. Микросхемы DD2 и DD3 производят сдвиг уровней для трех выходных сигналов TXD, RTS, DTR, а микросхема DD4 — для трех входных сигналов RXD, CTS, DSR. Микросхемы DD2 и DD3 требуют напряжения питания ±12 В.

Рис. 4. Типичная схема интерфейса RS–232C.

Параллельный порт

Устройство печати IBM PC-подобных компьютеров обычно подключается к параллельному интерфейсу. Для подключения используется стандартный разъем Centronix, имеющий 36 контактных выходов (отечественный аналог ИРПР-М). Допускается три варианта подключения принтеров к ПЭВМ:

- адаптер принтера может находится на одной плате с адаптером монохромного дисплея, при этом используются порты 3BCh - 3BEh;

- к ПЭВМ могут подключены два отдельных адаптера для управления принтерами, использующие порты 378h - 37Ah (первый адаптер) и 278h - 27Ah (второй адаптер).

При программировании принтера важно знать адрес базового порта ввода-вывода (первого порта из трех); адреса базовых портов хранятся в области данных BIOS, начиная с адреса 0:408h (LPT1) и далее по слову на принтер до LPT4. Дальнейшее описание предполагает, что базовый адрес принтера равен 378h.

Порт Операция Описание

 ----------------------------------------------------------------

378h Запись Регистр данных - сюда засылается байт, посылаемый на печать

Чтение Регистр данных - позволяет считать последний переданный в принтер байт

379h Чтение Регистр состояния принтера:

7 6 5 4 3 2 1 0

 +--------------------+

 ¦ ¦ ¦ ¦ ¦ ¦X¦X¦X¦ Биты:

 +--------------------+ -----

¦ ¦ ¦ ¦ +---------> 3: 0=при печати возникла ошибка

¦ ¦ ¦ +------------> 4: 0=принтер в автономном режиме

¦ ¦ +---------------> 5: 1=сигнал "конец бумаги"

¦ +------------------> 6: 0=принтер готов к печати

¦ следующего символа

+---------------------> 7: 0=принтер занят, находится в

автономном режиме или

произошла ошибка

37Ah Чтение/ Регистр управления принтером:

Запись

7 6 5 4 3 2 1 0

 +--------------------+

 ¦X¦X¦X¦ ¦ ¦ ¦ ¦ ¦ Биты:

 +--------------------+ -----

¦ ¦ ¦ ¦ +---> 0: бит запуска печати (см. ниже)

¦ ¦ ¦ +------> 1: 1=после возврата каретки выводить

¦ ¦ ¦ перевод строки (в MS-DOS должен

¦ ¦ ¦ быть сброшен)

¦ ¦ +---------> 2: 1=инициализировать принтер

¦ +------------> 3: 1=разрешить вывод на печать (должен

¦ быть всегда установлен)

+---------------> 4: 1=разрешить прерывания от принтера

Примечания.

1. Для запуска печати символа нужно на короткое время установить бит 0 регистра управления, а затем сбросить его.

2. Прерывание происходит по окончании вывода символа на печать: для первого принтера на седьмом уровне контроллера прерываний (IRQ7, вектор прерывания 0Fh), для второго принтера - на пятом уровне (IRQ5, вектор 0Dh). Следует отметить также, что IRQ5 используется XT-контроллером жестких дисков для генерации своих прерываний. Обычно этот бит не используется (сбрасывается), а проверка готовности принтера производится на основании опроса регистра состояния.

Типичная последовательность действий для вывода на печать одного символа такова:

- вывести передаваемый байт в регистр данных;

- в цикле проверять состояние принтера до устaновки бита 7 регистра состояния (здесь возможно использование таймаута);

- проверить биты 3-5 регистра состояния на наличие ошибки;

- установить и сразу же сбросить нулевой бит регистра управления, для этого подходит следующая последовательность команд:

mov dx,37Ah ;адрес регистра управления

mov al,00001101b ;установить биты 0,2 и 3

out dx,al ;вывести команду

xor al,1 ;сбросить бит 0

out dx,al ;повторно вывести команду

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

 Несмотря на простоту управления, принтер представляет из себя достаточно сложное устройство, имеющее свой микропроцессор,

 

ПЗУ и ОЗУ. Микропроцессор используется для обработки управляющих

 последовательностей и управления печатью. ПЗУ содержит описание рисунков символов в зависимости от их кода и выбранной таблицы и программы на языке используемого микропроцессора. ОЗУ используется для временного хранения введенных данных и спроектированных пользователем символов. Ряд принтеров, помимо интерфейса Centronix, могут поключаться и к последовательному интерфейсу. Принтер обрабатывает ряд спецсимволов (таких, как звонок, забой, горизонтальная и вертикальная табуляция), а также имеет достаточно сложную систему команд для изменения режимов работы и управления печатью.

Обычно команды начинаются с символа ESC (шестнадцатиричный код 1Bh) и имеют длину от двух байт и более (существуют командные последовательности, включающие по несколько килобайт информации, например команды загрузки спроектированных пользователем шрифтов). Спецсимволы и байты команд передаются принтеру так же, как и обычные символы, предназначеные для печати, описанным выше способом. Подобный способ управления удобен для программного изменения режимов работы устройства. Учитывая, что выпуском принтеров для ПЭВМ занимается достаточно большое число компаний и возможности принтеров постоянно совершенствуются, нет смысла приводить полностью какую-либо систему команд, так как, во-первых, она в разных марках и моделях принтеров различна, и, во-вторых, достаточно полно описывается в документации на каждый конкретный принтер.

Существует 2 основных стандарта на систему команд и таблицу используемых символов (стандарты IBM и EPSON), которых в основном придерживаются фирмы-изготовители, оставляя за собой право вносить в них изменения и дополнения. Единого стандарта как на систему команд, так и на расположение и рисунки символов второй половины таблицы ASCII (коды 129-255) нет. Наиболее часто используемые команды:

- установка вида шрифта и режима печати;

- черновой текстовый (draft) нормальной ширины (pica), узкий (condensed) или средней ширины (elita).

- качественный шрифт (NLQ, Proportional, Orator, Script и т. д.);

-выбор таблицы символов из ПЗУ (обычно имеется несколько таблиц, отличающихся расположением управляющих кодов, наличием и расположением псевдографических символов или курсива);

- загрузка в ОЗУ принтера спроектированных пользователем шрифтов и работа с ОЗУ принтера (именно в этой группе команд, имеются наибольшие различия между разными моделями);

- управление принтером в режиме точечной графики;

- установка служебных параметров (размеры отступов, страницы, шаг табуляции, расстояние между строками) и изменение характеристик (сброс, включение/отключение датчика конца бумаги, печать в одну или в две стороны и т. п.).

Ряд характеристик и режимов работы может выбираться как программно, так и аппаратно с использованием кнопок и клавиш на лицевой панели и DIP-переключателей. Существуют характеристики, изменить которые можно только аппаратно (например, возможность загрузки шрифтов или размер используемого ОЗУ).


Информация о работе «Диагностика портов ЭВМ»
Раздел: Информатика, программирование
Количество знаков с пробелами: 16390
Количество таблиц: 2
Количество изображений: 4

Похожие работы

Скачать
509004
6
0

... ? 8. Какими программами можно воспользоваться для устранения проблем и ошибок, обнаруженных программой Sandra? Раздел 3. Автономная и комплексная проверка функционирования и диагностика СВТ, АПС и АПК Некоторые из достаточно интеллектуальных средств вычислительной техники, такие как принтеры, плоттеры, могут иметь режимы автономного тестировании. Так, автономный тест принтера запускается без ...

Скачать
159092
10
8

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

Скачать
28351
1
7

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

Скачать
142162
19
29

... на 20.05.06 (прайс-лист «Платан») – 2654 руб. ПРИЛОЖЕНИЕ Г   Исходные данные для выполнения организационно – экономической части Тема выпускной квалификационной работы: Нейросетевая система для диагностики и управления штанговой глубиннонасосной установкой. Место прохождения преддипломной практики: УГАТУ Цена аналога: 40000 руб. Цена спроса: 35000 руб. Объем спроса: 1 шт. Разряд ...

0 комментариев


Наверх