Rs232 в видеорегистраторе что это

Обновлено: 05.07.2024

Употребляя в своих статьях названия и определения: последовательный порт, serial port, communications port, COM-порт, интерфейс стандарта RS-232 я не был до конца уверен, что употребляю их в правильном контексте. Давайте разберёмся что, зачем, как и почему.

Прежде чем перейти к последовательному порту, чуть-чуть общей теории.

Классификация протоколов

А какие протоколы бывают?

По порядку передачи данных протоколы (шины данных) делятся на:

О последовательных шинах речь пойдет ниже, но пару слов нужно сказать о параллельном соединении

Параллельный протокол передачи данных (параллельная шина данных)

Передача нескольких сигналов с данными одновременно по нескольким параллельным каналам.

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

Примеры чаще всего это устаревшие шины такие как: принтерный порт (IEEE 1284/Centronics), ISA, ATA (IDE), SCSI , PCI, FSB (Front Side Bus)

По времени передачи и приему информации связь делится:

  • Симплексная связь - только передача или прием данных.
  • Полудуплексная связь прием и передача разнесены во времени. Сначала прием, а затем передача или наоборот.
  • Дуплекс - одновременно прием и передача.

Перейдем сразу к последовательному протоколу, он делится на:

Асинхронный протокол - данные передаются без внешнего тактирующего устройства. Данные можно передавать по двум проводам прием/передача. Но нужны дополнительные усилия для синхронизации (пример UART, RS-232, 1-Wire)

Синхронный протокол - данные синхронизированы с тактирующим устройством (примеры SPI и I2C)

И у меня вопрос к читателям, а протокол USB какой синхронный или асинхронный?

UART

Universal Asynchronous Receiver-Transmitter (UART), Универсальный асинхронный приёмопередатчик (УАПП)

В 60-70годах в нашей стране не принято пользоваться англоязычными терминами поэтому UART получает свое, русское название - УАПП (Универсальный асинхронный приёмопередатчик) как и все остальные названия, например НГМД и так далее. Хорошее время было, все кратко и понятно, например скажешь УВК-1 и сразу всем все понятно, разговор идет о устройстве ввода координатном или о мышке.

Что такое UART

UART это физическая реализация интерфейса в виде логической схемы (микросхемы) которая обеспечивает прием и передачу информация в последовательном виде, в пределах одного чипа или одного устройства, на короткие дистанции. Он непригоден для приема, передачи данных на "длинные дистанции". Причем понятие длинные и короткие взяты в кавычки и это не зря. Так как все в мире относительно и в данном случае то же, но попробуем разобраться, что за такие "длинные и короткие дистанции". Когда микроконтроллеры и другие низкоуровневые ИС взаимодействуют между собой по последовательному протоколу, они делают это на уровне TTL (транзисторно-транзисторная логика). Последовательные сигналы TTL живут между диапазоном напряжения питания микроконтроллера - обычно от 0 до 5.0 вольт (так было раньше, это уже классика) ну или до 3,3 вольт (так сейчас или еще меньше до 1,8 и 1,6 вольт КМОП) Сигнал такого диапазона да еще и не защищенный передать далеко не получится иногда проблемы возникают тут сразу же, при передачи от одной микросхемы до другой, вспомним микросхемы серии К(К155, К1533, К153) из недостатков которых: высокие требования к напряжению питания, отклонение не более 0,5 В, низкая помехоустойчивость, высокие требование в правильной разводки шины земли. Так вот передать далеко эти сигналы не получится, а что делать? Самое простое тупо усилить - поднять напряжение питания так родился интерфейс RS-232

Интерфейс RS-232

(Recommended Standard 232, рекомендованный стандарт RS-232, EIA232)

Это стандарт физического уровня, надстройка над UART для приема передачи данных другим устройствам, т. е. на "длинные дистанции

В далекие годы 60 годы прошлого века (1962 год) особо не стали заворачивается с обработками сигнала, да и мощностей подходящих не было, а потом, видимо, вспомнили телеграф.

