Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
___МЕТОДИЧКИ_2013 / __6_COM порт_Копытов.doc
Скачиваний:
65
Добавлен:
15.03.2016
Размер:
349.18 Кб
Скачать

Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Комсомольский-на-Амуре государственный технический университет»

Кафедра «Промышленная электроника»

Тестирование СОМ-порта персонального компьютера

Методические указания к лабораторной работе по курсу

«Отладочные средства микропроцессорных систем» для студентов направления 210100 «Электроника и наноэлектроника»

Комсомольск-на-Амуре 2013

УДК 681.3.06

Тестирование СОМ-порта персонального компьютера:

Методические указания к лабоpатоpной работе по курсу "Отладочные средства микропроцессорных систем" для студентов направления 210100 «Электроника и наноэлектроника» / Сост. С.М. Копытов. - Комсомольск-на-Амуpе: Комсомольский-на-Амуpе гос. техн. ун-т, 2013. - 20 с.

Рассмотрены последовательный интерфейс RS-232C, сигналы и программная поддержка СОМ-порта персонального компьютера, приведены рекомендации по его тестированию.

Предлагаемые методические указания предназначены для студентов направления 210100.

Печатается по постановлению редакционно-издательского совета Комсомольского-на-Амуре государственного технического университета.

Согласовано с отделом стандартизации.

Рецензент В.А. Егоров

Цель работы: изучить устройство последовательного интерфейса RS-232C, физику его работы, разъемы и выводы COM – портов, научиться проверять их работоспособность.

1 Основные сведения

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

Большим подспорьем данный порт оказывается в практике разра­ботчиков, поскольку позволяет легко подключаться к разрабатываемым микропроцессорным устройствам. Подавляющее большинство выпуска­емых в настоящее время микропроцессоров и микроконтроллеров имеют встроенный последовательный универсальный асинхронный приемопередатчик UART (Universal Asynchronous Receiver And Transmitter), полностью совместимый по формату передаваемых данных с СОМ-портом.

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

Компьютеры типа IBM PC могут иметь до четырех последовательных СОМ-портов. Для этого в служебной области данных BIOS (базовой системы ввода вывода) компьютера зарезерви­рованы служебные ячейки памяти 0000:0400, 0000:0402, 0000:0404 и 0000:0406, в которых хранятся адреса портов и СОМ1, COM2, COM3 и COM4 соответ­ственно. Если какой-либо из портов не подключен или заблокирован, в соот­ветствующей ячейке будет храниться ноль, что будет означать отсутствие такого порта в компьютере. Стандартными базовыми адресами портов СОМ1 - COM4 являются 3F8h, 2F8h, 3E8h и 2E8h. Допускается использование и некоторых других свободных адресов в области портов ввода-вывода компьютера.

Ячейки памяти BIOS с адресами 0000:047С, 0000:047D, 0000:047E и 0000:047F содержат величину тайм-аута соответствующего порта, т.е. максимальное время ожидания отклика от порта в тиках. Один тик равен 18 мс. Карта адресов СОМ-портов приведена в табл. 1.

Таблица 1 - Карта адресов СОМ-портов

Адрес памяти (hex-формат)

Содержимое

Значение по умолчанию (hex-формат)

0000:0400

Адрес СОМ1

3F8

0000:0402

Адрес COM2

2F8

0000:0404

Адрес COM3

3Е8

0000:0406

Адрес COM4

2Е8

0000:047С

Тайм-аут СОМ1

1

0000:047D

Тайм-аут COM2

1

0000:047Е

Тайм-аут COM3

1

0000:047F

Тайм-аут COM4

1

Любой из СОМ-портов может быть назначен на обработчик прерывания IRQ3 или IRQ4 с помощью программы SETUP компьютера.

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

Вначале рассмо­трим сигналы, выводимые на разъем СОМ-порта.

Компьютеры могут иметь девяти- или двадцатипятиконтактные разъ­емы для СОМ-портов. Назначение сигналов и соответствие их контактам этих разъемов стандартизовано. Описание сигналов СОМ-порта приведено в табл. 2.

