Подделка последовательного порта RS232
Я занимаюсь разработкой проекта, в котором имеется ряд аппаратных датчиков, подключаемых к машине развертывания через последовательные порты RS232.
Но... Я занимаюсь разработкой на машине без физических последовательных портов RS232, но я хотел бы создать поддельные последовательные порты, к которым я могу подключаться и выводить данные с целью имитации ввода от аппаратных датчиков.
Кто-нибудь знает способ создания поддельного последовательного порта и управления им в Windows XP?
8 ответов
Если вы разрабатываете для Windows, проект com0com может быть тем, что вы ищете.
Он предоставляет пары виртуальных COM-портов, которые связаны через нуль-модемное соединение. Затем вы можете использовать ваше любимое терминальное приложение или что угодно, чтобы отправлять данные на один COM-порт и получать от другого.
РЕДАКТИРОВАТЬ:
Как отметил Томас, в проекте отсутствует подписанный драйвер, что особенно проблематично в определенных версиях Windows (например, Windows 7 x64).
Существует несколько неофициальных версий com0com, которые содержат подписанный драйвер. Один из последних версий (3.0.0.0) можно загрузить, например, отсюда.
Я знаю, что это старая публикация, но в случае, если кто-то еще столкнется с этим вопросом, одним из хороших вариантов является эмулятор виртуального последовательного порта (VSPE) от Eterlogic. Он предоставляет API для создания виртуальных устройств с режимом ядра, таких как коннекторы, преобразователи, разделители и т.д.,
Тем не менее, некоторые из рекламируемых возможностей на самом деле не были возможностями вообще.
РЕДАКТИРОВАТЬ
Гораздо лучший выбор, Элтима. Этот продукт полностью выпечен. Хорошая техническая поддержка для разработчиков. Продукт сделал все, на что претендовал. Варианты продукта включают в себя как настольные приложения, так и наборы для разработки программного обеспечения с API-интерфейсами.
Ни один из этих продуктов не является открытым или бесплатным. Однако, как указали другие посты, есть и другие варианты. Вот список различных последовательных утилит:
com0com (текущий)
com0com - с подписанным драйвером (старая версия)
и еще одно место для com0com с подписанным драйвером (блог Пита)
Тактическое ПО
термит
Последовательный эмулятор COM-порта
Kermit (устаревший, но все еще загружаемый)
HWVSP3
HHD Software (бесплатная версия)
Я использую com0com - с подписанным драйвером, на Windows 7 x64, чтобы эмулировать COM3 и COM4 как пару.
Затем я использую COM Dataport Emulator для получения от COM4.
Затем я открываю COM3 с приложением im developping (C#) и отправляю данные в COM3.
Данные, отправленные через COM3, принимаются COM4 и отображаются "Эмулятором порта данных COM", который также может отправить ответ (не автоматизированный).
Таким образом, благодаря этим двум замечательным программам мне удалось эмулировать последовательное соединение RS-232.
Надеюсь, поможет.
Обе программы бесплатны!!!!!
Там всегда аппаратный маршрут. Приобретите два преобразователя USB в последовательный порт и подключите их через NULL-модем.
Советы профессионалам: 1) Windows может назначать новые COM-порты адаптерам после каждого спящего режима или перезагрузки устройства. 2) Лидерами рынка микросхем от USB до последовательного порта являются Prolific и FTDI. Обе компании борются с подделками и могут быть заблокированы в будущих официальных драйверах Windows. Драйверы Linux, однако, отлично работают с клонами.
Другая альтернатива, хотя ОП не просил об этом:
Существуют переходники с USB на последовательный порт. В зависимости от типа адаптера вам также может понадобиться нуль-модемный кабель.
Они очень просты в использовании под Linux, работают и под Windows, если у вас установлены рабочие драйверы.
Таким образом, вы можете работать непосредственно с датчиками, и вам не нужно пытаться эмулировать данные. Таким образом, вы, возможно, даже спасетесь от создания анемичной системы. (Из-за того, что ваши эмулированные данные вводятся не во все случаи, вы получаете хрупкую систему.)
Часто лучше работать с реальными вещами.
Я обнаружил, что бесплатные виртуальные последовательные порты хорошо подходят для моего некоммерческого использования. Это не бесплатно для других случаев использования. При этом он работал очень хорошо даже на Windows 11 на базе Arm64.
Я использовал eltima make виртуальный последовательный порт для работы по отладке приложения Modbus. это действительно очень хорошее приложение на стадии разработки для проверки программы последовательного порта без подключения оборудования.
Eterlogic.com имеет эмулятор виртуальных последовательных портов. Бесплатно для 32-битной среды. Отлично работает :)
Ссылка для скачивания: http://eterlogic.com/Downloads.html