Как использовать протокол rs232 а ноутбук его
Перейти к содержимому

Как использовать протокол rs232 а ноутбук его

  • автор:

Проблемы при «прошивке» ресиверов. Отсутствие COM порта. Использование ноутбука

В большинстве «старых» компьютеров и ноутбуков, приобретенных более 5 лет назад, всегда было несколько COM портов (RS-232). По крайней мере, всегда был хотя бы один разъем «RS-232».

Выбор химического источника тока для устройств домашнего интернета вещей

Рис. 15.1.1. Разъем на корпусе компьютера

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

В современных компьютерах разъем «RS-232» нередко отсутствует. Тут и возникают проблемы, зачастую весьма неприятные. В большинстве ресиверов нет иных способов «прошивки» кроме использования «RS-232». И «USB» вход для подключения внешнего флешь-накопителя есть не у всех ресиверов.

А иногда имеется и другая проблема: ноутбук имеет «COM» порт, но с ресиверами одной модели он работает, а с другими — нет. Это связано с нарушением производителем ноутбука стандарта передачи данных «RS-232». На это они идут в целях экономии энергии заряда аккумуляторной батареи. Если производитель ресивера был технически щепетилен и точен, то в ресивере будет установлена специальная микросхема для «COM» порта. Благодаря этой микросхеме ресивер будет работать и с ноутбуком, и с компьютером. Но установка микросхемы увеличивает общую стоимость изделия, а в последнее время производители экономят даже на этих мелочах! Поэтому и возникает проблема несовместимости ноутбуков и большинства ресиверов.

При использовании компьютера проблема отсутствия необходимых портов «RS-232» решается просто: необходимо приобрести дополнительный модуль с «COM» портами. Это плата, устанавливаемая в компьютер, называется «PIC—COM» или просто «плата СОМ портов».

Рис. 15.1.2. Плата PCI для компьютера с двумя «COM» портами

Если вы не сильны в компьютерах и ранее никогда не имели дело с установкой дополнительного оборудования в компьютер, то обратитесь к специалисту! Иначе можете «умертвить» дорогостоящее оборудование.

После установки платы в компьютер операционная система «Windows» — «ОС» присваивает новым установленным портам номер, например, «1», «2»…«25».

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

Рис. 15.1.3. Плата для ноутбука с «COM» портом

И тут есть подвох: в «старых» и «новых» ноутбуках два разных стандарта для дополнительного оборудования! Перед приобретением сверьтесь с инструкцией к вашему ноутбуку!

Если же вы не могли приобрести плату на компьютер или ноутбук, то остается один выход: «USB». Практически во всех современных моделях компьютеров имеется «USB» выход, как минимум два, а то и все восемь! В продаже имеются различные преобразователи «USB — COM».

Рис. 15.1.4. Преобразователь «USB — COM»

Т.е. в свободные разъем «USB» ноутбука подключается вход такого «преобразователя», с диска из комплекта устанавливается драйвер (программа управления) и в системных настройках появляется виртуальный COM порт с присвоенным порядковым номером.
Тут нас поджидают первые проблемы: во-первых, ОС могла присвоить виртуальному порту слишком большой номер, например, «25». А программа для «прошивки» ресивера позволяет работать с номерами портов от одного до четырех. Во-вторых, не все преобразователи «USB — COM» могут работать с программой для «прошивки» и самим ресивером. Причина в том, что производители оборудования по-разному изготовили свои изделия и программы к ним. Проверять все преобразователи необходимо индивидуально под вашу программу и ваш ресивер. Часто бывает, что с одним оборудованием преобразователь работает, а с другим — нет.

Если первая проблема устраняется изменением номера порта в настройках ОС, то проблему совместимости оборудования, программы и преобразователя устранить нельзя.

Для изменения присвоенного ОС номера необходимо изменить его вручную. Для этого необходимо войти в «Диспетчер устройств»: «Пуск» — «Настройка» — «Панель управления» — «Система».

Рис. 15.1.5. «Панель управления»