Таблица 2 - Описание сигналов разъемов DB-9M и DB-25M последовательного СОМ-порта

Контакт

Сигнал

Направление

Название

Назначение

-(1)

PG

-

Protect Ground

Защитная земля

3(2)

TxD

Выход

Transmit Data

Передаваемые данные

2(3)

RxD

Вход

Receive Data

Принимаемые данные

7(4)

RTS

Выход

Request to Send

Запрос на передачу

8(5)

CTS

Вход

Clear to Send

Готовность к приему

6(6)

DSR

Вход

Data Set Ready

Данные готовы

5(7)

SG

-

Signal Ground

Сигнальная земля

1(8)

DCD

Вход

Data Carrier Detect

Обнаружена несущая данных

4(20)

DTR

Выход

Data Terminal Ready

Готовность терминала

9(22)

RI

Вход

Ring Indicator

Индикатор вызова

В скобках приведен номер контакта для 25-контактного разъема, без скобок — для 9-контактного.

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

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

Рисунок 1 - Формат слов СОМ-порта

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

Данный формат слов поддерживается в компьютерах и устройствах, имеющих последовательные порты, с помощью микросхем UART типа 16550А. Эти микросхемы являются более развитыми моделями своих предшественников I8052 фирмы Intel, применявшихся в самых первых компьютерах типа IBM PC.

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

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

Если применяется контроль четности, то после посылки бит данных передается контрольный бит. Этот бит дополняет количество единичных бит данных до четного или нечетного в зависимости от принятого соглашения. Прием байта с неверным значением контрольного бита приводит к фиксации ошибки.

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

Для асинхронного режима принят ряд стандартных скоростей обмена: 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600 и 115200 бит/с. Количество бит данных может составлять 5, 6, 7 или 8 (5- и 6-битные форматы распространены незначительно). Количество стоп-бит может быть 1, 1,5 или 2 ("полтора бита" означает только длительность стопового интервала).

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

На физическом уровне последовательный интерфейс имеет различные реализации, различающиеся способом передачи электрических сигналов. В большинстве стандартов сигнал представляется потенциалом. Существуют последовательные интерфейсы, где информативен ток, протекающий по общей цепи передатчик-приемник - "токовая петля". Для связи на короткие расстояния приняты стандарты беспроводной инфракрасной связи. Наибольшее распространение в PC получил простейший последовательный интерфейс - стандарт RS-232C, реализуемый СОМ-портами. В промышленной автоматике широко применяется RS-485.

Интерфейс RS-232C предназначен для подключения оконечного оборудования данных (ООД, DTE - Data Terminal Equipment) к аппаратуре каналов данных (АКД, DCE - Data Communication Equipment). В роли ООД может выступать компьютер, принтер, плоттер и другое периферийное оборудование. В роли АКД обычно выступает модем. Конечной целью подключения является соединение двух устройств ООД. Полная схема соединения приведена на рис. 2.

Рисунок 2 - Полная схема соединения по RS-232C

Интерфейс позволяет исключить канал удаленной связи вместе с парой устройств АКД, соединив устройства ООД непосредственно с помощью нуль-модемного кабеля (рис. 3), в котором перекрещиваются соответствующие пары проводников, чтобы выходы соединялись с входами. Например, должны быть связаны выводы TxD и RxD.

Рисунок 3 - Соединение по RS-232C нуль-модемным кабелем

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

Стандарт RS-232C использует несимметричные передатчики и приемники - сигнал передается относительно общего провода - схемной земли. Интерфейс не обеспечивает гальванической развязки устройств. Логической единице соответствует напряжение на входе приемника в диапазоне -25...-3 В. Логическому нулю соответствует диапазон +3...+25 В. Диапазон -3...+3 В - зона нечувствительности, обусловливающая гистерезис приемника: состояние линии будет считаться измененным только после пересечения порога. Уровни сигналов на выходах передатчиков должны быть в диапазонах -15...-5 В и +5...+15 В для представления единицы и нуля соответственно.

Для решения проблемы электрической совместимости при подключении к ПК микроконтроллерных устройств с ТТЛ-уровнями используют преобразователи уровней, например, микросхемы MAX232.

