Распиновка COM порта

Русские Блоги

Во-первых, последовательный порт, порт UART, COM-порт и порт USB относятся к форме физического интерфейса (аппаратному обеспечению). А TTL, RS-232, RS-485 относятся к стандарту уровня (электрический сигнал).

Серийный порт
Последовательный порт — это общий термин. Все UART, TTL, RS232 и RS485 используют одинаковые протоколы синхронизации, поэтому все они называются последовательными портами.

Интерфейс UART
Универсальный асинхронный приемник / передатчик, UART — это логическая схема для передачи и приема через последовательный порт, эта часть может быть независимой в микросхеме или как модуль, встроенный в другие микросхемы, однокристальный микрокомпьютер, SOC , ПК будет иметь модуль UART.

COM порт
конкретно относится к форме D-SUB (структура разъема, разъем интерфейса VGA также является D-SUB) последовательным портом связи на настольных компьютерах или некоторых электронных устройствах, использующих последовательные порты. Время связи и логический уровень RS232.

Порт USB
Универсальная последовательная шина и последовательный порт — это два понятия. Хотя это также последовательная связь, синхронизация связи и уровень сигнала USB полностью отличаются от последовательного порта, поэтому он не имеет ничего общего с последовательным портом. USB — это высокоскоростной интерфейс связи, используемый для ПК для подключения различных периферийных устройств, U-диска, клавиатуры и мыши, мобильного жесткого диска, конечно, также включает модуль «USB для последовательного порта». (Модуль USB для последовательного порта — это модуль UART интерфейса USB

TTL, RS232, RS485 — все логические уровни

TTL: TTL относится к логической схеме биполярного транзистора Многие модули «USB to TTL» на рынке фактически являются модулями «USB to TTL level serial port». Этот сигнал 0 соответствует 0 В, а 1 соответствует 3,3 В или 5 В. Совместимость с уровнем ввода-вывода однокристального микрокомпьютера и SOC. Однако фактический уровень не обязательно является TTL, потому что большая часть цифровой логики теперь сделана по технологии CMOS, но используется термин TTL. Когда мы поддерживаем последовательную связь, то, что выходит непосредственно из микроконтроллера, в основном является уровнем TTL.

Уровень TTL: Полный дуплекс (логическая 1: 2,4–5 В, логический 0: 0–0,5 В)

1. Блок-схема оборудования выглядит следующим образом: TTL используется для связи между двумя MCU.

2. «0» и «1» означают

RS232
— это интерфейс стандарта асинхронной передачи, разработанный Ассоциацией электронной промышленности (EIA), который соответствует стандарту уровня и протоколу связи (последовательности). Стандарт уровня: + 3V ~ + 15 В соответствует 0, -3 В ~ -15 В соответствует 1. Логический уровень RS232 отличается от TTL, но протокол тот же.

Уровень RS-232:
Полный дуплекс (логика 1: –15–5 В, логический 0: +3– +15 В)

1. Блок-схема оборудования выглядит следующим образом: TTL используется для связи между MCU и ПК.

2. «0» и «1» означают

RS485
RS485 — это стандарт последовательного интерфейса. Он использует дифференциальную передачу для передачи на большие расстояния. Он передает дифференциальные сигналы, и его способность к помехам намного сильнее, чем у RS232. Разница давлений между двумя линиями — (26) V означает 0, разница напряжений между двумя линиями равна + (26) V означает 1

RS-485
полудуплекс (логика 1: + 2– + 6 В, логический 0: –6–2 В), где уровень относится к разнице напряжений между двумя проводами AB.

1. Блок-схема оборудования выглядит следующим образом.

2. «0» и «1» означают

Характерные особенности порта

Распиновка COM порта-3

Что касается самой контактной колодки интерфейса RS-232 и ее кабельной составляющей, то они собраны на 9-пиновом разъеме D-Sub. Штыревые контакты размещенные в двухрядном варианте, для обеспечения точности подсоединения вилки к разъему, форма колодки имеет несимметричную конструкцию. Все контактные штырьки обозначены номерами, подробнее как делается распиновка COM порта обозначено в приведенной ниже таблице.

Таблица

Номер контакта Назначение Обозначение
1 Активная несущая DCD
2 Прием компьютером RXD
3 Передача компьютером TXD
4 Готовность к обмену со стороны приемника DTR
5 Земля GND
6 Готовность к обмену со стороны источника DSR
7 Запрос на передачу RTS
8 Готовность к передаче CTS
9 Сигнал вызова RI

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

Распиновки кабелей RS-232

Рассмотрим стандартные и не очень распиновки кабелей.

Применяется для соединения таких устройств как компьютер и модем.

DTE 9 F DTE 9 F (Null-modem 9)

Применяется для соединения таких устройств как компьютер и компьютер.

DTE 25 F DCE 9 M

Применяется для соединения таких устройств как компьютер (25-пиновый разъем) и 9-пиновая мышь (или модем).

DTE 9 F DCE 25 M

Применяется для соединения таких устройств как компьютер (9-пиновый разъем) и 25-пиновая мышь (или модем).

DTE 25 F DCE 25 M

Применяется для соединения таких устройств как компьютер (25-пиновый разъем) и 25-пиновая мышь (или модем).

DTE 25 F DTE 25 F (Null-modem Универсальный 25)

Применяется для соединения таких устройств как компьютер (25-пиновый разъем) и компьютер (25-пиновый разъем).

Заглушка на COM-порт 9 pin F

Применяется для тестирования коммуникационных приложений.

Заглушка на COM-порт 25 pin F

Применяется для тестирования коммуникационных приложений.

Описание интерфейса RS-422

Интерфейс RS-422 похож на RS-232, т.к. позволяет одновременно отправлять и принимать сообщения по отдельным линиям (полный дуплекс), но использует для этого дифференциальный сигнал, т.е. разницу потенциалов между проводниками А и В.

Скорость передачи данных в RS-422 зависит от расстояния и может меняться в пределах от 10 кбит/с (1200 метров) до 10 Мбит/с (10 метров).

В сети RS-422 может быть только одно передающее устройство и до 10 принимающих устройств.

Линия RS-422 представляет собой 4 провода для приема-передачи данных (2 скрученных провода для передачи и 2 скрученных провода для приема) и один общий провод земли GND.

Скручивание проводов (витая пара) между собой позволяет избавиться от наводок и помех, потому что наводка одинаково действует на оба провода, а информация извлекается из разности потенциалов между проводниками А и В одной линии.

Напряжение на линиях передачи данных может находится в диапазоне от -6 В до +6 В.

Логическому 0 соответствует разница между А и В больше +0,2 В.

Логической 1 соответствует разница между А и В меньше -0,2 В.

Стандарт RS-422 не определяет конкретный тип разъема, обычно это может быть клеммная колодка или разъем DB9.

Распиновка RS-422 зависит от производителя устройства и указывается в документации на него.

При подключении устройства RS-422 нужно сделать перекрестие между RX и TX контактами, как показано на рисунке.

Т.к. расстояние между приемником и передатчиком RS-422 может достигать 1200 метров, то для предотвращения отражения сигнала от конца линии ставится специальный 120 Ом согласующий резистор или «терминатор». Этот резистор устанавливается между RX+ и RX- контактами в начале и в конце линии.

Конфигурирование и прерывания

Поскольку в компьютере может быть несколько последовательных портов (до 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, и т.п.

Контакты разъемов

Соединения коннектора RJ-45 не стандартизовано. Данный вариант один из возможных.

Нуль модемные кабели RS-232

3-проводный минимальный

Совместимость

Рассмотрим сначала DSR сигнал (конт.6). Этот вход сигнала готовности от аппаратуры передачи данных. В схеме соединений вход замкнут на выход DTR (конт.4). Это означает, что программа не видит сигнала готовности другого устройства, хотя он есть. Аналогично устанавливается сигнал на входе CD (конт.1). Тогда при проверке сигнала DSR для контроля возможности соединения будет установлен выходной сигнал DTR.

Это соответствует 99% коммуникационного программного обеспечения. Под этим подразумевается, что 99% программного обеспечения с этим нуль-модемным кабелем примут проверку сигнала DSR.

Аналогичный трюк применяется для входного сигнала CTS. В оригинале сигнал RTS (конт.7) установливается и затем проверяется CTS (конт.8). Соединение этих контактов приводит к невозможности зависания программ по причине неответа на запрос RTS.

7-проводный полный

Совместимость

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

Этот кабель не разрешает использовать предыдущий метод контроля предачи данных. Основная несовместимость перекрестное соединение сигналов RTS и CTS. Первоначально эти сигналы использовались для контроля потоком данных по типу запрос/ответ. При использовании полного нуль-модемного кабеля более нет запросов. Эти сигналы применяются для сообщения другой стороне есть ли возможность соединения.

Особенность

Контакты 2 и 3 на 9-ти выводном разъеме D типа противоположны этим же контактам на 25-ти контатном разъеме. Поэтому, если соединить контакты 2-2 и 3-3 между разъемами D25 и D9, получится коммуникационный кабель. Контакты сигнальной земли Signal Ground (SG) также должны быть подключены между собой. См. таблицу ниже.

5-проводный с управлением потоком

Описание

Можно найти или изготовить много типов кабелей для связи по интерфейсу RS-232. В этом нуль- модемном кабеле используется только 5 проводов: сигналы данных TXD, RXD, сигнал GND и управляющие сигналы RTS CTS для управления потоком.

Обозначение кабелей

Все DTE-DCE кабели прямого соединения, контакты соединяются один к одному. Кабели DTE-DTE и DCE-DCE кросс-кабели.

  1. DTE — DCE называется ‘прямой кабель’
  2. DTE — DTE называегся ‘нуль-модемный кабель’
  3. DCE — DCE называется ‘Tail Circuit Cable’

Описание полного нуль-модемного кабеля

Соединение D9- D9

Соединение D25-D25

Соединение D9-D25

Заглушка тестирования RS-232

Заглушка для эмуляции терминала

Данный соединитель RS-232 может быть использован для проверки последовательного порта кмпьютера. Сигналы данных и управления соединены. В этом случае передаваемые данные сразу возвращаются. Компьютер проверяет собственный поток. Это может быть использовано для проверки функционирования порта RS-232 со стандартным терминальным программным обеспечением.

Кабель контроля (мониторинга) RS-232

Полудуплексная работа

Контроль связи по RS-232 между двумя устройствами с помощью компьютера возможен при помощи кабеля, изображенного на рисунке выше. Два разъема подключаются к устройствам, а третий подключается к наблюдающему компьютеру. Этот кабель принимает информацию от двух источников только на один приемный порт RS-232. Поэтому, если оба устройства начнут одновременную работу, контролируемая информация на входе компьютера будет нарушена. В большинстве случаев связь осуществляется в полудуплексном режиме. Для этих режимов этот кабель будет работать без проблем.

Нуль-модемный кабель [ править | править код ]

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

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

Введение

В чем же причина такой поразительной «живучести» этого интерфейса? Если попытаться ответить на этот вопрос в самом общем виде, то эту причину, по-видимому, следует искать в относительно высокой сбалансированности и универсальности интерфейса RS-232. Другими словами, в этом интерфейсе сочетаются средняя скорость обмена, среднее расстояние линии связи, средняя простота программирования, средняя надежность обмена информации и т. п. При этом, подчас, та или иная «средняя» характеристика интерфейса RS-232 иногда на порядок (а то и на два) превосходит соответствующую характеристику другого интерфейса.

Если, например, сравнить интерфейс RS-232 с интерфейсом USB, то получим следующие отличия.

  • значительно проигрывает USB в скорости и надежности обмена. В связи с этим многие периферийные устройства, подключаемые к компьютеру (принтеры, сканеры, мобильные телефоны, цифровые фотокамеры и т. п.), оборудуют именно интерфейсом USB;
  • выигрывает по длине линии связи (15–20 м против 3 м);
  • значительно выигрывает по простоте программирования (простота программирования RS-232 общеизвестна, а протокол обмена данными по USB сложен, и реализовать его до недавнего времени было не под силу не только радиолюбителям, но и многим специалистам). Почему до недавнего времени? Потому что, хотя и публикуются статьи о программировании USB (см. например, цикл статей в журнале «Современная электроника» за 2005/2006 год), одного взгляда на отрывок такой статьи достаточно (по мнению автора), чтобы отказаться самостоятельно запрограммировать интерфейс USB. В настоящее время двумя фирмами начат выпуск микросхем преобразователей USB–RS-232, в которых основные средства программирования USB переведены на аппаратный уровень и на драйверы, которые организуют «виртуальный« интерфейс RS-232 (повторюсь, как его программировать — всем известно). Если выпуск микросхем CP2101/02/03 компании Silicon Laboratories так и не оставил «глубокого следа» в сердцах разработчиков (поскольку сами микросхемы далеки от совершенства, выпущены в неудобных для ручной пайки корпусах; кроме того, требуются соответствующие драйверы и их установка на компьютер), то микросхемы FT8U100AX, FT8U232AM и FT8U245AM от FTDI (Future Technology Devices International) многим разработчикам очень понравились, поскольку они проще в применении (хотя и имеют неудобные корпуса).

Что касается других интерфейсов, то при сравнении с ними интерфейса RS-232 можно еще раз убедиться в его сбалансированности.

  • проигрывает интерфейсам CAN и RS-485 по скорости и дальности линии связи, но выигрывает по простоте программирования;
  • проигрывает интерфейсу I 2 C по скорости, но выигрывает по дальности линии связи и простоте программирования;
  • проигрывает интерфейсу SPI по скорости и простоте программирования (интерфейс SPI действительно примитивно прост), но выигрывает по дальности линии связи.

Помимо всего прочего, интерфейс RS-232 является на настоящий момент едва ли не единственным средством связи между компьютером и микроконтроллером (если, конечно, не принимать во внимание выпущенные в последнее время микроконтроллеры с интерфейсом USB). Учитывая это, такие ведущие фирмы-производители микроконтроллеров, как Analog devices, Texas Instruments, Atmel, Philips и др. стали выпускать микроконтроллеры, которые обладают свойством «программирования-в-системе» (In-System-Programming — ISP) по интерфейсу RS-232. Дело в том, что скорость программирования микроконтроллеров достаточно низкая (намного ниже, чем максимальная скорость обмена RS-232 — 115 200 бод). Эта скорость определяется относительно медленной записью данных в память программ (EEPROM). Если сравнивать интерфейс RS-232 по этому параметру (как средство коммуникации компьютера с микроконтроллером и его программирования в системе), то налицо явное преимущество RS-232 перед вышеупомянутыми интерфейсами.

И, наконец, последнее, что хотелось бы отметить относительно интерфейса RS-232.

В настоящее время этот интерфейс переживает свое новое рождение в связи с невероятным бумом, причина которого — современные беспроводные технологии. Скорость обмена информацией, например, в беспроводных устройствах малого и среднего радиуса действия едва дотягивает до 9600 бод, а иногда и много меньше (1200 бод). Об увеличении скорости обмена информацией в таких устройствах ни в настоящее время, ни в скором будущем, по-видимому, нет даже и речи, поскольку с каждым годом ужесточается ограничение мощности радиотрансиверов. Сейчас новшества касаются только увеличения чувствительности приемников, входящих в состав радиотрансиверов, и улучшения их (приемников) соотношения «сигнал–шум«. Это улучшение достигается различными методами (например, скачкообразным изменением частоты модуляции, применением избыточного кодирования и другими «хитроумными« способами), но ни в коем случае не увеличением мощности передатчиков, дабы не «засорять эфир«. В этих условиях об увеличении скорости обмена говорить не приходится.

Максимальная скорость обмена, которую допускает интерфейс RS-232 (в компьютере) — 115 200 бод — не будет в скором времени перекрыта подобными устройствами беспроводной связи.

В связи с вышеизложенным, похоже, интерфейс RS-232 вряд ли скоро уйдет из нашей жизни, поэтому с ним придется еще много работать.

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

Интерфейс далеко не идеальный, достаточно старый (так и хочется применить слово «потрепанный»); он не лишен многих недостатков, некоторые из которых, к счастью, могут быть устранены как аппаратными, так и программными способами (вот это как раз и является целью публикации цикла статей).

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

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

Предлагаемый читателям материал об интерфейсе RS-232 условно делится на три части (что будет соответствовать трем статьям).

Предметом первой (настоящей) статьи будет обсуждение применения относительно новых традиционных и нетрадиционных преобразователей интерфейса RS-232 взамен широко известного MAX232, а также рассмотрение использования новых микросхем гальванических развязок взамен традиционно используемых оптоизоляторов (оптронов 6N137), применяемых в гальванически изолированном интерфейсе RS-232.

Для демонстрации практического использования описываемых преобразователей интерфейса будут приведены две достаточно простые схемы сопряжения микроконтроллеров MSC1210 и P89LPC938 с компьютером, применяемые для внутрисистемного программировании (ISP) этих микроконтроллеров и для штатного режима их работы. Выбор именно этих микроконтроллеров для демонстрации определяется противоположными уровнями запуска, подаваемыми на вход RESET. Кроме того, это достаточно современные микроконтроллеры, применяемые многими разработчиками.

Вторая статья будет посвящена программированию интерфейса RS-232 в компьютере, работающем в операционных системах Windows 98/XP, с помощью прямых команд ввода-вывода в COM-порт взамен традиционно использующихся для таких целей функций API. Будет показана простота программирования (точно такая же, как и при программировании в DOS), а также сделано сравнение скоростей работы программ, использующих функции API и прямые команды ввода-вывода в COM-порт компьютера. Будет показано, что скорость работы программ, использующих прямые команды ввода-вывода в порт, на порядок выше скорости работы программ, где применяются функции API.

Для демонстрации и для использования в практических целях метода программирования с помощью прямых команд ввода-вывода в COM-порт будут приведены тексты программ для программирования вышеуказанных микроконтроллеров в режиме ISP.

Третья статья будет посвящена новому, разработанному автором протоколу обмена по интерфейсу RS-232 с аппаратной синхронизацией, но только не линиями квитирования (например, RTS-CTS или DTRDSR), традиционно использующимися для таких целей, а линиями данных (TxD и RxD). Необходимо сразу оговориться, что здесь речь идет не о программной синхронизации (традиционно называемой XON-XOFF) линиями данных (TxD и RxD), а именно об аппаратной синхронизации. Как известно, аппаратная синхронизация обладает высокой надежностью обмена, которая особенно важна на высокой скорости (115 200 бод). Будет показано, что линии данных вполне пригодны для аппаратной синхронизации обмена по RS-232; кроме того, использование аппаратной синхронизации линиями данных «освобождает« линии квитирования (DTR и RTS) для других более важных целей (например, для сброса-запуска и перевода микроконтроллера в ISP-режим программирования).

Для демонстрации использования аппаратной синхронизации будут приведены тестовые программы обмена по RS-232, написанные для микроконтроллера и компьютера, работающего под управлением ОС Windows 98/XP. Кроме того, для применения аппаратной синхронизации обмена линиями данных уже в практических целях будут приведены программы (для микроконтроллера и компьютера, работающего вWindows 98/XP) программирования микроконтроллеров P89LPC938 и P89LPC904 в режиме внутрисхемного программирования (In-Circuit-Programming — ICP). Подробнее об этом режиме можно прочитать в описании на эти микроконтроллеры.

В настоящее время издательством «ДМК Пресс» готовится к публикации книга автора «Интерфейс RS-232. Связь между компьютером и микроконтроллером. От DOS к Windows 98/XP», часть информации из которой и приводится в предлагаемом цикле статей.

Оцените статью
Fobosworld.ru
Добавить комментарий

Adblock
detector