В появившемся окне выбрать вкладку «Оборудование» и щелкнуть по кнопке «Диспетчер устройств». Откроется окно «Диспетчер устройств». В появившемся окне в древовидном списке выбрать строчку «Порты (COM и LPT). В раскрывшемся списке вы увидите все порты, имеющиеся в вашем компьютере. Выберите ваш виртуальный порт: «преобразователь «USB — COM». У меня преобразователь модели «Prolific».

Рис. 15.1.6. Список имеющихся портов

Щелкните по этой строчке ПРАВОЙ кнопкой мыши, в открывшемся окне выберите стройку «Свойства».

Рис. 15.1.7. Настройка выбранного порта

В появившемся окне выберите вкладку «Параметры порта». В строчке «Скорость» выберите «115200», затем щелкните по кнопке «Дополнительно».

Рис. 15.1.8. Настройка параметров порта

В нижней части открывшегося окна найдите вкладку «Номер COM порта».

Рис. 15.1.9. Изменение номера COM порта

Щелкните по вкладке и выберите необходимый номер COM порта.

Обратите внимание, что некоторые номера порта могут быть заняты уже имеющимся оборудованием, например, встроенным модемом. Использовать одновременно один порт нельзя!

После завершения настройки нажмите «ОК» для сохранения внесенных изменений и полностью выйдите из режима настроек, закрыв все ранее открытые окна. После этого перезагрузите компьютер для внесения необходимых изменений. Если же вы изменяли номер «COM» порта «USB — COM» преобразователя, то достаточно просто вынуть его из разъема компьютера и заново подключить.

Протокол последовательной связи RS232: основы, работа и характеристики

RS232 Communication Protoco l — один из старейших, но популярных протоколов связи, который используется в промышленности и в коммерческих продуктах. Термин RS232 означает «Рекомендуемый стандарт 232» и представляет собой тип последовательной связи, обычно используемый для передачи данных на средние расстояния. Он был представлен еще в 1960-х годах и нашел свое применение во многих приложениях, таких как компьютерные принтеры, устройства автоматизации производства и т. Д. Сегодня существует множество современных протоколов связи, таких как RS485, SPI, I2C, CAN и т. Д., Вы можете проверить их, если хотите. В этой статье мы разберемся с основами протокола RS232 и его работой.

Что такое последовательная связь?

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

Пример для понимания:

Последовательная связь — вы стреляете в цель из пулеметов, при этом пули одна за другой достигают цели.

Параллельное общение — вы стреляете в цель из дробовика, в которую одновременно попадает много пуль.

Режимы передачи данных при последовательной связи:

  • Асинхронная передача данных — режим, в котором биты данных не синхронизируются тактовым импульсом. Тактовый импульс — это сигнал, используемый для синхронизации работы в электронной системе.
  • Синхронная передача данных — режим, в котором биты данных синхронизируются с помощью тактового импульса.

Характеристики последовательной связи:

  • Скорость передачи используется для измерения скорости передачи. Он описывается как количество битов, проходящих за одну секунду. Например, если скорость передачи составляет 200 бод, то прошло 200 бит в секунду. В телефонных линиях скорости передачи будут 14400, 28800 и 33600.
  • Стоповые биты используются для остановки передачи одного пакета, который обозначается буквой «T». Некоторые типичные значения — 1, 1,5 и 2 бита.
  • Бит четности — это простейшая форма проверки ошибок. Есть четыре вида: четные нечетные, маркированные и разнесенные. Например, если 011 — это число, бит четности = 0, то есть четность, и четность = 1, то есть нечетная четность.

Что такое RS232?

RS232C «Рекомендуемый стандарт 232C» — это последняя версия 25-контактного стандарта, тогда как RS232D имеет 22 контакта. В новом ПК — папа D-типа, которая имеет 9 контактов.

RS232 — это стандартный протокол, используемый для последовательной связи, он используется для соединения компьютера и его периферийных устройств, чтобы обеспечить последовательный обмен данными между ними. Поскольку он получает напряжение для пути, используемого для обмена данными между устройствами. Он используется для последовательной связи на расстоянии до 50 футов со скоростью 1,492 кбит / с. Как определяет EIA, RS232 используется для подключения оборудования передачи данных (DTE) и оборудования передачи данных (DCE).

