Виртуальный COM без дополнительного HW в Windows / Linux - PullRequest
0 голосов
/ 27 февраля 2019

У меня две программы на двух разных машинах: Windows и Linux.

Они ожидают связи через ком-порт.До сих пор мы использовали мост USB-UART на компьютере Linux с его драйвером для связи.Windows перечислила устройство как COM-порт, а на стороне Linux у нас было tty-устройство для подключения к приложению Linux.

Теперь, на новой версии платы, с которой я работаю, этот чип недольше присутствует.Я хотел бы сохранить обе программы без изменений.Я понимаю, что мог бы настроить драйвер USB на Linux, чтобы он действовал как виртуальный com без какого-либо дополнительного HW (CDC ACM?), И это бы сработало.Я прав?Если это так, какой драйвер мне использовать?

1 Ответ

0 голосов
/ 28 февраля 2019

На стороне Linux вам понадобится USB, настроенный для периферийного режима.Что касается программного обеспечения, см. Документацию gadget configfs и PDF из выступления Мэтта Портера.

Поскольку вы хотите использовать Serial USB CDC ACM, имейтепосмотрите серийный гаджет .

Есть библиотека libusbg, позволяющая использовать USB Gadget ConfigFS через C API.Это может быть полезно, если встроенному программному обеспечению требуется динамическое управление функциями USB, предоставляемыми устройством.Библиотека также предоставляет две утилиты, называемые gadget-import и gadget-export.Эти утилиты позволяют экспортировать созданный вручную гаджет USB в файл схемы и повторно импортировать его.Вы можете создать системный сервис для автоматического использования этой схемы при загрузке.

...