Рассматриваются 2 частных случая использования:
1. Эмуляция программного виртуального нуль модемного кабеля с помощью open source сcom0com, в системе появляется 2 COM порта с нуль модемным соединением. 2 программы, работающие с COM портом можно соединить вместе как через реальные COM порты.
2. Эмуляция нуль модемного соединения для 2х и более реальных и/или виртуальных COM портов. Например в системе есть 2 физических COM порта, к ним подключены внешние устройства, которые должны обмениваться данными, нужно соединить эти 2 физических COM порта програмно, чтобы обмен происходим между ними. Можно конечно COM порты внешних устройств напрямую соединить, без подключения к компьютеру. Но допустим нужно «засниферить» обмен между устройствами. Или разветвить данные одного физического COM порта на много виртуальных COM портов для дальнейшего подключения разных программ к этим виртуальным COM портам.
Рассмотрим первый случай, 2 виртуальных COM порта представляющих нуль модемнымное соединение:
Уроки Arduino #2 — работа с монитором COM порта
Устанавливаем com0com, запускаем, добавляем, например, две пары портов:
Добавили COM4, COM14, установили флаги Use Ports class и emulate baud rate. COM4, COM14 определены в системе как физические. COM40 COM41 без этих флагов, в системе как физические не определены:
Получили физические COM порты в системе. Для проверки результата, например к COM4 и COM14 подключаем по терминальной программе и наблюдаем, когда передача данных с одной терминальной программы отображается приёмом этих данных в другой.
Рассмотрим второй, более интересный случай, когда нужно 2 физических COM порта соединить между собой. И прослушать трафик терминальной программой.
Соединение 2х и более физических и/или виртуальных COM портов делаем через hub4com.exe
В командной строке набираем:
hub4com —baud=2400 —route=All:All \.COM1 \.COM15 \.COM4
baud понятно, что такое. Здесь объёдинены 4ре COM порта в некоторую сеть. COM1 и COM 15 являются реальными физическими COM портами. COM4 это виртуальный COM порт, который совместно с COM14 образуют нуль модемное соединение. COM4 COM14 -это пара виртуальных COM портов, созданных через com0com.
Вместо командной строки можно использовать .bat файл.
Получилось следующее, есть некие 2 физических устройства, не подключённых к компьютеру, они между собой обмениваются по RS интерфейсу, нужно мониторить трафик. Разрываем соединение между физическими устройствами и каждое подключаем к физическому COM порту компьютера COM1 и COM15. Создаём нуль модемную пару COM4 COM14. Через команду «hub4com —baud=2400 —route=All:All \.COM1 \.COM15 \.COM4» объединяем COM1 COM15 и COM4.
Таким образом весь обмен между физическими COM1 и COM15 будет на COM4 и соответственно COM14. К COM14 и подключаем терминальную программу, через которую будем видеть весь трафик.
Есть особенность, если в вышеприведённом примере COM14(пара COM4) не подключить/открыть в терминальной программе, то обмен между COM1 COM15, секунды через 4ре прекращается baudrate 2400. Или если в процессе обмена, в описаной выше конфигурации, отключить COM14 то секунды через 4 обмен между физическими COM1 COM15 прекращается, если подключить обратно, то возобновляется снова. Терминальная программа -демо версия ComPortToolkit. Явно видно, что есть какой-то буфер, при переполнении которого обмен прекращается. Т.е., если COM14 отключаем от терминальной программы, буфер относящийся к hub4com переполняется и прекращается обмен, после подключения COM14 обратно, буфер очищается в окно вывода терминальной программы и обмен возобновляется.
лекция 353 Виртуальный СОМ порт
Ещё одна особенность: рассмотренная схема включения снифера канала RS интерфейса замедляет передачу в 2 раза, между физическими COM1 и COM15. Сначала посылка данных принятая на физический COM1 компьютера заносится в некоторый буфер в памяти компьютера, затем начинается передача этой посылки на физический COM15 и виртуальный COM4COM14 и если есть другис COM порты то и на них. Если соединить напрямую то, что подсоединялось к COM1 и COM15 то передача одной стороны сопровождается одновременным приёмом на другой.
В любом случае, обязательно, чтобы все COM порты из связки «. —route=All:All \.COM1 \.COM15 \.COM4» были открыты. Разумеется COM14, как пара COM4 также должен быть открыт.
Не зависимо от того, какие порты будут использоваться, только физические, или смешанно, посылка всегда сначала передаётся в буфер
Ещё одна неприятность: на скорости 115200 вышеприведённая схема снифера не работает. Обмен прекращается после пересылки нескольких пакетов данных между физическими COM1 и COM15. Возможно это связано с ограничением быстродействия компьютера.
Источник: anteh.ru
Скачать ComPort 1.1
ComPort — обеспечивает работу до 4-х СОМ портов одновременно. Графическое и текстовое отображение сигналов СОМ портов в реальном времени. Позволяет циклически передавать и принимать информацию по RS-232. Полный контроль над СОМ портами (полное описание. )
Рекомендуем популярное
USBDeview — небольшая программка, которая выведет список всех USB устройств (флеш-карта.
ScanLite — небольшая бесплатная утилита, с помощью которой можно быстро и легко осуществлять.
VueScan — приложение, которое позволяет изменить стандартный интерфейс сканера на.
BlueSoleil — одно из наиболее популярных приложений, которое при помощи Bluetooth поможет соединить.
PaperScan — универсальная программа для сканирования различных документов. Отличительной.
AutoHotkey — приложение для автоматизации процессов до одного клика. Настраивайте клавиатуру и.
Источник: www.softportal.com
Использование PuTTy/KiTTy для работы по Serial (COM) соединению
PuTTy и её форк KiTTy, являются известными программами для осуществления сетевых подключений по самым разным протоколам, в том числе по SSH и Telnet. Помимо этого, данными программами поддерживается работа через интерфейс серийного порта, что очень часто необходимо для настройки различного оборудования. Для использования программы для работы по COM интерфейсу, нужно на начальном экране программы выбрать пункт «Serial» и в строке «Serial line» вписать корректное имя COM порта — по умолчанию там будет COM1. Рядом будет находится поле «Speed», где можно так же вручную вписать необходимую скорость соединения. Однако, соединение по COM интерфейсу имеет несколько своих специфичных настроек, таких как биты данных, стоповые биты и контроль четности, которые на данном экране отсутствуют.
Находятся данные настройки на последнем пункте настроек «Serial» в интерфейсе PuTTy (на скриншоте ниже выделен оранжевой линией).
В KiTTy же, данный пункт находится на предпоследнем месте (на скриншоте ниже выделен оранжевой линией), но по содержанию абсолютно одинаков.
Была ли эта статья Вам полезна?
Что в статье не так? Пожалуйста, помогите нам её улучшить!
Источник: pc.ru