Розетка для com порта
COM-порт. Сопряжение устройств с ПК. Программирование
Иногда приходится решать задачу связи электронного устройства с компьютером, будь то просто обмен данными или удалённое управление. Эта статья описывает, как это можно реализовать, используя последовательный порт. Главным его преимуществом является то, что стандартный программный интерфейс Windows (API) позволяет производить непосредственное управление выходными линиями, давая прямой контроль над ними, и имеет функцию ожидания некоторого события, связанного с COM-портом. Также стандарт RS-232, по которому выполнены COM-порты, допускает подключение и отключение кабелей во время работы устройств (hot plug).
Описание
COM-порт (последовательный порт) – двунаправленный интерфейс, передающий данные в последовательном виде (бит за битом) по протоколу RS-232. Это довольно-таки распространённый протокол, применяемый для связи одного устройства (например, компьютера) с другими посредством проводов длиной до 30м. Уровни логических сигналов здесь отличаются от стандартных: уровень логической единицы – от +5 до +15В, уровень логического нуля – от -5 до -15В, что требует дополнительных преобразований схемы, но обеспечивает хорошую помехоустойчивость.
Рассмотрим 9-пинововый разъём (DB-9M). Ниже представлена его распиновка:
№ вывода | Наименование | Характер сигнала | Сигнал |
1 | DCD | Входной | Data carrier detect |
2 | RxD | Выходной | Transmit data |
3 | TxD | Входной | Receive data |
4 | DTR | Выходной | Data terminal ready |
5 | GND | — | Ground |
6 | DSR | Входной | Data set ready |
7 | RTS | Выходной | Request to send |
8 | CTS | Входной | Clear to send |
9 | RI | Входной | Ring indicator |
Больше всего нас будут интересовать пины 2 (передача данных),3 (приём данных) и 5 (земля). Это минимальный набор для возможности двухстороннего общения приборов.
Подробно останавливаться на описании протокола не буду. Для этого есть ГОСТ’ы и т.п. Поэтому мы пойдём дальше и поговорим о том, как же управлять этим зверем.
Применение
Как уже говорилось, уровни ЛС RS-232 отличаются от стандартных уровней ТТЛ. Следовательно, нам необходимо как-то преобразовывать величины напряжений. Т.е. сделать 5В из +15В и 0В из -15В (и наоборот). Один из способов (и, наверное, самый простой) – использование специальной микросхемы MAX232. Она проста в понимании и одновременно может преобразовывать два логических сигнала.
Ниже приведена схема её включения:
Думаю, трудностей быть не должно. Это один из вариантов использования этой микросхемы: передача данных с микроконтроллера на ЭВМ и наоборот. Передаваемый сигнал поступает на ножки TxIN с одной стороны и на RxIN с другой. Входные сигналы снимаются с TxOUT и RxOUT соответственно.
Программирование
Для начала поговорим о программировании портов на низком уровне. Так будет более правильно. Я очень много нервов потратил, разбираясь с этим интерфейсом, пока не начал вникать в принцип его работы на более низком уровне, нежели простая передача символов. Если будет понятно это, значит и с языками высокого уровня проблем не будет.
Ниже представлены адреса COM-портов, с которыми нам придётся работать:
Название порта | Адрес | IRQ |
COM 1 | 3F8h | 4 |
COM 2 | 2F8h | 3 |
COM 3 | 3E8h | 4 |
COM 4 | 2E8h | 3 |
Они могут различаться. Установить значения можно в настройках BIOS’а. Это базовые адреса. От них же и будут зависеть адреса регистров, отвечающие за работу портов:
Адрес | DLAB | Чтение/Запись | Аббревиатура | Название регистра |
+ 0 | =0 | Write | – | Transmitter Holding Buffer |
=0 | Read | – | Receiver Buffer | |
=1 | Read/Write | – | Divisor Latch Low Byte | |
+ 1 | =0 | Read/Write | IER | Interrupt Enable Register |
=1 | Read/Write | – | Divisor Latch High Byte | |
+ 2 | — | Read | IIR | Interrupt Identification Register |
— | Write | FCR | FIFO Control Register | |
+ 3 | — | Read/Write | LCR | Line Control Register |
+ 4 | — | Read/Write | MCR | Modem Control Register |
+ 5 | — | Read | LSR | Line Status Register |
+ 6 | — | Read | MSR | Modem Status Register |
+ 7 | — | Read/Write | – | Scratch Register |
Первая колонка – адрес регистра относительно базового. Например, для COM1: адрес регистра LCR будет 3F8h+3=3FB. Вторая колонка – DLAB (Divisor Latch Access Bit) бит, определяющий разное назначение для одного и того же регистра.. Т.е. он позволяет оперировать 12-ю регистрами, используя всего 8 адресов. Например, если DLAB=1, то, обращаясь по адресу 3F8h, мы будем устанавливать значение младшего байта делителя частоты тактового генератора. Если же DLAB=0, то, обращаясь по тому же адресу, в этот регистр будет записан передаваемый или принятый байт.
“Нулевой” регистр
Ему соответствуют регистры приёма/передачи данных и установки коэффициента делителя частоты генератора. Как уже было сказано выше, если DLAB=0, то регистр используется для записи принимаемых/передаваемых данных, если же он равен 1, то устанавливается значение младшего байта делителя частоты тактового генератора. От значения этой частоты зависит скорость передачи данных. Старший байт делителя записывается в следующую ячейку памяти (т.е. для порта COM1 это будет 3F9h). Ниже приведена зависимость скорости передачи данных от коэффициента делителя:
Делитель | Скорость передачи (в бодах) | Делитель | Скорость передачи (в бодах) |
---|---|---|---|
1040 | 110 | 24 | 4800 |
768 | 150 | 12 | 9600 |
384 | 300 | 6 | 19200 |
192 | 600 | 3 | 38400 |
96 | 1200 | 2 | 57600 |
48 | 2400 | 1 | 115200 |
Interrupt Enable Register (IER)
Если DLAB=0, то он используется как регистр управления прерываниями от асинхронного адаптера, если DLAB=1, то в нём задаётся старший байт делителя частоты тактового генератора.
Бит | Значение |
---|---|
1 – разрешемие прерывания при готовности принимаемых данных. | |
1 | 1 – разрешение прерывания после передачи байта (когда выходной выходной буфер передачи пуст). |
2 | 1 – разрешение прерывания по обнаружении состояния «BREAK» или ошибки. |
3 | 1 – разрешение прерывания по изменению на разъёме RS-232C. |
4-7 | Не используются, должны быть равны 0. |
Interrupt Identification Register (IIR)
Прерывание – это событие, при котором останавливается выполнение основной программы и начинается выполнение процедуры прерываний. Этот регистр определяет тип произошедшего прерывания.
Бит | Значение |
1 – нет прерываний, ожидающих обслуживания. | |
1-2 | 00 – переполнение приёмника, ошибка чётности или формата данных, или при состоянии «BREAK». Сбрасывается после чтения состояния линии и порта 3FDh. |
01 – данные приняты и доступны для чтения. Сбрасывается после после чтения регистра LSR. | |
11 – Состояние модема. Устонавливается при изменении состояния входных линий CTS, RI, DCD, DSR. | |
3-7 | Равны 0. |
Line Control Register (LCR)
Это управляющий регистр.
Бит 7 | 1 | Divisor Latch Access Bit – задание скорости обмена данными | ||
Обычнй режим (управление прерываниями, приём/передача данных) | ||||
Бит 6 | Имитировать обрыв линии (посылает последовательность из нескольких нулей) | |||
Биты 3 – 5 | Бит 5 | Бит 4 | Бит 3 | Выбор чётности |
X | X | No Parity | ||
1 | Odd Parity | |||
1 | 1 | Even Parity | ||
1 | 1 | High Parity (Sticky) | ||
1 | 1 | 1 | Low Parity (Sticky) | |
Бит 2 | Кол-во стоп-битов | |||
1 стоп-бит | ||||
1 | 2 стоп-бита при 6,7 или 8 бит данных или 1.5 стоп-бита при 5 битах данных. | |||
Биты 0 And 1 | Бит 1 | Бит 0 | Число битов данных | |
5 бит | ||||
1 | 6 бит | |||
1 | 7 бит | |||
1 | 1 | 8 бит |
Проверка чётности подразумевает под собой передачу ещё одного бита – бита чётности. Его значение устанавливается таким образом, чтобы в пакете битов общее количество единиц (или нулей) было четно или нечетно, в зависимости от установки регистров порта. Этот бит служит для обнаружения ошибок, которые могут возникнуть при передаче данных из-за помех на линии. Приемное устройство заново вычисляет четность данных и сравнивает результат с принятым битом четности. Если четность не совпала, то считается, что данные переданы с ошибкой.
Стоп-бит означает окончание передачи данных.
Modem Control Register (MCR)
Регистр управления модемом.
Бит | Значение |
---|---|
Линия DTR | |
1 | Линия RTS. |
2 | Линия OUT1 (запасная) |
3 | Линия OUT2 (запасная) |
4 | Запуск диагностики при входе асинхронного адаптера, замкнутом на его выход. |
5-7 | Равны 0 |
Line Status Register (LSR)
Регистр, определяющий состояние линии.
Бит | Значение |
---|---|
Данные получены и готовы для чтения, автоматически сбрасывается при чтении данных. | |
1 | Ошибка переполнения. Был принят новый байт данных, а предыдущий ещё не был считан программой. Предыдущий байт потерен. |
2 | Ошибка чётности, сбрасывается после чтения состояния линии. |
3 | Ошибка синхронизации. |
4 | Обнаружен запрос на прерывание передачи «BREAK» – длинная строка нулей. |
5 | Регистр хранения передатчика пуст, в него можно записать новый байт для передачи. |
6 | Регистр сдвига передатчика пуст. Этот регистр получает данные из регистра хранения и преобразует их в последовательный вид для передачи. |
7 | Тайм-аут (устройство не связано с компьютером). |
Modem Status Register (MSR)
Регистр состояния модема.
Бит | Значение |
---|---|
Изменилось состояние линии CTS | |
1 | Изменилось состояние линии DSR |
2 | Изменилось состояние линии IR |
3 | Изменилось состояние линии DCD |
4 | Состояние линии CTS |
5 | Состояние линии DSR |
6 | Состояние линии IR |
7 | Состояние линии DCD |
Ну вот и всё. Оперируя этими регистрами, можно напрямую общаться с COM-портом, управлять передачей и приёмом данных. Если вам не хочется возиться с памятью, можно воспользоваться уже готовыми компонентами для различных сред программирования: C++, VB, Delphi, Pascal и т.д. Они интуитивно понятны, поэтому, думаю, здесь не стоит заострять на них внимание.
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.
Максимальная скорость передачи (в обычном исполнении) достигает 115 200 бод.
Аппаратура
Разъем обладает следующими контактами:
- 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, она оснащена аппаратной очередью байтов. Она существенно снижает число возникающих прерываний.
Распиновки различных кабелей RS-232
ВНИМАНИЕ! Данная информация собрана из различных источников. Мы не в состоянии проверить работу всех схем и устройств приведенных ниже и не несем ответственности за вред который может быть нанесен аппаратуре в результате использования этих материалов. Однако, мы прилагаем максимум усилий, для того чтобы обеспечить достоверность представленной информации
Итак, здесь мы приводим стандартные и не очень распиновки кабелей.
Условные обозначения:
F — «мама»;
M — «папа»;
«-» — соединение;
«х» — нет соединения.
«+» — линии объединяются.
________________________________
DTE 9 F DCE 9 M
Применяется для соединения таких устройств как компьютер и модем.
Соединение прямое:
1 — 1
2 — 2
3 — 3
.
.
9 — 9
ПРИМЕЧАНИЕ: Экраны соединяются.
________________________________
DTE 9 F DTE 9 F (Null-modem 9)
Применяется для соединения таких устройств как компьютер и компьютер.
Соединение:
1+7- 8
2 — 3
3 — 2
4 — 6
5 — 5
6 — 4
7+1 — 8
8 — 1+7
ПРИМЕЧАНИЕ: 1 и 7 контакты на разъемах соединены между собой.
9 не используется. Экраны соединяются.
DTE 25 F DCE 9 M
Применяется для соединения таких устройств как компьютер (25-пиновый разъем) и 9-пиновая мышь (или модем).
Соединение:
2 — 3
3 — 2
4 — 7
5 — 8
6 — 6
7 — 5
8 — 1
20 — 4
22 — 9
ПРИМЕЧАНИЕ: Остальные не используются. Экраны соединяются.
________________________________
DTE 9 F DCE 25 M
Применяется для соединения таких устройств как компьютер (9-пиновый разъем) и 25-пиновая мышь (или модем).
Соединение:
1 — 8
2 — 3
3 — 2
4 — 20
5 — 7
6 — 6
7 — 4
8 — 5
9 — 22
ПРИМЕЧАНИЕ: Остальные не используются. Экраны соединяются.
________________________________
DTE 25 F DCE 25 M
Применяется для соединения таких устройств как компьютер (25-пиновый разъем) и 25-пиновая мышь (или модем).
Соединение прямое:
1 — 1
2 — 2
3 — 3
4 — 4
.
.
24 — 24
25 — 25
ПРИМЕЧАНИЕ: Экраны соединяются.
________________________________
DTE 25 F DTE 25 F (Null-modem Универсальный 25)
Применяется для соединения таких устройств как компьютер (25-пиновый разъем) и компьютер (25-пиновый разъем).
Соединение:
1 — 1
2 — 3
3 — 2
4 — 5
5 — 4
6+8 — 20
7 — 7
20 — 6+8
ПРИМЕЧАНИЕ: Остальные не используются. Экраны соединяются.
________________________________
Заглушка на COM-порт 9 pin F
Применяется для тестирования коммуникационных приложений.
ПРИМЕЧАНИЕ: Остальные не используются.
________________________________
Заглушка на COM-порт 25 pin F
Применяется для тестирования коммуникационных приложений.
Соединение:
2+3
4+5
6+8+20
ПРИМЕЧАНИЕ: Остальные не используются.
Последовательный порт компьютера
Наряду с параллельным портом COM-порт, или последовательный порт является одним из традиционных портов ввода-вывода компьютера, использовавшимся еще в первых ПК. Хотя в современных компьютерах COM-порт имеет ограниченное применение, тем не менее, информация о нем, возможно, будет полезной многим пользователям.
Назначение последовательного порта – история и современное использование
Последовательный порт, как и параллельный, появился задолго до появления персональных компьютеров архитектуры IBM PC. В первых персоналках COM-порт использовался для подсоединения периферийных устройств. Однако сфера его применения несколько отличалась от сферы применения параллельного порта. Если параллельный порт использовался в основном для подключения принтеров, то COM-порт (кстати, приставка COM – это всего лишь сокращение от слова communication) обычно применялся для работы с телекоммуникационными устройствами, такими, как модемы. Тем не менее, к порту можно подключить, например, мышь, а также другие периферийные устройства.
COM-порт, основные сферы применения:
принтеров и плоттеров
мыши
В настоящее время сфера применения СОМ-порта значительно сократилась благодаря внедрению более быстрого и компактного, и, кстати, тоже последовательного, интерфейса USB. Почти вышли из употребления внешние модемы, рассчитанные на подключение к порту, а также «COM-овские» мыши. Да и редко кто теперь соединяет два компьютера при помощи нуль-модемного кабеля.
Тем не менее, в ряде специализированных устройств последовательный порт до сих используется. Можно найти его и на многих материнских платах. Дело в том, что по сравнению с USB COM-порт имеет одно важное преимущество – согласно стандарту последовательной передачи данных RS-232, он может работать с устройствами на расстоянии в несколько десятков метров, в то время как радиус действия кабеля USB, как правило, ограничен 5 метрами.
Принцип работы последовательного порта и его отличие от параллельного
В отличие от параллельного (LPT) порта, последовательный порт передает данные побитно по одной-единственной линии, а не по нескольким одновременно. Последовательности битов группируются в серии данных, начинающиеся стартовым битом и кончающиеся стоповым битом, а также битами контроля четности, использующимися для контроля ошибок. Отсюда происходит и еще одно английское название, которое имеет последовательный порт – Serial Port.
Последовательный порт имеет две линии, по которым передаются собственно данные – это линии для передачи данных от терминала (ПК) к коммуникационному устройству и обратно. Кроме того, существует еще несколько управляющих линий. Обслуживает Serial port специальная микросхема UART, которая способна поддерживать относительно высокую скорость передачи данных, достигающую 115 000 бод (байт/с). Правда, стоит отметить, что реальная скорость обмена информацией зависит от обоих коммуникационных устройств. Кроме того, в функции контроллера UART входит преобразование параллельного кода в последовательный и обратно.
Порт использует электрические сигналы сравнительного высокого напряжения – до +15 B и -15 В. Уровень логического нуля последовательного порта составляет +12 В, а логической единицы – -12 В. Такой большой перепад напряжений позволяет гарантировать высокую степень помехоустойчивости передаваемых данных. С другой стороны, используемые в Serial port высокие напряжения требуют сложных схемотехнических решений. Это обстоятельство также поспособствовало снижению популярности порта.
Последовательный интерфейс RS-232
Работа Serial port на ПК базируется на стандарте передачи данных для последовательных устройств RS-232. Этот стандарт описывает процесс обмена данными между телекоммуникационным устройством, например, модемом и компьютерным терминалом. Стандарт RS-232 определяет электрические характеристики сигналов, их назначение, длительность, а также размеры коннекторов и схему выводов для них. При этом RS-232 описывает лишь физический уровень процесса передачи данных и не касается используемых при этом транспортных протоколов, которые могут меняться в зависимости от используемого коммуникационного оборудования и программного обеспечения.
Стандарт RS-232 был создан в 1969 г, а его последняя версия, TIA 232, вышла в 1997 г. В настоящее время RS-232 считается устаревшим, однако большинство операционных систем до сих пор его поддерживает.
В современных компьютерах разъем Serial port представляет собой 9-штырьковый разъем типа «вилка» DB-9, хотя стандарт RS-232 описывает также разъем с 25–ю контактами – DB-25, который часто применялся на старых компьютерах. Разъем DB-9 обычно расположен на системной плате ПК, хотя в старых компьютерах он мог находиться на специальной мультикарте, вставляемой в слот расширения.
9- штырьковое гнездо DB-9 на материнской плате
Разъем DB-9 на кабеле подключаемого к порту устройства
В отличие от параллельного порта, разъемы с обеих сторон двустороннего последовательного кабеля идентичны. Помимо линий для передачи самих данных, порт содержит несколько служебных линий, по которым между терминалом (компьютером) и телекоммуникационным устройством (модемом) может передаваться управляющая информация. Хотя теоретически для работы последовательного порта достаточно лишь трех каналов – прием данных, передача данных и земля, практика показала, что наличие служебных линий делает связь более эффективной, надежной и, как следствие, более быстрой.
Назначение линий разъема Serial port DB-9 согласно RS-232 и их соответствие контактам разъема DB-25:
Контакт DB-9 | Английское название | Русское название | Контакт DB-25 |
1 | Data Carrier Detect | Несущая обнаружена | 8 |
2 | Transmit Data | Передаваемые данные | 2 |
3 | Receive Data | Принимаемые данные | 3 |
4 | Data Terminal Ready | Готовность терминала | 20 |
5 | Ground | Земля | 7 |
6 | Data Set Ready | Готовность передающего устройства | 6 |
7 | Request To Send | Запрос на отправку данных | 4 |
8 | Clear To Send | Передача данных разрешена | 5 |
9 | Ring Indicator | Индикатор звонка | 22 |
Конфигурирование и прерывания
Поскольку в компьютере может быть несколько последовательных портов (до 4), то в системе для них выделяется два аппаратных прерывания — IRQ 3 (COM 2 и 4) и IRQ 4 (COM 1 и 3) и несколько прерываний BIOS. Многие коммуникационные программы, а также встроенные модемы используют для своей работы прерывания и адресное пространство портов COM. При этом обычно применяются не реальные порты, а так называемые виртуальные порты, которые эмулируются самой операционной системой.
Как и в случае многих других компонентов материнской платы, параметры работы портов COM, в частности, значения прерываний BIOS, соответствующих аппаратным прерываниям, можно настроить через интерфейс BIOS Setup. Для этого используются такие опции BIOS, как COM Port, Serial Port, Onboard Serial Port, Serial Port Address, и т.п.
Заключение
Последовательный порт ПК в настоящее время не является широко используемым средством для ввода-вывода информации. Тем не менее, поскольку существует большое количество оборудования, прежде всего, телекоммуникационного назначения, созданного для работы с последовательным портом, а также благодаря некоторым достоинствам протокола последовательной передачи данных RS-232, последовательный интерфейс пока еще не следует списывать со счетов, как абсолютно устаревший рудимент архитектуры персонального компьютера.