Стандарт RS-232C регламентирует типы применяемых разъемов. На аппаратуре ООД (в том числе на СОМ-портах) принято устанавливать вилки (male) DB-25P или более компактный вариант - DB-9P. Девятиштырьковые разъемы не имеют контактов для дополнительных сигналов, необходимых для синхронного режима (в большинстве 25-штырьковых разъемов эти контакты не используются). На аппаратуре АКД (модемах) устанавливают розетки (female) DB-25S или DB-9S.

Если аппаратура АПД соединяется без модемов, то разъемы устройств (вилки) соединяются между собой нуль-модемным кабелем, имеющим на обоих концах розетки, контакты которых соединяются перекрестно.

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

Опасность пробоя возрастает особенно в зимний период, когда воздух становится сухим от мороза. Другой причиной может быть неграмотное соединение двух компьютеров через СОМ-порт, имеющих разный по­тенциал на корпусе относительно земли. В результате перечисленных не­благоприятных воздействий порт перестает нормально функционировать, но все же поддается «лечению». Обычно, как правило, выходит из строя буферная микросхема, обеспечивающая преобразование ТТЛ-уровней сигналов в сигналы стандарта RS-232, которые должны находиться в диа­пазоне от -3...-25 В до +3...+25 В.

Для программной поддержки СОМ-портов в BIOS компьютера имеется специальное программное прерывание INT 14h. Ниже дается описание основных функций этого программного прерывания. Выбор номера функции этого прерывания задается в регистре процессора АН.

Функция: 0 — инициализация порта

Вход: АН=0

DХ=номер порта (0=СОМ1, 1=СОМ2, 2=СОМЗ, 3=СОМ4)

АL=параметры инициализации порта (битовые разряды):

1,0 - Длина слова: 09=5 бит, 01=6 бит, 10=7 бит, 11=8 бит

2 - Длина стоп бита: 0=1 бит, 1=2 бита

4,3 - Контроль четности: 00=нет, 01=нечетность,11=четность

7...5 - Скорость (бод): 000=110, 001=150, 010=300, 011=600, 100=1200, 101=2400, 110=4800, 111=9600

Выход: АL=состояние модема (битовые разряды):

0- изменение сигнала CTS

1- изменение сигнала DSR

2- изменение сигнала RI

3- изменение сигнала RxD

4- готовность приемника

5- данные к передаче готовы

6- обнаружен вызов

7- обнаружен сигнал приемной линии

АН=состояние линий (битовые разряды):

0- готовность данных

1- ошибка скорости

2- ошибка четности

3- ошибка кадрирования

4- обнаружен перерыв

5- регистр буфера передатчика пуст

6- регистр сдвига передатчика пуст

7- тайм-аут

Функция:1 — передать слово

Вход: АН=1

DХ=номер порта (0=СОМ1, 1=СОМ2, 2=СОМЗ, 3=СОМ4)

АL=передаваемое слово

Выход: АН, АL=состояние линий и модема (см. функцию 0)

Функция: 2 — принять слово

Вход: АН=2

DХ=номер порта (0=СОМ1, 1=СОМ2, 2=СОМ3, 3=СОМ4)

АL=не используется

Выход: АL=принятое слово

АН=состояние линий (см. функцию 0)

Функция: 3 — чтение состояния порта

Вход: АН=3

DХ=номер порта (0=СОМ1, 1=СОМ2, 2=СОМ3, 3=СОМ4)

AL - не используется

Выход: АН, АL=состояние линий и модема (см. функцию 0)

Для примера, вызов функции 0 данного прерывания на языке Ассем­блер выглядит следующим образом:

MOV AH, 0 ; функция 0

MOV AL, 11111011В ; 9600 бод, четность, 1 стоп бит, длина 8 бит

MOV DX, 2 ; номер порта 2=COM3

INT 14H ; вызов прерывания 14h

Теперь СОМ-порт будет настроен для работы на скорости 9600 бод, с контролем по четности, одним стоповым битом и длиной слова 8 бит, а регистры АН и AL будут хранить коды состояния СОМ-порта.