Первый трансатлантический кабель обладал очень низкой скоростью передачи 103 слова за 16 часов, а все из за того, что на огромной дистанции (чудовищная ёмкость и сопротивление длиннющего кабеля) сигналы просто "размазывало" по длинному кабелю. Для повышения скорости увеличивали напряжение и в конце концов дошли до 2000 вольт после чего кабель благополучно сгорел.

Вот и тут просто взяли да повысили напряжение логического сигнала, но на самом деле не совсем просто, а вот так, см. ниже.

Электрический принцип работы RS-232

Логический нуль RS-232 лежит в пределе от +3 до +12 вольт, а единица от -3 до -12, соответственно. Между -3 и +3 вольт зона ничего, не нуля и не единицы, зона неопределённости. Т. е. разработчики стандарта инвертировали сигнал, сделали отрицательное напряжение для единицы и повысили и понизили напряжение до -12, +12вольт (на самом деле до -15, +15 вольт, а иногда и до 25 вольт) Пишут даже, что в блоке питания компьютера именно поэтому и появилась -12 вольт. Хорошо же они поработали над стандартом для которого пришлось модифицировать и блок питания, сейчас бы такая фишка не прошла, хотя.

Максимальная длинна кабеля по стандарту 20 метров, но нормально прием идет до 15 метров на скорости 19200 бод, но можно передать и на 900 метров снижая скорость (помните трансатлантический кабель) до 2400бод. А вообще максимальная скорость передачи составляет 115 200 бод

Это единица измерения скорости передачи символов (символьной скорости) или скорости модуляции в символах в секунду или импульсах в секунду.

С этими БОДами сплошная путаница, обратите внимание на определение, сколько ИЛИ, давайте разбираться.

Символьная скорость

Сначала БОД придумали для того чтобы определить сколько символов, букв можно передать за секунду по телетайпу, а кодировка тогда была 5 битная. Кодировка двоичная, импульс - единица, нет импульса - нолик. Все логично и понятно.

Импульсах в секунду

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

Квадратурная амплитудная модуляция (КАМд)

Но потом все еще больше запуталось, потому как в одном импульсе с помощью, например квадратурной амплитудной модуляции (КАМд), можно зашифровать не один бит, а например до 16 бит.

В общем все в конце концов вообще перепуталось!

Иногда в бодах выражают полную ёмкость канала.

Полная ёмкость канала = служебная информация в бит/c + эффективная информация в бит/c.

Преобразование UART в RS-232

Самый известный преобразователь интерфейса – это микросхема, разработанная фирмой MAXIM, которая и получила от нее часть своего названия (MAX 232). Эта микросхема из 5 вольт генерирует отрицательное напряжение, чтобы сопрягать 5-вольтовый UART с 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-контактный разъем)
DCDINCarrier Detect (Определение несущей)81
RXDINReceive Data (Принимаемые данные)32
TXDOUTTransmit Data (Передаваемые данные)23
DTROUTData Terminal Ready (Готовность терминала)204
GNDSystem Ground (Корпус системы)75
DSRINData Set Ready (Готовность данных)66
RTSOUTRequest to Send (Запрос на отправку)47
CTSINClear to Send (Готовность приема)58
RIINRing Indicator (Индикатор)229

Интерфейс 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

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

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

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

Соединение прямое:

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

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

Как получить 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 В (логическая ) и +3..+15В (логический ).

Для преобразования уровней 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 RS485

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


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

RS-232C, EIA RS-232 или просто RS-232 относится к тому же стандарту, определенному Ассоциацией электронной промышленности в 1969 году для последовательного канала передачи данных.


DTE и DCE
DTE расшифровывается как терминальное оборудование. Компьютер - это DTE. DCE обозначает оборудование для передачи данных. Модем это DCE.
DTE обычно поставляется с разъемом "мама", а DCE - с разъемом "мама". Однако это не всегда так. Для проверки используйте простой способ, приведенный ниже:
измерьте контакт 3 и контакт 5 разъема DB-9 с помощью вольтметра, если вы получаете напряжение от -3 В до -15 В, то это устройство DTE. Если напряжение на контакте 2В, то это устройство DCE.
Примечание. Результат для коннектора DB-25 меняется на противоположный (см. Таблицу преобразования DB-9 в DB-25 ниже).



