Как открыть и записать / прочитать на USB CDC «последовательное» устройство на Windows, Linux, OS X? - PullRequest
2 голосов
/ 17 сентября 2010

У меня есть устройство Atmel AVR A90USBxxxx, которое я настроил для «разговора по USB» через CDC.Он предназначен для ввода данных с хост-компьютера под управлением Windows, Linux или OS X.

У меня сложилось впечатление, что Linux и OS X сразу распознают это устройство CDC и с помощью простого .inf aМашине Windows можно сказать, что мой VID / PID должен быть открыт как устройство CDC с использованием usbser.sys.

Мой вопрос: как только ОС открыла это USB-устройство как последовательное устройство, как я могу программно читать и записыватьна этот порт (для каждой из 3 перечисленных ОС, но для Windows требуется больше деталей, поскольку я совершенно незнаком там)

Спасибо

1 Ответ

0 голосов
/ 31 октября 2011

Ответ действительно зависит от того, какой язык программирования вы намереваетесь использовать. Не зная, какой язык вы намереваетесь использовать, я не могу точно сказать вам, как это сделать, но могу указать вам верное направление.

Для создания прототипа я рекомендую использовать Python с модулем PySerial . Это очень легко настроить и быстро написать функциональный прототип. Python будет работать в Windows, Linux и OS X. Таким образом, вам нужно всего лишь один раз написать код последовательной связи, и вы сможете протестировать его на всех своих платформах.

Документация PySerial содержит несколько примеров того, как читать и писать в порт.

Если Python не работает для вас на производстве, я все равно рекомендую придерживаться языка программирования, который имеет кросс-платформенную библиотеку последовательных портов, если это возможно.

Вот вопрос, который уже задавался о кроссплатформенной библиотеке последовательного порта для C: C: кроссплатформенная библиотека последовательного порта RS-232?

...