Ниже приведены примеры программ для работы с последовательным портом на языке Ассемблер. В первом примере производиться инициа­лизация СОМ-порта. Сначала в программе определяется базовый адрес порта, затем производится установка параметров СОМ-порта для рабо­ты на скорости 4800 бод, с одним стоп-битом, контролем на четность и восемью битами в слове. Затем маскируются прерывания.

; Инициализация СОМ-порта

MOV АХ, 40 ; Запишем адрес порта СОМ1

MOV ES, АХ ; в регистр ES = 0040Н

MOV DX, ES:[00] ; Запишем в регистр DX базовый адрес СОМ1

MOV COM1_ADR, DX ; Запомним адрес порта СОМ1 в переменной

ADD DX, 3 ; DX = адресу регистра управления

MOV AL, 80H ; Установим в 1 старший бит

OUT DX, AL ; регистра управления

DEC DX ; Установим скорость = 4800 бод

DEC DX ; DX = адресу старшего байта делителя скорости

MOV AL, 0 ; Установка старшего байта делителя

OUT DX, AL

DEC DX ; DX = адресу младшего байта делителя скорости

MOV AL, 18H ; Установка младшего байта делителя

OUT DX, AL

ADD DX, 3 ; DX = адресу регистра управления

MOV AL, 11011011В ; 4800 бод, четность, 1 стоп бит, длина 8 бит

OUT DX, AL

DEC DX

DEC DX ; DX = адресу регистра разрешения прерываний

MOV AL, 00Н ; Прерывания запрещены

OUT DX, AL

Следующие два примера демонстрируют способ чтения и передачи слова через СОМ-порт с ожиданием готовности.

; Чтение слова с ожиданием:

MOV DX, СОM1_ADR ; DX = базовому адресу СОМ1

ADD DX, 5 ; DX = адресу регистра состояния

WAIT:

IN AL, DX ; Чтение байта состояния

TEST AL, 01H ; Если бит 1 = 1 слово принято

JZ WAIT ; Если нет - ждем

SUB DX, 5 ; DX = адресу регистра приемника

IN AL, DX ; Чтение принятого байта

; Передача слова из АН с ожиданием:

MOV DX, COM1_ADR ; DX = базовому адресу СОМ1

ADD DX, 5 ; DX = адресу регистра состояния

WAIT:

IN AL, DX ; Чтение байта состояния

TEST AL, 40H ; Бит 6=1 (готов к передаче байта)

JZ WAIT ; Если нет - ждем

SUB DX, 5 ; DX = адресу регистра передатчика

MOV AL, АН

OUT DX, AL ; Передача слова

Для настройки подключения к СОМ-портам ПК нового и экспериментального оборудования удобно использовать готовые терминальные программы. Одна из таких программ - Terminal 1.9b является монитором COM порта персонального компьютера. С помощью программы можно легко отправлять и принимать данные через COM порт компьютера по протоколу RS232. Среди достоинств программы - гибкая настройка программы под различные режимы работы (различная скорость работы, конфигурация стоп-битов, конфигурация количества бит-данных и многое другое). Интерфейс программы Terminal 1.9b прост и понятен. Скриншот окна программы Terminal 1.9b приведен на рис. 4.

Рисунок 4 - Окно программы Terminal 1.9b

Для настроек скорости передачи, номера порта, параметров передачи и прочих потребностей нужно просто выделить требуемый параметр. Выставив галочку, можно выдать информацию в разных системах счисления, что порой бывает очень удобно. В один клик доступна таблица ASCII, а среди особых преимуществ — возможность выдать поток данных в виде графика с размахом от 0 до 255 точек. Также можно писать скрипты на паскалеподобном языке, делающие с входящими-исходящими данными всевозможные преобразования.

Для настройки параметров СОМ-порта в операционной системе Win­dows необходимо выполнить следующую последовательность действий: Пуск-» Настройка-» Панель управления-» Система-» Оборудование-» Диспетчер устройств-» Порты-» Последовательный порт-» Параметры порта. При этом на экране мониторе появится изображение, подобное приведенному на рис. 5. С помощью раскрывающихся меню устанавливаются все необходимые параметры работы СОМ-порта.