Универсальный асинхронный приемник и передатчик данных (UART), используемый в сочетании с RS232 для передачи данных между принтером и компьютером. Микроконтроллеры не справляются с такими уровнями напряжения, разъемы подключены между сигналами RS232. Эти разъемы известны как разъем DB-9 как последовательный порт и бывают двух типов: штекерный разъем (DTE) и разъем-розетка (DCE).

Электрические характеристики

Давайте обсудим электрические характеристики RS232, приведенные ниже:

  • Уровни напряжения: RS232 также используется в качестве заземления и уровня 5 В. Двоичный 0 работает с напряжениями от + 5В до + 15В постоянного тока. Это называется «ВКЛ» или интервал (высокий уровень напряжения), тогда как двоичный 1 работает с напряжениями от -5 В до -15 В постоянного тока. Это называется «ВЫКЛ.» Или маркировкой (низкий уровень напряжения).
  • Уровень напряжения принятого сигнала : двоичный 0 работает с напряжениями принимаемого сигнала от + 3 В до +13 В постоянного тока, а двоичный 1 работает с напряжениями от -3 до -13 В постоянного тока.
  • Полное сопротивление линии: полное сопротивление проводов составляет от 3 Ом до 7 Ом, а максимальная длина кабеля составляет 15 метров, но новая максимальная длина с точки зрения емкости на единицу длины.
  • Рабочее напряжение: Максимальное рабочее напряжение составляет 250 В переменного тока.
  • Текущий рейтинг: Текущий рейтинг будет не более 3 ампер.
  • Выдерживаемое диэлектрическое напряжение: 1000 В переменного тока мин.
  • Скорость нарастания : скорость изменения уровней сигнала называется скоростью нарастания. При его скорости нарастания до 30 В / микросекунда, а максимальный битрейт составит 20 кбит / с.

Как работает RS232?

RS232 работает по двусторонней связи, которая обменивается данными друг с другом. Есть два устройства, подключенных друг к другу: (DTE) оборудование передачи данных и (DCE) оборудование передачи данных, которое имеет такие контакты, как TXD, RXD и RTS & CTS. Теперь из источника DTE RTS генерирует запрос на отправку данных. Затем с другой стороны DCE, CTS, очищает путь для приема данных. После очистки пути, это даст сигнал RTS в DTE источника для отправки сигнала. Затем биты передаются от DTE к DCE. Теперь снова из DCEисточник, запрос может быть сгенерирован RTS и CTS на DTE источников очищает путь для получения данных и дает сигнал для отправки данных. Это весь процесс передачи данных.

Интерфейс RS-232 – обзор, схема преобразователей, распиновка кабелей

Преобразователь интерфейса RS-232

В статье представлен обзор стандарта RS-232 — особенности и назначение интерфейса, схемы преобразователей в TTL, RS-422, RS-485, как получить 5В от порта RS-232.

Последовательный интерфейс RS-232 — обзор стандарта

Это широко используемый последовательный интерфейс синхронной и асинхронной передачи данных, определяемый стандартом EIA RS-232-C и рекомендациями V.24 CCITT. Изначально он создавался для связи компьютера с терминалом. В настоящее время используется в самых различных сферах.

Последовательный интерфейс RS-232

Интерфейс RS-232-C соединяет два устройства. Линия передачи первого устройства соединяется с линией приема второго и наоборот (полный дуплекс) Для управления соединенными устройствами используется программное подтверждение (введение в поток передаваемых данных соответствующих управляющих символов). Возможна организация аппаратного подтверждения путем организации дополнительных RS-232 линий для обеспечения функций определения статуса и управления.

Последовательный интерфейс RS-232

Последовательный интерфейс RS-232

Стандарт EIA RS-232-C, CCITT V.24
Скорость передачи 115 Кбит/с (максимум)
Расстояние передачи 15 м (максимум)
Характер сигнала несимметричный по напряжению
Количество драйверов 1
Количество приемников 1
Схема соединения полный дуплекс, от точки к точке

Порядок обмена по интерфейсу RS-232C:

