Использование виртуального COM-порта на Windows Mobile - PullRequest
0 голосов
/ 01 июня 2011

У меня есть мобильное устройство с Windows, работающее под управлением Windows CE 5.0. Теперь я хочу подключить оборудование к USB-порту и установить связь с ним, настроив его как виртуальный com-порт и записывая / читая байты в него и из него.

Должен ли я написать драйвер virual com для устройства Windows Mobile? Обратите внимание, что аппаратное устройство - это просто устройство, которое отправляет / получает байты.

Могу ли я просто использовать класс SerialPort .net framework?

Как узнать COM-порт, к которому подключено устройство, когда я подключу его к USB? есть ли диспетчер устройств в windows mobile?

Спасибо.

1 Ответ

1 голос
/ 01 июня 2011

Windows Mobile! = Windows CE 5.0, поэтому сначала вам нужно проверить, какое оборудование на самом деле работает. Во-вторых, вы должны проверить, что такое «USB-порт». У USB есть два «режима» - Host и CLient - и они отличаются как физически, так и программно. Если это порт, через который вы подключаете устройство к ПК, то это клиентский порт, и он не сможет принимать периферийные устройства.

Теперь , если это устройство CE 5.0 и , если это порт USB-хоста, тогда мы переходим к типу устройства USB и драйверам ОС. Что это за устройство? Он уже работает как последовательное устройство (например, в нем есть чипсет FTDI или Prolific)? Если это так, просто установите правильный драйвер CE, и все готово. Если это не так, вам нужно написать драйвер хост-устройства, чтобы система USB могла обмениваться данными с этим конкретным устройством. Как этот драйвер будет работать, зависит от аппаратного обеспечения.

В зависимости от того, какое будет имя порта, это зависит от настроек реестра драйвера хоста. Обычно он запускается с первого доступного порта (т. Е. Если ваше оборудование уже имеет «COM1:», то оно начинается с «COM2:»), но его легко переопределить, поэтому проверьте его в реестре.

EDIT

Примеры реализации драйверов см. В следующих местах на вашем ПК (предполагается, что у вас установлен Platform Builder - я думаю, что установлена ​​любая версия, начиная с версии 3.0):

%WINCEROOT%\PUBLIC\COMMON\OAK\DRIVERS\USB\CLASS\USBSER для базового USB хоста пример драйвера последовательного класса
%WINCEROOT%\PUBLIC\COMMON\OAK\DRIVERS\USBFN\CLASS\SERIAL для базовой функции USB пример последовательного драйвера

...