Рисунок 5 - Окно параметров СОМ-порта

Тестирование портов в составе компьютера можно выполнить с помощью тестовой программы Checkit или Norton Diagnostic. Заглушку для СОМ-порта при использовании этих тестовых программ можно из­готовить, воспользовавшись табл. 3.

Таблица 3 - Назначение цепей заглушки, для тестирования СОМ-порта

Вывод

Сигнал

Направление

Вывод

Сигнал

Направление

1

DCD

Вход

6

DSR

Вход

2

RxD

Вход

7

RTS

Выход

3

TxD

Выход

8

CTS

Вход

4

DTR

Выход

9

RI

Вход

5

SG

Вход

Заглушка изготавливается из разъема-розетки DB-9F путем распайки перемычек между контактами 3-2, 4-6-1-9 и 7-8.

Для проверки работоспособности порта необходимо убедиться в исправности всех выходных и входных цепей сигналов, присутствующих на его разъеме, а также в способности микросхемы, обслуживающей порт, передавать и принимать данные. Предлагаемая в [1] программа Testrs.exe и простой пробник позволяют выполнить эту процедуру.

Кроме того, эта программа позволяет убедиться в исправности порта, когда драйвер порта некорректно себя ведет. Это достигается тем, что обращения к порту из предлагаемой программы производятся с использованием стандартных функций Windows, так называемых API.

Программа написана на языке программирования C++ в среде раз­работки Visual C++ и работает под управлением операционных систем Windows 9X/Me/NT/2000/XP и т. п. После запуска программа производит поиск имеющихся в компьютере СОМ-портов и выбирает для работы первый найденный по порядку порт. Если порты в компьютере не обна­ружены, будет выдано соответствующее сообщение, и программа завер­шит свою работу. В процессе работы программы можно выбрать другой доступный компьютеру порт для тестирования.

Изменить параметры настройки порта можно, вызвав окно параметров СОМ-порта (рис. 5).

После запуска программы Testrs.exe на экране монитора появиться окно, приведенное на рис. 6.

Рисунок 6 - Окно работы программы Testrs

В центре окна программы изображены разъемы компьютера с назна­чением контактов и сигналов СОМ-порта. Для удобства тестирования приводятся два рисунка: для 9- и 25- контактного разъема соответственно. Номера контактов разъемов, их тип и назначение сигналов соответствуют стандартным и общепринятым для данных портов сигналам. В дальнейшем при работе программы контакты разъемов будут окрашены в красный или зеленый цвет, что соответствует положительному или отрицательному потенциалу на них соответственно.

Ниже разъемов присутствуют две программные кнопки для сигналов RTS и DTR соответственно. Щелкая левой клавишей мышки по этим кнопкам, можно менять потенциал соответствующих выходных сигналов порта на противоположный потенциал. Данные операции будут сопровождаться автоматической сменой цветов на экране и потенциалов на контактах разъема.

Третья программная кнопка TD предназначена для начала передачи данных через порт: Содержимое передаваемых данных представлено в поле «Передано» и может быть изменено после щелчка левой кнопкой мыши по этому полю или с помощью кнопок, расположенных в меню программы. Принимаемые из СОМ-порта данные отображаются в поле «Принято».

Для проверки работоспособности порта можно воспользоваться обыч­ным тестером и контролировать поочередно тестируемые сигналы. Однако гораздо удобнее для проверки использовать простое устройство под названием «пробник». Схема этого устройства приведена на рис. 7.

Рисунок 7 - Схема пробника

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

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

Исполняемый код программы состоит из одного файла testrs.exe и не требует предварительной установки на компьютер. С целью уменьшения размера данного файла программа транслировалась в режиме Shared DLL, т. е. стандартные библиотечные файлы DLL не включались в тело программы, а используются после запуска программы из доступного системного каталога C:\WINDOWS\SYSTEM.