Разъем DB-9 Male, вид спереди. Обратный или задний вид разъема Male (штекерный) для Female (розеточный) разъема.

Преобразование DB-9 в DB-25

DB-9 DB-25 Назначение
1 8 DCD Data Carrier Detect
2 3 RxD Receive Data
3 2 TxD Transmit Data
4 20 DTR Data Terminal Ready
5 7 GND Ground (Signal)
6 6 DSR Data Set Ready
7 4 RTS Request to Send
8 5 CTS Clear to Send
9 22 RI Ring Indicator

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

Прямое соединение (DB-9) Нуль-модемное, кроссовое соединение (DB-9)
(DTE) (DCE) (DTE) (DTE)
1 DCD ------- DCD 1 1 DCD DCD 1
2 RxD ------- TxD 2 2 RxD ------- TxD 3
3 TxD ------- RxD 3 3 TxD ------- RxD 2
4 DTR ------- DSR 4 4 DTR ------- DSR 6
5 GND ------- GND 5 5 GND ------- GND 5
6 DSR ------- DTR 6 6 DSR ------- DTR 4
7 RTS ------- CTS 7 7 RTS ------- CTS 8
8 CTS ------- RTS 8 8 CTS ------- RTS 7
9 RI ------- RI 9 9 RI RI 9

Сигналы RS-232



Логическая форма сигнала RS-232 (8N1)

Шаг 2: Узнайте о протоколе

Протокол - это один или несколько наборов аппаратных и программных правил, согласованных всеми сторонами связи для правильного и эффективного обмена данными.

Синхронная и асинхронная передача данных

Развертывание: биты и байты

Внутренняя компьютерная связь состоит из цифровой электроники, представленной только двумя условиями: ВКЛ или ВЫКЛ. Мы представляем их двумя числами: 0 и 1, которые в двоичной системе называются битами. Байт состоит из 8 битов, которые представляют десятичное число от 0 до 255 или шестнадцатеричное число от 0 до FF. Как описано выше, байт является основной единицей асинхронной связи.

Скорость передачи, биты данных, четность и стоповый бит



Скорость передачи - это скорость передачи данных, которая измеряет количество битовых передач в секунду. Например, 19200 бод - это 19200 бит в секунду.
Биты данных являются измерением фактических битов данных в пакете связи. Например, вышеприведенный рисунок показывает восемь (8) битов данных в пакете связи. Пакет связи относится к передаче одного байта, включая биты пуска / останова, биты данных и четность. Если вы передаете стандартный код ASCII (от 0 до 127), достаточно 7 бит данных. Если это расширенный код ASCII (от 128 до 255), то требуется 8 бит данных.
Четность - это простой способ проверки ошибок. Есть четные, нечетные, отметки и пробелы. Вы также можете использовать без паритета. Для четного и нечетного контроля четности последовательный порт устанавливает бит четности (последний бит после бита данных) в значение, чтобы гарантировать, что пакет данных имеет четное или нечетное число старших логических битов. Например, если данные равны 10010010, для четности четности последовательный порт устанавливает бит четности равным 1, чтобы сохранить количество старших логических битов четности. Для нечетной четности бит четности равен 0, поэтому число старших логических битов нечетно. Метка четности просто устанавливает бит четности на высокий логический уровень, а пробел устанавливает бит четности на низкий логический уровень, чтобы принимающая сторона могла определить, повреждены ли данные.
Стоповые биты используются для сигнализации об окончании пакета связи. Это также помогает синхронизировать различные часы на последовательных устройствах.