Наименование Направление Описание Контакт
(25-контактный разъем)
Контакт
(9-контактный разъем)
DCD IN Carrier Detect (Определение несущей) 8 1
RXD IN Receive Data (Принимаемые данные) 3 2
TXD OUT Transmit Data (Передаваемые данные) 2 3
DTR OUT Data Terminal Ready (Готовность терминала) 20 4
GND System Ground (Корпус системы) 7 5
DSR IN Data Set Ready (Готовность данных) 6 6
RTS OUT Request to Send (Запрос на отправку) 4 7
CTS IN Clear to Send (Готовность приема) 5 8
RI IN Ring Indicator (Индикатор) 22 9

Интерфейс RS-232C предназначен для подключения к компьютеру стандартных внешних устройств (принтера, сканера, модема, мыши и др.), а также для связи компьютеров между собой. Основными преимуществами использования RS-232C по сравнению с Centronics являются:

  • возможность передачи на значительно большие расстояния;
  • гораздо более простой соединительный кабель.
  • Смотрите схему реобаса для ПК

Назначение сигналов следующее:

    FG — защитное заземление (экран).

Схема 4-проводной линии связи для RS-232C

Для двухпроводной линии связи в случае только передачи из компьютера во внешнее устройство используются сигналы SG и TxD. Все 10 сигналов интерфейса задействуются только при соединении компьютера с модемом.

Формат передаваемых данных показан на рисунке ниже. Собственно, данные (5, 6, 7 или 8 бит) сопровождаются стартовым битом, битом четности и одним или двумя стоповыми битами. Получив стартовый бит, приемник выбирает из линии биты данных через определенные интервалы времени. Очень важно, чтобы тактовые частоты приемника и передатчика были одинаковыми, допустимое расхождение — не более 10 %). Скорость передачи по RS-232C может выбираться из ряда: 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 бит/с.

Формат данных RS-232C

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

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

Уровни сигналов RS-232C на передающем и принимающем концах линии связи

Обмен по RS-232C осуществляется с помощью обращений по специально выделенным для этого портам:

  • COM1 (адреса 3F8h. 3FFh, прерывание IRQ4);
  • COM2 (адреса 2F8h. 2FFh, прерывание IRQ3);
  • COM3 (адреса 3F8h. 3EFh, прерывание IRQ10);
  • COM4 (адреса 2E8h. 2EFh, прерывание IRQ11).

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

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

Условные обозначения:

  • F — «мама»;
  • 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

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

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

  • 2+3
  • 1+6+4
  • 7+8

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

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

  • 2+3
  • 4+5
  • 6+8+20

Как получить 5 вольт от порта RS-232?

Схема для получения 5В от порта RS-232

Список необходимых деталей:

  1. Линейный регулятор — L78L05.
  2. 2 выпрямительных диода (D1, D2) — 1N4004.
  3. Электролитический конденсатор (C1) — 22 мкФ.
  4. Конденсатор (C2) — 0.001 мкФ.
  5. 2 резистора (R1, R2) — 43 Ом.

Преобразователи интерфейса RS-232

Конвертер RS-232 в TTL

При разработке различного рода электронных устройств с использованием микроконтроллеров очень часто оказывается полезной возможность подключения их к персональному компьютеру через последовательный порт. Однако напрямую это сделать невозможно, поскольку по стандарту RS-232 сигнал передается уровнями -3. -15 В (логическая <1>) и +3..+15В (логический <0>).

Для преобразования уровней RS-232 в стандартные логические уровни TTL обычно используют специальные микросхемы преобразователей. Однако далеко не всегда имеет смысл закладывать преобразователь уровней в схему проектируемого устройства, поскольку часто бывает так, что связь с компьютером нужна только на этапе изготовления и отладки устройства, а для конечного изделия в ней нет никакой необходимости.

  • Читайте также о независимом подключении двух винчестеров в компьютере

Схема преобразователя RS-232 в TTL

Необходимые детали:

  1. ИС RS-232 интерфейса (U1) — MAX232A.
  2. Линейный регулятор (U2) — LM78L05A.
  3. Диод (D1).
  4. Конденсатор (С1-С5) — 5х0.1 мкФ.
  5. Электролитический конденсатор (С6) — 4.7 мкФ.
  6. Разьем (Cn1) — TTL.
  7. Разьем (Cn2) — RS-232.

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

  • Рекомендуем узнать, как выполнить уникальный моддинг системного блока ПК в корпусе из оргстекла