Программа Testrs использует следующие стандартные библиотечные файлы: MFC42.DLL, KERNEL32.DLL, GDI32.DLL, USER32.DLL и MSVCRT. DLL. Поэтому в случае, если программа выдаст сообщение об отсутствии некоторых из перечисленных библиотечных файлов DLL, необходимо по­местить их в указанный выше каталог. Эти файлы являются стандартными и устанавливаются самой операционной системой Windows9X. Их можно также найти в Интернете, например, по адресу www.ya.ru. В дальнейшем эти файлы еще много раз пригодятся вам, поскольку большинство про­грамм транслируется без включения их в тело программы с целью уменьшения своего размера.

Очень важным является вопрос помехоустойчивости передаваемой информации, особенно, если требуется передача на относительно большие расстояния.

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

Действиям помех наиболее подвержен маломощный сигнал. Особенно, если он передается на значительное расстояние. Источниками помех могут яв­ляться как внешнее электромагнитное излучение, так и внутренние переходные процессы в системе. Чтобы уверенно выделять полезный сигнал среди помех необходимо, прежде всего, обеспечить уровень сигнала существенно превосхо­дящий средний уровень помех. Для защиты от электромагнитных помех при передаче сигналов применяют также "витые пары" или экранированный кабель для прокладки шин. Шины, выполненные таким образом, обладают повышен­ной емкостью. Емкостной характер нагрузки (при сохранении высокой скоро­сти передачи данных) требует в свою очередь повышенной мощности выход­ных вентилей. Работа же мощных и быстродействующих вентилей сопряжена с большими импульсными токами при переключениях. Это ведет к кратковре­менным выбросам напряжения в цепях питания этих элементов. Таким обра­зом, выходные вентили, работающие на шины, становятся сами мощными ис­точниками помех, распространяющихся как по цепям шин передачи данных, так и внутрь системы по цепям питания. Избавиться от этих помех крайне сложно.

Длинные шины и сами по себе могут стать причиной искажения сигнала. Это связано с эффектом "длинных линий", который приводит к тому, что несо­гласованная линия отражает высокочастотный сигнал от концов шины (и от других неоднородностей) и сигнал многократно накладывается сам на себя. В результате чего искажается форма сигнала.

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

Стандарт RS-232C оп­ределяет уровни сигналов обеих полярностей. Поэтому выходной формирователь со­гласно стандарту должен иметь двухполярное питание.

Входные цепи должны иметь гистерезис. Для этих целей имеются стан­дартные микросхемы: 1488 - выходной формирователь и 8Т16 - входной фор­мирователь с триггером Шмита (рис. 8). В этом случае при емкостной нагрузке линии не более 330 пФ фронты нарастания и спада импульсов обеспечиваются на уровне менее 1 мкс.

Рисунок 8 - Шина стандарта RS - 232С и временная диаграмма сигна­лов шины

Для работы с линиями средней длины при достаточно высоком быстро­действии применяют несимметричные схемы с ТТЛ вентилями (рис. 9).

Рисунок 9 - Несимметричная линия с ТТЛ вентилями

Схема, приведенная на рис. 10, отличается очень высокой помехо­устойчивостью. Помехоустойчивость достигается, благодаря передаче парафазного сигнала по витой паре в сочетании с дифференциальным приемником. Схема обеспечивает высокую степень подавления синфазных помех и хорошо восстанавливает логические уровни сигналов, искаженные при передаче по ли­нии связи. Форма сигналов, показанных на рисунке, позволяет понять, за счет чего обеспечивается относительно неискаженная передача.

Рисунок 10 - Симметричная линия с дифференциальным приемником

Если в качестве вы­ходных формирователей использовать коммутируемые токовые вентили (рис. 11), то получится шина "токовая петля".

Рисунок 11 - Линия типа "токовая петля"

Данная схема использует симметричный коаксиальный кабель или низкоомную витую пару. При импедансе 50 Ом такая "токовая петля" обеспечива­ет скорость передач 1 Мбит в 1 с на расстояние до 500 м или 10 Мбит/с на рас­стояние до 100 м.

Соседние файлы в папке ___МЕТОДИЧКИ_2013