Последовательный асинхронный адаптер (com порт)
Последовательный асинхронный адаптер (COM порт)
Источник: https://infopedia.su/12x58b6.html
Последовательный асинхронный адаптер (COM порт). Основные понятия и термины
Назначение контактаВход или выход компьютера
Обычно он представляет собой отдельную плату или же расположен прямо на материнской плате компьютера. Его называют еще асинхронным адаптером RS-232-C, или портом RS-232-C. Каждый асинхронный адаптер обычно содержит несколько портов RS-232-C, через которые к компьютеру можно подключать внешние устройства (удаленных до 30 метров.). Каждому такому порту соответствует несколько регистров, через которые программа получает к нему доступ, и определенная линия IRQ для сигнализирования компьютеру об изменении состояния порта. При выполнении BIOS процедуры начальной загрузки каждому порту RS-232-C присваивается логическое имя COM1 – COM4 (COM-порт номер 1 – 4). Наиболее часто используются Д-образные разъёмы: 9-ти и 25-тиконтактные (рисунок 20). Рисунок 20 – 9-контактный разъем COM-порта Данные передаются по данному интерфейсу пакетами по одному байту (8 бит). Порт последовательной передачи данных используется для: · подключение мыши; · подключение сканеров, принтеров; · связь двух компьютеров; · подключение модемов для передачи данных по телефонным линиям; · и др.
Обозначение:. LPT порт LPT (Line Print Terminal) — международный стандарт параллельного интерфейса для подключения периферийных устройств персонального компьютера. В основном используется для подключения к компьютеру принтера, сканера и других внешних устройств (часто использовался для подключения внешних устройств хранения данных), однако может применяться и для других целей. В основе данного стандарта лежит интерфейс Centronics и его расширенные версии (ECP, EPP).
Скорость передачи данных может варьироваться и достигать 1,2 Мбит/с. Рисунок 21 – LPT-порт на персональных компьютерах (IEEE 1284-A) Большинство фирменных расширений первоначального интерфейса впоследствии было стандартизировано индустрией, каковой процесс завершился принятием серии стандартов IEEE-1284. В настоящее время стандарт IEEE-1284 не развивается. Окончательная стандартизация параллельного порта совпала с началом внедрения интерфейса USB, который позволяет подключать также и комбинированные аппараты (сканер-принтер-копир) и обеспечивает более высокую скорость печати и надёжную работу принтера. Также, альтернативой параллельному интерфейсу является сетевой интерфейс Ethernet. Обозначение: PS/2
Рисунок 22 – Два порта PS/2: один окрашенный, другой – нет Рисунок 23 – Кабели с разъемами PS/2 Фиолетовый – клавиатура. Зелёный – мышь USB USB (Universal Serial Bus) — последовательный интерфейс передачи данных для среднескоростных и низкоскоростных периферийных устройств. Основная цель стандарта – создание возможности пользователям работать в режиме Plug&Play с периферийными устройствами. Это означает, что осуществляется подключение устройства к работающему компьютеру, автоматическое распознавание его немедленно после подключения и последующей установки соответствующих драйверов.
Благодаря встроенным линиям питания USB позволяет подключать периферийные устройства без собственного источника питания (максимальная сила тока, потребляемого устройством по линиям питания шины USB, не должна превышать 500 мА). К одному контроллеру шины USB можно подсоединить до 127 устройств по топологии «звезда», в том числе и концентраторы. В настоящее время широко используются устройства, выполненные в соответствии со спецификацией USB 2.0. Ведётся внедрение в производство устройств спецификации USB 3.0. Характеристики: USB 1.0: 1) спецификация выпущена в ноябре 1995 года; 2) два режима передачи данных: – режим с высокой пропускной способностью (Full-Speed) — 12 Мбит/с; – режим с низкой пропускной способностью (Low-Speed) — 1,5 Мбит/с. 3) максимальная длина кабеля для режима с высокой пропускной способностью — 3 м; 4) максимальная длина кабеля для режима с низкой пропускной способностью — 5 м; 5) максимальное количество подключённых устройств (включая размножители) — 127. Характеристики USB 2.0: 1) Спецификация выпущена в апреле 2000 года. 2) три режима работы: – Low-speed, 10—1500 Кбит/c (используется для интерактивных устройств: клавиатуры, мыши, джойстики); – Full-speed, 0,5—12 Мбит/с (аудио-, видеоустройства); – Hi-speed, 25—480 Мбит/с (видеоустройства, устройства хранения информации). Всего существует три типа USB-разъёмов (рисунок 24): · Разъём “тип A”: обычно присутствует у ПК. · Разъём “тип B”: обычно находится на самом USB-устройстве (если кабель съёмный). · Разъём мини-USB: обычно используется цифровыми видеокамерами, внешними жёсткими дисками и т.д.
Рисунок 24 Обозначение: «Тюльпан» (Cinch/RCA): композитный видео, аудио, HDTV (рисунок 25) Рисунок 25 Применяют следующую цветовую кодировку: жёлтый для видео (FBAS), белый и красный “тюльпаны” для аналогового звука, а также три “тюльпана” (красный, синий, зелёный) для компонентного выхода HDTV Разъёмы “тюльпан” используются в паре с коаксиальными кабелями для многих электронных сигналов. Обычно вилки “тюльпан” используют цветовое кодирование, которое приведено в следующей таблице.
|
|||||||||||||||||||||||||||
Последовательный асинхронный адаптер (COM порт). Основные понятия и термины Практически каждый компьютер оборудован хотя бы одним последовательным асинхронным адаптером. Обычно он представляет собой отдельную плату или же расположен прямо на материнской плате компьютера. Его называют еще асинхронным адаптером RS-232-C, или портом RS-232-C. Каждый асинхронный адаптер обычно содержит несколько портов RS-232-C, через которые к компьютеру можно подключать внешние устройства. Каждому такому порту соответствует несколько регистров, через которые программа получает к нему доступ, и определенная линия IRQ для сигнализирования компьютеру об изменении состояния порта. При выполнении BIOS процедуры начальной загрузки каждому порту RS-232-C присваивается логическое имя COM1 – COM4 (COM-порт номер 1 – 4). Интерфейс RS-232-C разработан ассоциацией электронной промышленности (Electronic Industries Association – EIA) как стандарт для соединения компьютеров и различных последовательных периферийных устройств. Компьютер IBM PC поддерживает интерфейс RS-232-C не в полной мере скорее разъем, обозначенный на корпусе компьютера как порт последовательной передачи данных, содержит некоторые из сигналов, входящих в интерфейс RS-232-C и имеющих соответствующие этому стандарту уровни напряжения. В настоящее время порт последовательной передачи данных используется очень широко. Вот далеко не полный список применений:
Основные понятия и термины Последовательная передача данных означает, что данные передаются по единственной линии. При этом биты байта данных передаются по очереди с использованием одного провода. Для синхронизации группе битов данных обычно предшествует специальный стартовый бит, после группы битов следуют бит проверки на четность и один или два стоповых бита. Иногда бит проверки на четность может отсутствовать. Сказанное иллюстрируется следующим рисунком: Из рисунка видно, что исходное состояние линии последовательной передачи данных – уровень логической 1. Это состояние линии называют отмеченным – MARK. Когда начинается передача данных, уровень линии переходит в 0. Это состояние линии называют пустым – SPACE. Если линия находится в таком состоянии больше определенного времени, считается, что линия перешла в состояние разрыва связи – BREAK. Стартовый бит START сигнализирует о начале передачи данных. Далее передаются биты данных, вначале младшие, затем старшие. Если используется бит четности P, то передается и он. Бит четности имеет такое значение, чтобы в пакете битов общее количество единиц (или нулей) было четно или нечетно, в зависимости от установки регистров порта. Этот бит служит для обнаружения ошибок, которые могут возникнуть при передаче данных из-за помех на линии. Приемное устройство заново вычисляет четность данных и сравнивает результат с принятым битом четности. Если четность не совпала, то считается, что данные переданы с ошибкой. Конечно, такой алгоритм не дает стопроцентной гарантии обнаружения ошибок. Так, если при передаче данных изменилось четное число битов, то четность сохраняется и ошибка не будет обнаружена. Поэтому на практике применяют более сложные методы обнаружения ошибок. В самом конце передаются один или два стоповых бита STOP, завершающих передачу байта. Затем до прихода следующего стартового бита линия снова переходит в состояние MARK. Использование бита четности, стартовых и стоповых битов определяют формат передачи данных. Очевидно, что передатчик и приемник должны использовать один и тот же формат данных, иначе обмен будет невозможен. Другая важная характеристика – скорость передачи данных. Она также должна быть одинаковой для передатчика и приемника. Скорость передачи данных обычно измеряется в бодах (по фамилии французского изобретателя телеграфного аппарата Emile Baudot – Э. Бодо). Боды определяют количество передаваемых битов в секунду. При этом учитываются и старт/стопные биты, а также бит четности. Иногда используется другой термин – биты в секунду (bps). Здесь имеется в виду эффективная скорость передачи данных, без учета служебных битов.Аппаратная реализация Компьютер может быть оснащен одним или двумя портами последовательной передачи данных. Эти порты расположены либо на материнской плате, либо на отдельной плате, вставляемой в слоты расширения материнской платы. Бывают также платы, содержащие четыре или восемь портов последовательной передачи данных. Их часто используют для подключения нескольких компьютеров или терминалов к одному, центральному компьютеру. Эти платы имеют название “мультипорт”. В основе последовательного порта передачи данных лежит микросхема Intel 8250 или ее современные аналоги – Intel 16450, 16550, 16550A. Эта микросхема является универсальным асинхронным приемопередатчиком (UART – Universal Asynchronous Receiver Transmitter). Микросхема содержит несколько внутренних регистров, доступных через команды ввода/вывода. Микросхема 8250 содержит регистры передатчика и приемника данных. При передаче байта он записывается в буферный регистр передатчика, откуда затем переписывается в сдвиговый регистр передатчика. Байт “выдвигается” из сдвигового регистра по битам. Аналогично имеются сдвиговый и буферный регистры приемника. Программа имеет доступ только к буферным регистрам, копирование информации в сдвиговые регистры и процесс сдвига выполняется микросхемой UART автоматически. Регистры, управляющие асинхронным последовательным портом, будут описаны в следующей главе. К внешним устройствам асинхронный последовательный порт подключается через специальный разъем. Существует два стандарта на разъемы интерфейса RS-232-C, это DB25 и DB9. Первый разъем имеет 25, а второй 9 выводов. Приведем разводку разъема последовательной передачи данных DB25: |
|||||||||||||||||||||||||||
1 | Защитное заземление(Frame Ground, FG) | – | |||||||||||||||||||||||||
2 | Передаваемые данные(Transmitted Data, TD) | Выход | |||||||||||||||||||||||||
3 | Принимаемые данные(Received Data, RD) | Вход | |||||||||||||||||||||||||
4 | Запрос для передачи(Request to send, RTS) | Выход | |||||||||||||||||||||||||
5 | Сброс для передачи(Clear to Send, CTS) | Вход | |||||||||||||||||||||||||
6 | Готовность данных(Data Set Ready, DSR) | Вход | |||||||||||||||||||||||||
7 | Сигнальное заземление(Signal Ground, SG) | – | |||||||||||||||||||||||||
8 | Детектор принимаемого с линии сигнала(Data Carrier Detect, DCD) | Вход | |||||||||||||||||||||||||
9-19 | Не используются | – | |||||||||||||||||||||||||
20 | Готовность выходных данных(Data Terminal Ready, DTR) | Выход | |||||||||||||||||||||||||
21 | Не используется | – | |||||||||||||||||||||||||
22 | Индикатор вызова(Ring Indicator, RI) | Вход | |||||||||||||||||||||||||
23-25 | Не используются | – |
Наряду с 25-контактным разъемом часто используется 9-контактный разъем:
Номер контактаНазначение контактаВход или выход
1 | Детектор принимаемого с линии сигнала(Data Carrier Detect, DCD) | Вход |
2 | Принимаемые данные(Received Data, RD) | Вход |
3 | Передаваемые данные(Transmitted Data, TD) | Выход |
4 | Готовность выходных данных(Data Terminal Ready, DTR) | Выход |
5 | Сигнальное заземление(Signal Ground, SG) | – |
6 | Готовность данных(Data Set Ready, DSR) | Вход |
7 | Запрос для передачи(Request to send, RTS) | Выход |
8 | Сброс для передачи(Clear to Send, CTS) | Вход |
9 | Индикатор вызова(Ring Indicator, RI) | Вход |
Только два вывода этих разъемов используются для передачи и приема данных. Остальные передают различные вспомогательные и управляющие сигналы. На практике для подсоединения того или иного устройства может понадобиться различное количество сигналов.
Интерфейс RS-232-C определяет обмен между устройствами двух типов: DTE (Data Terminal Equipment – терминальное устройство) и DCE (Data Communication Equipment – устройство связи). В большинстве случаев, но не всегда, компьютер является терминальным устройством.
Модемы, принтеры, графопостроители всегда являются устройствами связи. Рассмотрим теперь сигналы интерфейса RS-232-C более подробно.
Сигналы интерфейса RS-232-C
Здесь мы рассмотрим порядок взаимодействия компьютера и модема, а также двух компьютеров непосредственно соединенных друг с другом. Сначала посмотрим, как происходит соединение компьютера с модемом.
Входы TD и RD используются устройствами DTE и DCE по-разному. Устройство DTE использует вход TD для передачи данных, а вход RD для приема данных. И наоборот, устройство DCE использует вход TD для приема, а вход RD для передачи данных.
Поэтому для соединения терминального устройства и устройства связи выводы их разъемов необходимо соединить напрямую:
Остальные линии при соединении компьютера и модема также должны быть соединены следующим образом:
Рассмотрим процесс подтверждения связи между компьютером и модемом. В начале сеанса связи компьютер должен удостовериться, что модем может произвести вызов (находится в рабочем состоянии).
Затем, после вызова абонента, модем должен сообщить компьютеру, что он произвел соединение с удаленной системой. Подробнее это происходит следующим образом. Компьютер подает сигнал по линии DTR, чтобы показать модему, что он готов к проведению сеанса связи. В ответ модем подает сигнал по линии DSR.
Когда модем произвел соединение с другим, удаленным модемом, он подает сигнал по линии DCD, чтобы сообщить об этом компьютеру. Если напряжение на линии DTR падает, это сообщает модему, что компьютер не может далее продолжать сеанс связи, например из-за того что выключено питание компьютера. В этом случае модем прервет связь.
Если напряжение на линии DCD падает, это сообщает компьютеру, что модем потерял связь и не может больше продолжать соединение. В обоих случаях эти сигналы дают ответ на наличие связи между модемом и компьютером.
Сейчас мы рассмотрели самый низкий уровень управлением связи – подтверждение связи. Существует более высокий уровень, который используется для управления скоростью обмена данными, но он также реализуется аппаратно.
Практически управление скоростью обмена данными (управление потоком) необходимо, если производится передача больших объемов данных с высокой скоростью. Когда одна система пытается передать данные с большей скоростью, чем они могут быть обработаны принимающей сиситемой, результатом может стать потеря части передаваемых данных.
Чтобы предотвратить передачу большего числа данных, чем то, которое может быть обработано, используют управление связью, называемое “управление потоком” (flow-controll handshake). Стандарт RS-232-C определяет возможность управления потоком только для полудуплексного соединения.
Полудуплексным называется соединение, при котором в каждый момент времени данные могут передаваться только в одну сторону. Однако фактически этот механизм используется и для дуплексных соединений, когда данные передаются по линии связи одновременно в двух направлениях.
Управление потоком
В полудуплексных соединениях устройство DTE подает сигнал RTS, когда оно желает передать данные. DCE отвечает сигналом по линии CTS, когда оно готово, и DTE начинает передачу данных.
До тех пор, пока оба сигнала RTS и CTS не примут активное состояние, только DCE может передавать данные. При дуплексных соединениях сигналы RTS/CTS имеют противоположные значения по сравнению с теми, которые они имели для полудуплексных соединений.
Когда DTE может принять данные, он подает сигнал по линии RTS. Если при этом DCE готово для принятия данных, оно возвращает сигнал CTS. Если напряжение на линиях RTS или CTS падает, то это сообщает передающей системе, что получающая система не готова для приема данных.
Ниже мы приводим отрывок диалога между компьютером и модемом, происходящий при обмене данными.
Конечно, все это хорошо звучит. На практике все не так просто. Соединить компьютер и модем не составляет труда, так как интерфейс RS-232-C как раз для этого и предназначен.
Но если вы захотите связать вместе два компьютера при помощи такого же кабеля, который вы использовали для связи модема и компьютера, то у вас возникнут проблемы.
Для соединения двух терминальных устройств – двух компьютеров – как минимум необходимо перекрестное соединение линий TR и RD:
Однако в большинстве случаев этого недостаточно, так как для устройств DTE и DCE функции, выполняемые линиями DSR, DTR, DCD, CTS и RTS, асимметричны. Устройство DTE подает сигнал DTR и ожидает получения сигналов DSR и DCD.
В свою очередь, устройство DCE подает сигналы DSR, DCD и ожидает получения сигнала DTR. Таким образом, если вы соедините вместе два устройства DTE кабелем, который вы использавали для соединения устройств DTE и DCE, то они не смогут договориться друг с другом.
Не выполнится процесс подтверждения связи.
Теперь перейдем к сигналам RTS и CTS, управления потоком данных. Иногда для соединения двух устройств DTE эти линии соединяют вместе на каждом конце кабеля. В результате получаем то, что другое устройство всегда готово для получения данных.
Поэтому, если при большой скорости передачи принимающее устройство не успевает приинимать и обрабатывать данные, возможна потеря данных. Чтобы решить все эти проблемы для соединеия двух устройств типа DTE используется специальный кабель, в обиходе называемый нуль-модемом.
Имея два разъема и кабель, вы легко можете спаять его самостоятельно, руководствуясь следующими схемами.
Для полноты картины рассмотрим еще один аспект, связанный с механическим соединением портов RS-232-C. Из-за наличия двух типов разъемов – DB25 и DB9 – часто бывают нужны переходники с одного типа разъемов на другой.
Например, вы можете использовать такой переходник для соединения COM-порта компьютера и кабеля нуль-модема, если на компьютере установлен разъем DB25, а кабель оканчивается разъемами DB9.
Схему такого переходника мы приводим на следующем рисунке:
Заметим, что многие устройства (такие, как терминалы и модемы) позволяют управлять состоянием отдельных линий RS-232-C посредством внутренних переключателей (DIP-switches). Эти переключатели могут менять свое значение на разных моделях модемов.
Поэтому для их использования следует изучить документацию модема. Например, для hayes-совместимых модемов, если переключатель 1 находится в положении “выключен” (down), это означает, что модем не будет проверять наличие сигнала DTR.
В результате модем может отвечать на приходящие звонки, даже если компьютер и не запрашивает у модема установление связи.
Технические параметры интерфейса RS-232-C
При передаче данных на большие расстояния без использования специальной аппаратуры из-за помех, наводимых электромагнитными полями, возможно возникновение ошибок. Вследствие этого накладываются ограничения на длину соединительного кабеля между устройствами DTR-DTR и DTR-DCE.
Официальное ограничение по длине для соединительного кабеля по стандарту RS-232-C составляет 15,24 метра. Однако на практике это расстояние может быть значительно больше. Оно непосредственно зависит от скорости передачи данных.
Согласно McNamara (Technical Aspects of Data Communications, Digital Press, 1982) определены следующие значения:
Скорость передачи,бодахМаксимальная длина для экранированного кабеля, мМаксимальная длина для неэкранированного кабеля, м
110 | 1524,0 | 914,4 |
300 | 1524,0 | 914,4 |
1200 | 914,4 | 914,4 |
2400 | 304,8 | 152,4 |
4800 | 304,8 | 76,2 |
9600 | 76,2 | 76,2 |
Уровни напряжения на линиях разъема составляют для логического нуля -15..-3 вольта, для логической единицы – +3..+15 вольт. Промежуток от -3 до +3 вольт соответствует неопределенному значению.
Если вы подключаете внешние устройства к разъему интерфейса RS-232-C (а также при соединении двух компьютеров нуль-модемом), предварительно выключите его и компьютер, а также снимите статический заряд (подсоединив заземление). В противном случае можно вывести из строя асинхронный адаптер.
Земля компьютера и земля внешнего устройства должны быть соединены вместе.
Источник: shems.h1.ru
Источник: http://www.qrz.ru/schemes/contribute/digest/comp34.shtml
Терминология – COM-порт (последовательный порт)
Serial port (серийный порт, последовательный порт или COM-порт -, communications port) — это последовательный интерфейс с двойной направленностью.
Почему порт назвается последовательным? Потому, что вся информация по этому порту передается шагом равным одному биту. В нем данные передаются бит за битом, в отличие от параллельного порта.
Несмотря на то, что в некоторых других интерфейсах как, например, в Ethernet, FireWire и USB, применяется последовательный обмен данными, название «последовательный порт» закрепилось за портом, обладающим стандартом RS-232C.
Данный порт, в сравнении с другими “последовательными” технологиями, обладает отличительной особенностью: в нем отсутствует какое-либо временное требование между 2 байтами. Временные требования существуют только между битами одного байта.
Величина, обратная временной паузе между битами одного байта, носит название «baud rate» (скорость передачи). Кроме того, в данной технологии нет такого понятия, как “пакет”. Другие технологии “последовательной” передачи данных (X.
25, USB или Ethernet), используют “пакеты”, также в них существуют и жесткие временные требования между битами одного пакета.
В части протоколов связи с индустриальным оборудованием имеются жесткие временные требования между байтами последовательного порта.
Реализация в многозадачных операционных системах со слабой поддержкой реального времени этих протоколов очень сложна. К этим системам относятся и Windows.
Вот почему для работы с этими протоколами зачастую применяют MS-DOS или более устаревшее программное обеспечение.
Самый распространенный для последовательного порта стандарт – RS-232C. Ранее последовательный порт применялся для подключения терминала, позднее его использовали для подключения модема или мыши.
В настоящее время его применяют в качестве средства соединения с источниками бесперебойного питания, а также в качестве средства связи с аппаратными средствами разработки встраиваемых вычислительных систем, спутниковыми ресиверами, кассовыми аппаратами и приборами систем безопасности.
Благодаря COM-порту появляется возможность подключить друг к другу два ПК, применяя так называемый «нуль-модемный кабель». Данный метод использовался со времен MS-DOS в целях перекачки файлов с одного компьютера на другой. В UNIX-системах он использовался для терминального доступа к другой машине, а в операционных системах Windows – для отладчика уровня ядра.
Довольно популярный в свое время в IBM-совместимых ПК последовательный порт, сегодня уже морально устарел. Однако, следует отметить, что он еще нередко используется в промышленном и узкоспециальном оборудовании, а также на некоторых современных компьютерах. Последовательный порт активно вытесняется интерфейсом USB и FireWire.
Однако имеются специальные стандарты эмуляции последовательного порта над USB и над Bluetooth. Кстати, любопытно, но именно Bluetooth-технология проектировалась разработчиками в качестве беспроводной версии последовательного порта.
Программная эмуляция порта широко используется и по сей день. Так, практически все мобильные телефоны сегодня эмулируют внутри себя COM-порт и модем, с целью реализации тетеринга (доступа компьютера к сети Интернет через GPRS/EGDE/3G).
А вот непосредственно для физического подключения к компьютеру применяется USB, Bluetooth или Wi-Fi технологии.
Кроме того, программная эмуляция последовательного порта возможна для гостевых пользователей виртуальных машин VMWare и Microsoft Hyper-V. Основной целью данной процедуры является подключение отладчика уровня ядра Windows к гостевому клиенту.
Достоинства COM-порта
Главное преимущество данной технологии состоит в простоте подключения.
Недостатки COM-порта
Главными недостатками данного порта являются его низкая скорость, большие размеры разъемов, а также высокие требования к времени отклика операционной системы. Также, в данном стандарте наблюдается высокое количество прерываний (одно прерывание на каждые 8 байт).
Разъемы
Самыми распространенными разъемами стандарта являются 9-ти и 25-ти контактные (DB-9 и DB-25, соответственно), которые были стандартизированы в 1969 году. Это D-образные разъемы. Помимо них использовались и другие, но из этого же семейства: DB-31 и круглые восьмиконтактные DIN-8.
Аппаратура
Разъем обладает следующими контактами:
- DTR (Data Terminal Ready) – выход на ПК, вход – на модеме. Отвечает за готовность компьютера к работе с модемом. Сброс вызывает почти полную перезагрузку модема. В случае с мышью, данный провод используется для осуществления питания.
- DSR (Data Set Ready) – вход на ПК, выход – на модеме. Отвечает за готовность модема. Если линия в нуле, то в некоторых операционных системах невозможно открыть порт в качестве файла.
- RxD (Receive Data) – вход на ПК, выход – на модеме. Обозначает поток входящих в ПК данных.
- TxD (Transmit Data) – выход на ПК, вход – на модеме. Обозначает поток исходящих от ПК данных.
- CTS (Clear to Send) – вход на ПК, выход – на модеме. Компьютер должен приостановить процесс передачи данных, пока данный провод не будет выставлен в единицу. Применяется в аппаратном протоколе управления потоком в целях недопущения переполнения на модеме.
- RTS (Request to Send) – выход на ПК, вход – на модеме. Модем должен приостановить процесс передачи данных, до тех пор, пока провод не будет выставлен в единицу. Применяется в аппаратном протоколе управления потоком в целях недопущения переполнения в оборудовании/драйвере.
- DCD (Carrier Detect) – вход на ПК, выход – на модеме. После установления связи с модемом с той стороны возводится в единицу, сбрасывается в ноль, в случае разрыва связи. Аппаратура ПК может производить прерывание, в случае наступления подобного события.
- RI (Ring Indicator) – вход на ПК, выход – на модеме. После детерминации вызывного сигнала телефонного звонка, возводится модемом в единицу. Аппаратная часть ПК может производить прерывание, в случае наступления подобного события.
- SG (Signal Ground) – общий сигнальный провод порта. Важно: земля – не общая. Обычно провод имеет изоляцию от корпуса ПК или модема.
В нуль-модемном кабеле применяются две перекрещенные пары: TXD/RXD и RTS/CTS.
UART 16550 – стандартная аппаратура порта. Сегодня включена в SuperIO микросхему на материнской плате. Со времен IBM PC, она оснащена аппаратной очередью байтов. Она существенно снижает число возникающих прерываний.
Источник: https://www.alterbit.ru/glossary168.html
Порты асинхронного адаптера
Лабораторная работа №5
Тема: «Асинхронный последовательный адаптер»
Цель работы: Ознакомление с работой функций MS-DOS работы с асинхронным последовательным адаптером.
Теоретические сведения:
Последовательная передача данных предполагает, что данные передаются с использованием единственной линии. При этом биты байта данных передается по очереди с использованием одного провода.
Для синхронизации группе битов обычно предшествует специальный стартовый бит. После группы битов данных следует бит проверки на четность и один или два стоповых бита. Иногда бит проверки на четность может отсуствовать.
Исходное состояние линии последовательной передачи данных – уровень логической 1. Стартовый бит START сигнализирует о начале передачи данных. Далее передаются биты данных, вначале младшие, затем старшие. Если используется бит четности P, то передается и он. Бит четности имеет такое значение, чтобы в пакете битов общее количество единиц (или нулей) было четно или нечетно.
В самом конце передаются один или два стоповых бита STOP, завершающих передачу байта. Затем уровень линии передачи снова устанавливается в 1 до прихода следующего стартового бита.
Использование четности, стартовых и стоповых битов определяют протокол передачи данных. Очевидно, что передатчик и приемник данных должны использовать один и тот же протокол, иначе связь будет невозможной.
Другая важная характеристика – скорость передачи данных. Она также должна быть одинаковой для передатчика и приемника.
Скорость передачи данных обычно измеряется в бодах. Боды – это количество передаваемых бит в секунду. При этом учитываются и старт/стопные биты, а также бит четности.
В технической литературе и в различной документации документации вы можете встретить и другой термин – биты в секунду (bps). Здесь имеется в виду эффективная скорость передачи данных без учета временных затрат на передачу служебных битов.
Аппаратная реализация
Компьютер может быть оснащен одним или двумя асинхронными последовательными адаптерами. Эти адаптеры расположены либо на системной плате, либо (в старых компьютерах) на отдельной плате, вставляемой в разъемы расширения системной платы.
Бывают также платы расширения, содержащие 4, 8 или большее количество асинхронных последовательных адаптеров. Их часто используют для подключения нескольких модемов к одному компьютеру.
Микросхема UART
В основе последовательного порта передачи данных лежит микросхема Intel 8250 или более современные микросхемы, такие как 16450, 16550, 16550A. Это универсальный асинхронный приемо-передатчик (UART – Universal Asynchronous Receiver Transmitter). Микросхема содержит несколько внутренних регистров, доступных через команды ввода/вывода.
В микросхеме 8250 есть регистры передатчика и приемника данных. При передаче выходной байт записывается в буферный регистр передатчика, откуда затем переписывается в сдвиговый регистр передатчика. После этого байт выдвигается из сдвигового регистра по битам.
Аналогично работают сдвиговый и буферный регистры приемника.
Программа имеет доступ только к буферным регистрам, копирование информации в сдвиговые регистры и процесс сдвига выполняется микросхемой UART автоматически.
Порты асинхронного адаптера
На этапе инициализации системы BIOS тестирует имеющиеся асинхронные последовательные адаптеры и инициализирует первые два. Их базовые адреса располагаются в области данных BIOS начиная с адреса 0000:0400h.
Первый адаптер COM1 имеет базовый адрес 3F8h и занимает диапазон адресов от 3F8h до 3FFh, второй адаптер COM2 имеет базовый адрес 2F8h и занимает адреса 2F8h…2FFh.
Асинхронные адаптеры могут вырабатывать прерывания:
· COM1 – IRQ4 (соответствует INT 0Ch);
· COM2 – IRQ3 (соответствует INT 0Bh)
Порт 3F8h
Порт 3F8h соответствует регистру данных. Для передачи необходимо записать в этот порт передаваемый байт данных. После приема данных от внешнего устройства они могут быть прочитаны порта 3F8h.
В зависимости от состояния старшего бита управляющего слова, записываемого в управляющий регистр с адресом 3FBh, назначение порта 3F8h может изменяться. Если этот бит сброшен, порт используется для записи передаваемых данных. Если же бит установлен, порт используется для вывода значения младшего байта делителя частоты тактового генератора.
Изменяя содержимое делителя, можно изменять скорость передачи данных. Старший байт делителя записывается в порт 3F9h.
Зависимость скорости передачи данных от значения делителя частоты представлена ниже:
Делитель | Скорость передачи в бодах |
Порт 3F9h
Порт 3F9h используется либо как регистр управления прерываниями от асинхронного адаптера либо (после вывода в порт 3F9h байта с установленным старшим битом) для вывода значения старшего байта делителя частоты тактового генератора.
В режиме регистра управления прерываниями порт имеет следующий формат:
Поле | Описание |
Разрешение прерывания при готовности принимаемых данных | |
Разрешение прерывания после передачи байта, когда выходной буфер передачи пуст | |
Разрешение прерывания по обнаружению состояния BREAK или при возникновении ошибке | |
Разрешение прерывания по изменению состояния входных линий на разъеме RS232-C (CTS, DSR, RI, DCD) | |
4-7 | Не используются, должны быть равны 0 |
Порт 3FAh
Порт 3FAh представляет собой регистр идентификации прерывания. Считывая его содержимое, программа может определить причину прерывания.
Формат регистра:
Поле | Описание |
1 – Нет прерываний, ожидающих обслуживания | |
1-2 | 00 – Прерывание по линии состояния приемника, возникает при переполнении приемника, ошибках четности или формата данных или при состоянии “BREAK”. Сбрасывается после чтения состояния линии из порта 3FDh; 01 – Данные приняты и доступны для чтения. Сбрасывается после чтения данных из порта 3F8h; 10 – Буфер передатчика пуст. Сбрасывается при записи новых данных в регистр данных передатчика, порт 3F8h; 11 – Состояние модема. Устанавливается при изменении состояния входных линий CTS, RI, DCD, DSR. Сбрасывается после чтения состояния модема из порта 3FEh |
3-7 | Должно быть равно 0 |
Порт 3FBh
Порт 3FBh – это управляющий регистр, доступен по записи и чтению.
Формат регистра:
Поле | Описание |
0-1 | Длина слова в битах: 00 – 5 бит; 01 – 6 бит; 10 – 7 бит; 11 – 8 бит |
Количество стоповых бит: 0 – 1 бит; 1 – 2 бита | |
3-4 | Четность: X0 – контроль на четность не используется; 01 – контроль на нечетность; 11 – контроль на четность |
Фиксация четности. При установке этого бита бит четности всегда принимает значение 0 (если биты 3-4 равны 11) или 1 (если биты 3-4 равны 01) | |
Установка перерыва. Вызывает вывод строки нулей в качестве сигнала BREAK для подключенного устройства | |
1 – порты 3F8h и 3F9h используются для для загрузки делителя частоты тактового генератора; 0 – порты используются как обычно |
Порт 3FCh
Порт 3FCh – это регистр управления модемом. Управляет состоянием выходных линий DTR, RTS, линий, специфических для модемов OUT1 и OUT2, для запуска диагностики.
Формат порта:
Поле | Описание |
Линия DTR | |
Линия RTS | |
Линия OUT1 (запасная) | |
Линия OUT2 (запасная) | |
Запуск диагностики при входе асинхронного адаптера, замкнутом на его выход | |
5-7 | Должно быть равно 0 |
Порт 3FDh
Порт 3FDh представляет собой регистр состояния линии.
Формат порта:
Поле | Описание |
Данные получены и готовы для чтения. Сбрасывается при чтении данных | |
Ошибка переполнения. Был принят новый байт данных, а предыдущий еще не был считан программой. Предыдущий байт потерян | |
Ошибка четности. Сбрасывается после чтения состояния линии | |
Ошибка синхронизации | |
Обнаружен запрос на прерывание передачи BREAK: длинная строка нулей | |
Регистр хранения передатчика пуст, в него можно записывать новый байт для передачи | |
Регистр сдвига передатчика пуст. Этот регистр получает данные из регистра хранения и преобразует их в последовательный вид для передачи | |
Истекло время ожидания |
Порт 3FEh
Порт 3FEh представляет собой регистр состояния модема.
Поле | Описание |
Линия CTS изменила состояние | |
Линия DSR изменила состояние | |
Линия RI изменила состояние | |
Линия DCD изменила состояние | |
Состояние линии CTS | |
Состояние линии DSR | |
Состояние линии RI | |
Состояние линии DCD |
Функции BIOS для работы с последовательным асинхронным адаптером
В этом разделе мы расскажем о функцях BIOS, облегчающих обслуживание двух асинхронных адаптеров, COM1 и COM2. Эти функции доступны через прерывание INT 14h.
Источник: https://studlib.info/informatika/144472-porty-asinkhronnogo-adaptera/
Последовательные интерфейсы (стр. 1 из 2)
1 Последовательные интерфейсы
2 Интерфейс RS-232C
3 Электрический интерфейс
4 Ресурсы СОМ – портов
5 Конфигурирование СОМ – портов
6 Использование СОМ – портов
1 Последовательные интерфейсы
Последовательный интерфейс для передачи данных в одну сторону использует одну сигнальную линию, по которой информационные биты передаются друг за другом последовательно. Такой способ передачи определяет название интерфейса и порта, его реализующего (Serial Interface и Serial Port). Последовательная передача данных может осуществляться в синхронном и асинхронном режимах.
При асинхронной передачи каждому байту предшествует старт-бит, сигнализирующий приемнику о начале очередной посылки, за которой следуют биты данных или бит паритета (конроля четности). Завершает посылку стоп-бит. Старт-бит (имеющий значение лог.
“0”) следующего посланного байта может посылаться в любой момент после окончания стоп-бита. Старт-бит обеспечивает механизм синхронизации приемника по сигналу от передатчика. Внутренний генератор синхронизации приемника использует счетчик-делитель опорной частоты, обнуляемый в момент приема начала старт-бита.
Этот счетчик генерирует внутренние стробы, по которым приемник фиксирует последующие принимаемые биты.
Формат асинхронной посылки позволяют выявить возможные ошибки передачи.
Для асинхронного режима принят ряд стандартных скоростей обмена: 50,75,110,150,300,600,1200,2400,4800, 19200,38400,57600,115200 бит/сек. Количество бит данных может составлять 5,6,7,8 бит. Количество стоп битов может быть 1,1.5,2 бита. Асинхронный в РС реализуется с помощью СОМ-порта с использованием протокола RS-232C.
Синхронный режим передачи предполагает постоянную активность канала связи. Посылка начинается с синхробайта, за которым плотно следует поток информационных бит. Если у передатчика нет данных для передачи, он заполняет паузу непрерывной посылкой байтов синхронизации.
При передаче больших массивов данных накладные расходы на синхронизацию в данном режиме необходима будет ниже, чем в асинхронном.
Однако в синхронном режиме необходима внешняя синхронизация приемника с передатчиком, поскольку даже малое отклонение частот приведет к быстро накапливающейся ошибке и искажению принимаемых данных.
Внешняя синхронизация возможна либо с помощью отдельной линии передачи для передачи сигнала синхронизации, либо с использованием самосинхронизирующего кодирования данных, при котором на приемной стороне из принятого сигнала могут быть и импульсы синхронизации.
В любом случае синхронный режим требует либо дорогих линий связи, либо дорогого оконеченного оборудования. Для РС существуют специальные платы – адаптеры SDLC, поддерживающие синхронный режим обмена. Они используются в основном для связи с большими машинами IBM и в настоящее время мало распространены. Из синхронных адаптеров в настоящее время чаще всего применяются адаптеры интерфейса V.35.
Последовательный интерфейс на физическом уровне может иметь различные реализации, различающиеся способом передачи электрических сигналов. Существует ряд родственных международных стандартов: RS-232C,RS-432A,RS-422A,RS485.
Несимметричные линии интерфейсов RS-232C,RS-432A имеют самую низкую защищенность от синфазной помехи. Лучшие параметры имеет двухточечный интерфейс
RS-422A и его магистральный (шинный) родственник RS-485, работающие на симметричных линиях связи. В них для каждого сигнала используются дифференциальные сигналы с отдельной (витий) парой приводов.
Наибольшее распространение в РС получил простейший из этих – стандарт RS-232C. В промышленной автоматике широко применяется RS – 422А, а также RS-485, встречающийся и в некоторых принтерах. Существуют относительно несложные преобразователи сигналов для согласования всех этих интерфейсов.
2 Интерфейс RS-232C
Интерфейс RS-232C предназначен для подключения аппаратуры, передающей или принимающей данные (АПД-аппаратура передачи данных), к оконечной аппаратуре каналов данных (АКД). В роли АПД может выступать компьютер, принтер, плоттер и другие ПУ. Этой аппаратуре соответствует аббревиатура DTE-Data Terminal Equipment.
В роли АКД обычно выступает модем – DCE (Data Communication Equipment). Конечной целью подключения является соединение двух устройств DTE, полная схема соединения приведена на рис.2.
Интерфейс позволяет исключать канал удаленной связи вместе с парой устройств DTE, соединив устройства непосредственно с помощью нуль-модемного кабеля (рис.3).
Стандарт описывает управляющие сигналы интерфейса, пересылку данных, электрический интерфейс и типы разъемов. Стандарт описывает синхронный и асинхронный режимы обмена, но СОМ-порты поддерживают только асинхронный режим. Функционально RS-232C эквивалентен стандарту МККТТ V.24/V.28 и стыку С2, но они имеют различные названия одних и тех же используемых сигналов.
Рис.1-Стандарт последовательного интерфейса
Рис.2-Полная схема соединения по RS-232C
Рис.3-Соединение по RS-232C нуль-модемным кабелем
3 Электрический интерфейс
Стандарт RS-232C использует несимметричные передатчики и приемники – сигнал передается относительно общего провода – схемной земли cимметричные дифференциальные сигналы используются в других интерфейсах – например,RS-422). Интерфейс НЕ ОБЕСПЕЧИВАЕТ ГАЛЬВАНИЧЕСКОЙ РАЗВЯЗКИ устройств.
Логической единице соответствует уровень напряжения на входе приемника в диапазоне – 12… – 3 В. Для линий управляющих сигналов это состояние называется ON (“включено”), для линий последовательных данных называется MARK. Логическому нулю соответствует напряжение в диапазоне +3… +12 В.
Для линий управляющих сигналов это состояние называется OFF (“выключено”), для линий последовательных данных называется SPACE. Между уровнями – 3…
+3 В имеется зона нечувствительности, обусловливающая гистерезис приемника: состояние линии будет считаться измененным только после пересечения соответствующего порога. Уровни сигналов на выходах передатчиков должны быть в диапазонах – 12… – 5 В и +5…
+12 В для представления единицы и нуля соответственно. Разность потенциалов между схемными землями (SG) соединяемых устройств должна быть менее 2 В, при более высокой разности потенциалов возможно неверное восприятие сигналов.
Интерфейс предполагает наличие ЗАЩИТНОГО ЗАЗЕМЛЕНИЯ для соединяемых устройств, если они оба питаются от сети переменного тока и имеют сетевые фильтры.
Подключение и отключение интерфейсных кабелей устройств с автономным питанием (не питающихся от интерфейса, таких как, например, мышь) должно производиться при отключении питания.
В противном случае разность не выровненных потенциалов устройств в момент коммутации (присоединения или отсоединения разъема) может оказаться приложенной к выходным или входным (что опаснее) цепям интерфейса и вывести из строя микросхемы.
Для интерфейса RS-232C специально выпускаются буферные микросхемы приемников (с гистерезисом) и передатчиков двуполярного сигнала. При несоблюдении правил заземления и коммутации включенных устройств они обычно являются первыми (хорошо, если единственными) жертвами “пиротехнических”эффектов.
Иногда их устанавливают в “кроватках”, что сильно облегчает замену. Часто буферные схемы входят прямо в состав интерфейсных БИС. Это удешевляет изделие, экономит место на плате, но в случае аварии обычно оборачивается крупными финансовыми потерями.
Вывести из строя интерфейсные микросхемы замыканием сигнальных цепей маловероятно, поскольку ток короткого замыкания передатчиков обычно ограничен на уровне 20 мА.
Стандарт RS-232C регламентирует типы применяемых разъемов, что обеспечивает высокий уровень совместимости аппаратуры различных производителей.
На аппаратуре DTE (в том числе, и на СОМ-портах PC) принято устанавливать вилки, (male – “папа”) DB25-P или более компактный вариант – -DB9-P.
Девятиштырьковые разъемы не имеют контактов для дополнительных сигналов, необходимых для синхронного режима (в большинстве 25тырьковых разъемов эти контакты не используются).
На аппаратуре DCE (модемах) устанавливают розетки (female – “мама”) DB25-S или DB-9S.
Это правило предполагает, что разъемы DCE могут подключаться к разъемам DTE непосредственно (если позволяет геометрия конструктива) или через переходные “прямые” кабели с розеткой и вилкой, у которых контакты cоединены “один в один”. Переходные кабели могут являться и переходниками с 9 на 25-штырьковые разъемы.
Если аппаратура DTE соединяется без модемов, то разъемы устройств (вилки) соединяются между собой нуль-модемным кабелем (Zero-modem или Z-modem), имеющим на обоих концах розетки, контакты которых соединяются перекрестно.
Если на каком-либо устройстве DTE (принтер, плоттер, дигитайзер) установлена розетка – это почти стопроцентный признак того, что к другому устройству (компьютеру) оно должно подключаться прямым кабелем, аналогичным кабелю подключения модема. Розетка устанавливается обычно на тех устройствах, у которых удаленное подключение через модем не предусмотрено (или бессмысленно, как, например, у дигитайзера).
В табл.1 приведено назначение контактов разъемов СОМ-портов (и любой другой аппаратуры DTE). Назначение контактов разъема DB25S определено стандартом EIA/TIA-232-Е, разъем DB9S определен стандартом EIA/ TIA-574.
У модемов (DCE) название цепей и назначение контактов, естественно, совпадает, но роли сигналов (вход-выход) меняются на противоположные.
Таблица 1 – Разъемы и сигналы интерфейса RS-232C
Источник: http://MirZnanii.com/a/113978/posledovatelnye-interfeysy