Использование описанного выше преобразователя RS-232 в TTL оказывается удобным в тех случаях, когда в процессе эксплуатации устройства не требуется наличие возможности связи с компьютером, но она нужна на этапе отладки или изготовления устройства. Типичным примером этого может служить, например, устройство с flash или EEPROM памятью, требующей начальной инициализации. Кроме того, часто бывает очень удобно в процессе разработки выводить в последовательный порт различного рода отладочную информацию, что иногда позволяет обойтись без аппаратных эмуляторов.

Преобразователь интерфейса RS232–RS422

Конвертер собран на SMD элементах и помещается в корпусе разьёма Sub-D9.

Все резисторы — 0.25 Вт, конденсаторы 16В. Корпус COM-порта соединен с -5В. Питание 5В взято с RJ-45.

Схема конвертера интерфейса RS232-RS422

Печатную плату можно скачать ниже:

Файлы для скачивания: rs232rs422.rar

Схема преобразователя интерфейсов RS232–RS485

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

Преобразователь интерфейсов RS232 RS485

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

Схема преобразователя интерфейсов RS232 RS485

Схема основана на популярных микросхемах MAX232 и MAX485. Разъем DB-9 соединяет плату с последовательным портом с помощью кабеля. Разъемы J1 и J2 предоставляют доступ к линиям ввода/вывода MAX232, а разъем CN1 позволяет получить доступ к линиям ввода/вывода MAX485. С помощью джампера J4 к плате можно подвести внешнее питание до 12 В, которое будет преобразовано стабилизатором в 5 В. Если вы подаете питание через разъем J1, то убедитесь, что J4 разомкнут. Светодиод D2 обеспечивает визуальную индикацию питания платы, а диод D1 защищает от подключения питания не правильной полярности.

Кабель RS485 подключается к разъему CN2 через сопротивления R3, R1 и R4, обеспечивающие необходимый импеданс. Вывод A разъёма CN1 представляет собой вывод контроля приема/передачи. Подтяжка этого вывода к земле позволит RS485 работать в режиме приёма, а подтяжка к напряжению питания Vcc в режиме передачи.

Для подключения MAX232 к MAX485 соедините вывод C разъема J1 с выводом DI разъема CN1 и соедините вывод B разъема J1 с выводом RO разъема CN1.

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

RS232. Взгляд изнутри

Последовательный порт (далее ПП) удобный инструмент для общения между разными периферийными устройствами (как собранные самостоятельно на основе какого-нибудь МК, так и заводские: принтеры, осциллографы и т.д.) с одной стороны, и ПК с другой. На сегодняшний день наиболее популярные из всех ПП являются RS232 стандарт (переводится как «Recommended Standard») за его простоту и USB стандарт («Universal Serial BUS») за его резвость.
USB бесспорно вещь полезная, но жудко навороченная. Поскольку многим самодельным устройствам бешенный обмен данными с ПК неособо нужон, тогда на помощи приходит простой, надежный и многоопытный RS232 Интерфейс.

По RS232 стандарту устройства участвующие в обмене данными бывают двух типов:
Data Terminal Equipment (DTE) (устройство отдающее команды — ведущий) и
Data Circuit-Terminating Equipment (DCE) (периферия, обслуживающая хозяина — ведомый). Нередко, некоторые периферийные устройства ведут себя как DTE (например осциллографы, или наши с вами девайсы).

Типы соединения

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

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

Типы передач данных

Минимальное количество проводков необходимое для обмена данными равно двум (этокий жадный изврат), если передача является односторонней ([Tx, GND]). В случае когда необходимо полноценное — двухстороннее общение число проводков возростает аж до трех ([Rx, Tx, GND]). Большинство периферийных устройств поддерживают одновременную передачу и прием данных — full-duplex, но если один из собеседников на такое не способен, обмен переходит в разряд неполноценных — half-duplex (пока один не закончил передачу/прием другой пляшит под его дудку).

Распиновка COM разъёма