Форматы данных (двоичные, шестнадцатеричные, декабрьские, октябрьские и ASCII)
Последовательные устройства используют Binary для связи, который состоит из двух уникальных чисел: 0 и 1.
Двоичный код - это система нумерации Base-2. Один байт данных состоит из 8 двоичных цифр от 0000 0000 до 1111 1111. Шестнадцатеричная система - это система base-16, которая состоит из 16 чисел: от 0 до 9 и букв от A до F (десятичное число 15).
Шестнадцатеричная система нумерации полезна, потому что она может представлять каждый байт в виде двух последовательных шестнадцатеричных цифр, и людям легче читать шестнадцатеричные числа, чем двоичные числа. Большинство производителей используют шестнадцатеричное в своей документации протокола. Преобразовать значение из шестнадцатеричного в двоичное просто. Просто переведите каждую шестнадцатеричную цифру в ее 4-битный двоичный эквивалент. Например. Шестнадцатеричное число F3 равно двоичному числу 1111 0011.
Десятичное число относится к числам в базе 10, которая является системой нумерации, которую мы используем чаще всего в повседневной жизни. Это не так просто, как шестнадцатеричное и восьмеричное в десятичное число, чтобы преобразовать десятичное число, но нам легче понять десятичное число.
Восьмеричное относится к системе нумерации base-8, которая использует только восемь уникальных символов (от 0 до 7). Программисты часто используют формат Octal, потому что люди относительно легко читают и могут быть легко переведены в двоичный формат: каждая цифра Octal представляет 3 двоичные цифры. Например. Восьмеричное число 73 соответствует двоичному числу 111 011.
ASCII (американский стандартный код для обмена информацией) - это кодировка символов, основанная на английском алфавите. Коды ASCII (как читаемые, так и нечитаемые) широко используются в коммуникациях, таких как модемная связь. Буквы от A до Z и цифры от 0 до 9 являются читаемыми кодами ASCII. Некоторые коды ASCII не читаются, такие как управляющие коды: XON и XOFF, которые используются в управлении потоком программного обеспечения.

В компания KS-is возможно купить адаптеры RS232 различных моделей и ценовых сегментов.

Примеры протокольных команд
Команда протокола представляет собой строку данных, отправленную с одного последовательного устройства (например, компьютера) на другое (то есть модем). Вот некоторые примеры:
Пример команды ASCII: ATI1 для запроса информации производителя модема. (Примечание: контрольные коды возврата каретки и перевода строки).
Преобразуйте приведенную выше командную строку в шестнадцатеричное, и она становится: 41 54 49 31 0D 0A
Преобразуйте приведенную выше командную строку в десятичную, и она становится: 065 084 073 049 013 010
Преобразуйте приведенную выше строку команды в восьмеричное, и оно становится: 101 124 111 061 015 012
Преобразуйте приведенную выше командную строку в двоичную, и она становится: 01000001 01010100 01001001 00110001 00001101 00001010

Шаг 3: Управляйте своими устройствами RS232 с помощью 232Analyzer

232Analyzer - это расширенный анализатор протокола последовательного порта, который позволяет вам контролировать / отлаживать, отслеживать / прослушивать последовательные устройства (RS-232 / RS-485 / RS-422 / TTL) прямо с вашего ПК. 232Analyzer является условно-бесплатной версией, БЕСПЛАТНАЯ версия имеет некоторые ограничения, но ее более чем достаточно для тестирования и управления вашими последовательными устройствами. Нажмите здесь, чтобы скачать бесплатную копию.



Выберите COM-порт и настройте форматы связи



Настройки управления потоком

Управляйте своими устройствами RS232 Контроль / мониторинг состояния линии



232Analyzer позволяет вам контролировать / контролировать состояние линий ваших COM-портов. Состояния линии RTS и DTR будут переключаться при нажатии на соответствующий светодиод, вы можете использовать измеритель напряжения для проверки изменений, вы должны получить от + 6 В до + 15 В, когда состояние линии включено, и от -6 В до -15 В, когда состояние линии ВЫКЛ. Другие состояния линии могут контролироваться через виртуальные D, такие как RX, TX, DSR, CTS, DCD и RI.

