реклама на сайте
подробности

 
 
> Два и более CDC устройства на AT90USB82, USB-CDC, USB-HID
GRJ
сообщение Jun 15 2011, 08:53
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 30-07-08
Пользователь №: 39 306



Привет всем. Сделал USB-HID устройства на AT90USB82 (аппаратная поддержка USB). Все заработало, и все отлично. Но мне нужно чтобы компьютер видел и работал сразу с 2 и более такими устройствам. Пробывал по разному, не пошло (Программа для ПК была написана в LabVIEW с использование драйвера VISA, может в этом была проблема). Решил перейти на USB-CDC.
Одно устройство заработало отлично - появился виртуальный com-порт и все хорошо, но когда подключил второе такое-же устройство и подсунул ему тот же ini файлик от ATMEL он определился как com-порт, но с тем же номером. Таким образом работать я с ним не могу sad.gif. Попробовал поменять PID - после чего устройство стало неизвестным, и драйвер поставить на него не могу (не видет он ini файл от Atmel'a). В файле ini от Atmel'a правил только VID и PID.
Вот вопрос как сделать так чтобы на одном компе можно было работать с несколькими USB-CDC устройства. Может нужно что-то еще править в ini файле? Если кто знает подскажите пожалуйста, срочно надо.

ini файл
Код
; Установочный файл под Windows 2000 и XP для AT89C5131
[Version]
Signature="$Windows NT$"
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
Provider=%ATMEL%
LayoutFile=layout.inf
DriverVer=10/15/1999,5.0.2153.1
[Manufacturer]
%ATMEL%=ATMEL
[ATMEL]
%ATMEL_CDC%=Reader, USB\VID_03EB&PID_2018
[Reader_Install.NTx86]
;Windows2000
[DestinationDirs]
DefaultDestDir=12
Reader.NT.Copy=12
[Reader.NT]
CopyFiles=Reader.NT.Copy
AddReg=Reader.NT.AddReg
[Reader.NT.Copy]
usbser.sys
[Reader.NT.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,usbser.sys
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
[Reader.NT.Services]
AddService = usbser, 0x00000002, Service_Inst
[Service_Inst]
DisplayName = %Serial.SvcDesc%
ServiceType = 1; SERVICE_KERNEL_DRIVER
StartType = 3; SERVICE_DEMAND_START
ErrorControl = 1; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbser.sys
LoadOrderGroup = Base
[Strings]
ATMEL = "ATMEL, Inc."
ATMEL_CDC = "AT89C5131 CDC USB to UART"
Serial.SvcDesc = "USB Serial emulation driver"


У меня стоит Windows 7. В системе устройство определяется как com17
Спасибо.

Сообщение отредактировал GRJ - Jun 15 2011, 08:57
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 1)
kovigor
сообщение Jun 15 2011, 10:43
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(GRJ @ Jun 15 2011, 11:53) *
Вот вопрос как сделать так чтобы на одном компе можно было работать с несколькими USB-CDC устройства. Может нужно что-то еще править в ini файле? Если кто знает подскажите пожалуйста, срочно надо.


Про ваши драйвера вообще ничего не знаю, без комментариев. Вам нужно сделать устройство с двумя интерфейсами. А для этого придется править дескрипторы, добавлять конечные точки и, естественно, корректировать сам код. Едва ли воздействием на .ini - файл такое можно сделать. Хотя ...

P.S. Делал в одном устройстве на ARM три HID - интерфейса. Библиотек и прочих посторонних вещей не использовал, все писал сам. Если у вас уже есть ваш проект с одним интерфейсом, то добавить еще один интерфейс несложно. А вот если вы используете сторонние библиотеки, то тут могут возникнуть проблемы ...
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 22:50
Рейтинг@Mail.ru


Страница сгенерированна за 0.0135 секунд с 7
ELECTRONIX ©2004-2016