В столбце Signal Name, DATA Terminal можно заменить на ПК (то есть Data Terminal Ready соответствует ПК готов к работе), а DATA Set на Периферия.

Как следует из предыдущей таблицы, все пины делятся на управляющие (control pins) и транспортные (Data pins). Каждый пин в определенный момент времени может находьтся только в одном из двух состояний: активном (on) или неактивном (off). Чтобы не запутатся, и както защитить данные от помех, разработчики решили что во время передачи данных они были сначало усилены (+5В –> +12В, 0В –> -12В ) а потом инвертированы, в то время как c управляющими сигналами они долго не парились и просто их усилели (тоесть положительное стало еще положительней а отрицательное — отрицательнее, относительно общего провода).

Назначение управляющих пинов ([RTS, CTS], [DTR, DSR] и [CD, RI]) сводится к следующему:

• Отслеживать состояние собеседника
• Отслеживать поток данных

Пара [RTS, CTS] — используется для обозначения готовности данной пары устройств к передачи/приему соответственно.

1. DTE устройство устанавливает RTS = on, сигнализируя о том что оно готово к приему данных. Если устройство получило достаточное количество данных то устанавливаем RTS =off.
2. DCE устройство устанавливает CTS =on, сигнализируя о том что оно готово к приему данных. Если устройство получило достаточное количество данных то устанавливаем CTS =off.

Кто каким пином будет управлять (тоесть кому быть DTE а кому DCE) решать вам. Соответственно программы управления этими устройствами должны выставить RTS(выход)/CTS (вход), или наоборот, иначе могут быть глюки.

Пара [DTR, DSR] — большинство устройств используют эти пины для сигнализирования что они подключены и готовы к работе.

1. DTE устройство устанавливает DTR=on, сообщая DCE устройству что оно готово к работе. Соответственно когда DTE устанавливает DTR=off, то оно больше не желает (или не может) общатся (положила трубку 🙂 )
2. DCE устройство устанавливает DSR=on, сообщая что оно подключено, а когда DSR=off – оно отключено.

Такой метод контроля потока данных называется – hardware handshaking (чтото вроде аппаратное управление). Пары [DTR, DSR] и [RTS, CTS] могут быть с легкостью взаимо-заменены без всякого ущерба.

Пара [CD, RI] – используется для обозначения (в тот самом случае когда один принтер на отару кампов) что в данный момент линии передачи данных кем-то заняты.
Как правило этой парой управляет модем, но не обязательно.

Photobucket

• St – Стартовый Бит (начало передачи данных) – логический ноль
• 0..8 – позиция бита (данных) в пакете (позиция «0» – LSB)
• P – бит парности (проверка успешной передачи данных)
• Sp1,Sp2 – стоп биты (завершают передачу пакета) – логическая единица
• [] – в скобках обозначены биты которые могут отсутствовать
(биты данных с 5 по 8 так или иначе будут переданы, но не рассмотрены — мусор)
• IDLE – ожидание (логическая единица)

Как я уже говорил, во время передачи — данные инвертируются, так что если будете проверять осциллографом как отсылается пакет — не пугайтесь.

Часто формат пакета обозначается следующим образом: 8-N-1 (8 бит данных, без бита проверки, один стоп бит) или 5-E-2 (5 бит данных (3 бита мусора), с проверкой на четность, два стоп бита).

Поскольку MAX232 поддерживает аппаратное управление COM портом, и если с разводкой данной схемы проблем нет, почемуб и не использовать эту возможность, вдруг когда пригодится (не пропадать же добру). В противном случае, можно обойтись без аппаратного управления, как зачастую и происходит.

Софт
UPD: заменил вывод cout на printf, и убрал флаги RxClear и TxClear

ПП по сути является фаилом из которого ведется чтение/запись, поэтому основные операции которые применяются над ПП можно группировать следующим способом:

Также много интересного можно узнать на следующих сайтах: Programming Serial Connections , Serial programming in win32 OS

Запихните предыдущий код в хидэр фаил, например с именем COM_INIT.h и можно использовать ПП.

Надеюсь эти скромные знания кому-то помогут. Если есть вопросы попытаюсь ответить.

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

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