Команды отправки / получения

По 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

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


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

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

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

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

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

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

Комментарии ( 28 )

Вроде-бы что нового можно узнать о таком простом интерфейсе? Но даже тут кое-что для себя почерпнул.
Спасибо!


Ваш регистратор является многофункционалным устройством.

Одним из функции является возможность управления PTZ камерами. (смотрите цены)

К сегодняшнему дню, многие покупатели поворотных AHD камер, сталкиваются с проблемой.

Ваш регистратор является многофункционалным устройством.

Одним из функции является возможность управления PTZ камерами.

Как подключить и настроить AHD поворотную PTZ камеру через аналоговый DVR видеорегистратор?
Для сравнения надо учесть то, что IP поворотная PTZ камера, не требует дополнительной настройки.
AHD PTZ камера подключается по RS 485 интерфейсу, а это накладывает определенные трудности.

По этому сегодняшний скетч будет посвящен ответу на этот вопрос.
AHD поворотная PTZ камера при подключении к DVR регистратору требует настройку согласно инструкции к камере.

Поскольку PTZ камер очень много, то универсальную инструкцию дать никто не может.
Но несмотря на эту проблему, мы можем подсказать, на что Вам надо обратить внимание в вашей инструкции, чтобы быстро настроить камеру.
С учетом того что все подключено, а именно PTZ камера показывает изображение на видеорегистраторе, и подключена к разъему RS 485 A/B.
Можно начать ручную настройку DVR регистратора. Заходим в меню видео регистратора, Настройки и нажимаем PTZ.



Д алее подстраиваем настройки управления так, как говорит инструкция вашей PTZ камеры.
Обратите внимание на то, какие пункты требует выставить видеорегистратор.
Ваша инструкция располагает данными для заполнения.
Необходимо выбрать протокол, скорость передачи Бод — Бит рейд.
В случаи потери данных за счет плохой изоляции или наводок скорость бит рейда можно понизить.
Бит дата всегда 8. Стоп бит 1. Четность нет. Все остальное меняется в зависимо от Вашей инструкции.
Будьте внимательны. При нарушении одного из пунктов, регистратор не позволит управлять поворотной PTZ камерой.



Если Вы все выставили правильно, то прошу пройти на канал который ее транслирует. И начать управление PTZ камерой.



Если в Вашей системе видеонаблюдения имеется более одной PTZ камеры, то во избежание синхронных действий нескольких камер. Поскольку порт A/В один.
Требуется поменять номер в настройках самой камеры. Чтобы он не совпадал с другой PTZ камерой.
Некоторые PTZ камеры оборудованы внешним переключением своего канала. Например.


Зная все эти нюансы, Вам не составит труда настроить PTZ — поворотную камеру на свой DVR регистратор.
На этом все. Пользуйтесь системой видеонаблюдения с радостью.
Всегда рады помочь старым и новым клиентам.

Следующею статью мы посветим настройкой круиз контроля и детектора движения у PTZ камер.

19 августа 2015, 16:18,отредактированно 22 сентября 2017, 13:24


Есть HD-SDI камеры к примеру PN9-M2-V50IRH, с хвостом клеммой RS485.


На регистраторе в свою очередь имеется клемма RS422.

Что нам даёт подключение одного к другому?

Появляется возможность удалённо заходить в меню OSD камеры и менять её настройки с помощью меню регистратора Управлением PTZ, где стрелки будут отвечать за перемещение по Меню курсора и "+" за Ввод.

Не буду углубляться в рассуждения чем отличается RS485 от RS422, эта информация есть в интернете. Сразу напишу каким образом это всё дело подключать.

4 провода подсоединяются к регистратору +T,-T,+R,-R и у колодки RS-485 камеры необходимо объединить плюсы и минусы на скрутку, то есть +R и +T, а также -R c -T и подключить в RS-485 камеры, где А+ и B-, с учётом полярности.

Читайте также: