Скорости com порта какие бывают
Перейти к содержимому

Скорости com порта какие бывают

  • автор:

Программирование COM портов.

Этот порт соответствует регистру передавемых данных. Для передачи в порт 3F8h необходимо записать байт передаваемых данных. После приема данных от внешнего устройства они могут быть прочитаны из этого порта. В зависимости от состояния бита управляющего слова, выводимого в управ- ляющий регистр с адресом 3F8h, назначение порта 3F8h изменяться. Если этот бит равен 0,порт используется для записи передаваемых данных.Если же этот бит равен 1, порт используется для вывода значения младшего байта делителя частоты тактового генератора. Изменяя содержимое делите- ля, можно изменять скорость передачи данных. Старший байт делителя записывается в порт 3F9h. Зависимост скорости передачи данных от значе- ния делителя частоты приведины в таблице 1:

Делитель Скорость передчи в бодах. Делитель Скорость передчи в бодах.
1040 110 24 4800
768 150 12 9600
384 300 6 19200
192 600 3 38400
96 1200 2 57600
48 2400 1 115200

Порт 3F9h.

Порт используется как регистр управления прерываниями от асинхронного адаптера или (после вывода в порт 3F9h байта с установленым в 1 стар- шим битом) для вывода значения старшего байта делителя частоты такто- вого генератора. В режиме регистра управления прерываниями порт имеет следующий формат.

Бит Значение
0 1 — разрешемие прерывания при готовности принимаемых данных.
1 1 — разрешение прерывания после передачи байта (когда выхо — дной выходной буфер передачи пуст.)
2 1 — разрешение прерывания по обнаружении состояния «BREAK» или ошибки.
3 1 — разрешение прерывания по изменению на разъёме RS-232-C.
4-7 Не используются, должны быть равны 0.

Порт 3FAh.

Регистр идентификации прерывания. По его содержимому программа может определить причину прерывания. Формат регистра приведён в таблице 3.

  • 01 — данные приняты и доступны для чтения. Сбрасывается после после чтения данных из порта 3F8h.
  • 11 — Состояние модема. Устонавливается при изменении состояния входных линий CTS, RI, DCD, DSR.

Порт 3FBh.

Управляющий регистр, доступен по записи и чтению. Его формат показан в таблице 4.

  • 01 — 6 бит.
  • 10 — 7 бит.
  • 11 — 8 бит.
  • 10 — контроль на чётность неиспользуется;
  • 01 — контроль на нечётность.
  • 11 — контроль на чётность.

Порт 3FCh.

Регитр управления модемом. Упровляет состоянием выходных линий DTR, RTS, линий, специфических для модемов OUT1 и OUT2, для запуска диагно- стики при входе асинхронного адаптера, замкнутым на его выход. Формат порта приведён в таблице 5.

Бит Значение
0 Линия DTR
1 Линия RTS.
2 Линия OUT1 (запасная)
3 Линия OUT2 (запасная)
4 Запуск диагностики при входе асинхронного|
адаптера, замкнутом на его выход.
5-7 Должно быть равно 0

Порт 3FDh.
Регистр состоянии линии. Значение зарядов регистра приведены в
таблице 6.

Бит Значение
0 Данные получены и готовы для чтения, сбрасываетсь при чтении данных.
1 Ошибка переполнения. Был принят новый байт данных, а предыдущий ещё не был считан программой. Предыдущий байт потерен.
2 Ошибка чётности, сбрасывается после чтения состояния линии.
3 Ошибка синхронизации.
4 Обнаружен запрос на прерывание передачи «BREAK» — длинная строка нулей.
5 Регистр хранения передатчика пуст, в него можно записать новый байт для передачи.
6 Регистр сдвига передатчика пуст. Этот регистр получает данные из регистра хранения и преобразует их в последовательный вид для передачи.
7 Тайм-аут (устройство не связано с компьютером)

Порт 3FEh.

Регистр состояния модема. Значения битов указвны в таблице 7.

Бит Значение
0 Линия CTS изменила состояние.
1 Линия DSR изменила состояние.
2 Линия IR изменила состояние.
3 Линия DCD изменила состояние.
4 Состояние линии CTS
5 Состояние линии DSR
6 Состояние линии IR.
7 Состояние линии DCD.

Приём и передача данных.

Перед записью байта данных в регистр передатчика нужно убедиться, что регистр хранения передатчика свободен, то есть убедиться в том, что передача предыдущего символа завершена. Признаком свободы регистра передатчика является установленный в 1 бит 5 регистра состояния линии с адресом 3FDh.

Аналогично передачи данных перед вводом символа из порта приёмника 3F8h следует убедиться, что бит 0 порта 3FDh установлен в 1, то есть что символ принят из линии и находиться в вуферном регистре приёмника.

COMандирский порт

Com-port ( communication port ) — самый старый из последовательных портов ПК ( рис. 1 ). «Последовательный» означает то, что данные в таком интерфейсе передаются по одному проводнику. Последовательные интерфейсы можно разделить на две основные разновидности — синхронные и асинхронные . Передача информации на физическом уровне — это изменение электрических сигналов. И когда мы передаем последовательность единичных или нулевых битов, физически этот процесс представляется в виде электрического импульса ( рис. 2 ). Причем, в зависимости от скорости передачи, в импульсах одинаковой длительности может быть разное количество единичек. Так вот, для получения информации из таких импульсов используют синхронизацию. Выходит, что параллельно с информационным потоком генерируется последовательность импульсов, которые указывают, в какой момент времени необходимо снимать информацию. Эти импульсы и определяют скорость обмена, ведь если за единицу времени подать больше синхроимпульсов, значит, больше информационных данных выделится из потока.

Рис. 1. Com-port (communication port)

Если эти синхроимпульсы передаются от одного устройства другому, то такая передача называется синхронной. Асинхронной же считается такая передача, когда с фиксированной скоростью пересылается только информация, а приемник и передатчик синхронизируют процесс обмена данными самостоятельно. Наш СОМ-порт является асинхронным. Хочется также заметить, что разница между импульсами, по которым синхронизируется передача, и импульсами, синхронизирующими прием, не должна превышать 5% от их частоты. Так что едва ли не основной проблемой для асинхронных интерфейсов является одновременность запуска синхронизирующих генераторов. Для СОМ-порта стандартными являются следующие скорости: 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 бит/с. Максимальная длина кабеля-соединителя — 15 метров. Есть специальные кабели, которые позволяют увеличить длину соединения до 150 метров. А если использовать устройства, называемые «репитерами» , то расстояние можно еще дополнительно увеличить. Вы спросите, зачем модему кабель в 150 метров? Вполне закономерный вопрос, однако такие расстояния используются в тех случаях, когда к ПК необходимо подключить какое-то специализированное технологическое устройство. Как, например, счетчик электрической энергии находится где-то в распределительном щите, а компьютер — в бухгалтерии.

Компьютерный СОМ-порт работает по стандарту RS-232C , который определяет электрические уровни сигналов и протокол обмена. Порт содержит две линии для обмена информацией (прием и передача), и 9 линий для управления обменом. Если для управления обменом задействовать эти линии, то обмен будет называться «аппаратным» (протокол RTS/CTS ). Однако обмен информацией можно организовать, используя только линии приема и передачи, тогда он будет называться «программным» (протокол XON/XOFF ). В таком режиме посылается символ, сигнализирующий о начале передачи, называется он XON, окончание передачи сигнализируется символом XOFF.

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

Аппаратной основой СОМ-порта является микросхема UART ( Universal Asynchronous Receiver/Transmitter — универсальный асинхронный приемопередатчик), которая с момента своего появления прошла длительный процесс эволюции ( таблица 1 ).

Если вы загляните в окно настройки последовательного порта, то заметите, что список скоростей явно не ограничивается 115.2 Кбит/с. Это связано с тем, что кроме стандартных, можно использовать еще и так называемые высокоскоростные СОМ-порты — Enhanced Serial Ports ( ESP ) и Super High Speed Serial Ports . Это варианты, базирующиеся на микросхемах 16550AF , 16650 , 16750 . Они обеспечивают обмен на скорости до 921.6 Кбит/с. В принципе, все высокоскоростные модемы xDSL содержат в своем составе такую микросхему, которая обеспечивает связь на 230–460 Кбит/с.

Теперь от теоретической части перейду к практической, и опираясь на вышеизложенные теоритические предпосылки, я расскажу о настройках СОМ-порта. Открыв окно свойств порта и выбрав вкладку Настройка , увидим множество опций ( рис. 3 ).

Рис. 3.

Ну, со скоростью , думаю, все понятно — в этом пункте выбираем скорость обмена между устройством и ПК. В принципе можно выбрать ту скорость, которая вам больше нравится, хотя я полагаю, если у вас модем на 56К, скорость работы порта устанавливать в 19200 бит/с вы не будете :-).

Биты данных — сколько бит передавать за один раз (между старт-битом и стоп-битом).

Четность — выбор способа контроля четности. Кто не знает, контроль четности — способ проверки принятого числа на ошибочность. При передаче к числу добавляется еще один бит, дополняющий количество единиц в числе до четного или нечетного (это уже как выбрано в режиме передачи). Этот бит становится младшим разрядом передаваемого числа и принимает значение 1, если у нас нечетное число единиц, и 0, если четное. При проверке на четность, в случае если мы приняли нечетное число единиц (при проверке на нечетность — наоборот), порт передает устройству информацию об ошибке и просит повторить передачу.

Стоповые биты — количество стоп-бит, необходимых для правильного распознавания конца байта.

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

И наконец, в пункте Дополнительно можно выбрать объем буферов FIFO либо отключить их вообще (что не рекомендуется).

Рассказав про эти настройки, дам вам один совет. Если у вас все нормально работает, не меняйте настройки, стоящие по умолчанию! Менять их необходимо тогда, когда этого требует устройство (о чем, наверняка, будет подробно сказано в инструкции к нему).

Теперь о «железном» конфигурировании СОМ-портов. Данные сведения могут очень пригодиться тем, кто купил внутренний WIN-модем. Как известно, при конфигурировании устройства необходимо указать ресурсы, которые ему необходимы (адрес ввода-вывода, номер прерывания, канал DMA). Система Plug&Play должна самостоятельно выделить эти ресурсы, когда вы установили устройство в систему. Но ничто не идеально, так что если вы установили одно устройство, а оно не работает, к тому же, перестало работать и другое, знайте — ошиблась технология Plug&Play. И вам необходимо указывать ресурсы самостоятельно.

Итак, для коммуникационных портов стандартны перечисленные ниже ресурсы. Диапазон ввода-вывода — 3F8-3FFh для COM1, 2F8-2FFh — для COM2, 3E8-3Efh — для COM3, 2E8-2Efh — для COM4. С прерываниями немного сложнее — для СОМ1 (3) используется IRQ4, для СОМ2 (4) — IRQ3. Теперь, приведя эти цифры, расскажу о подводных камнях, подстерегающих покупателей WIN-модемов. Последние работают через СОМ3 или СОМ4, и при установке часто могут нахомутать с ресурсами, ведь Plug&Play видит их как PCI карту, а не порт. Так что если что-то не работает, разберитесь с использованием ресурсов.

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

Народные умельцы, например, додумались, как с помощью лазерной указки и фотодатчика соорудить «оптический» нуль-модемный кабель. По принципу работы это упрощенный вариант из трех проводов, только с большим количеством начинки. Кто заинтересовался, пишите мне.

Если вы — ярый программист-железячник и захотели самостоятельно написать программу для работы с СОМ-портом, то для получения необходимой справочной информации о программировании этого чуда техники я советую зайти на http://www.codenet.ru/progr/other/comport.php. Там есть все, связанное с конфигурированием порта на уровне регистров.

Теперь немного расскажу вам о тестировании порта. Для его проверки используют специальные разъемы-заглушки, с которыми умеет работать диагностическое программное обеспечение. Принцип проверки состоит в том, что сигналы с выходных линий подаются на линии, предназначенные для приема. По большому счету, такой разъем можно изготовить самостоятельно. Приведу распайку для тестирования с помощью программы Norton Diagnostics :

для 9-контактного разъема:

для 25-контактного разъема:

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

2.2. Характеристики портов контроллера

Разъем порта электрически объединен с разъемом COM4. Одновременное использование разъемов GPS и СОМ4 допускается на скорости обмена для СОМ4 9600 бод.

Объединенный порт «МТС-МТУ»
Тип разъема — IDC-10F;
Скорость обмена по шине «МТС» — 500 кбод, по шине «МТУ» — 9600 бод;

Разъем порта электрически объединен с разъемом CAN-BUS. При использовании шины МТС в УСПИ нельзя подключать на CAN-шину модули ТС-430 и ТУ-430 с прошивкой, версии ниже 5.0.

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, она оснащена аппаратной очередью байтов. Она существенно снижает число возникающих прерываний.

ООО «Альтербит», 197183, Санкт-Петербург, Комендантский проспект, 2 схема проезда
Телефон: (812) 309-2602 ← Звони если хочешь купить сервер, схд, компьютер

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *