aaarrr 69 10 августа, 2009 Опубликовано 10 августа, 2009 · Жалоба А FTDI какой *.sys драйвер использует? И FTDI-айную заюзать можно? Свой собственный. Заюзать можно, а смысл? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
piz2383 0 10 августа, 2009 Опубликовано 10 августа, 2009 · Жалоба Да мне главное что бы надежно работало.,.. Попробую usbser.sys Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 10 августа, 2009 Опубликовано 10 августа, 2009 · Жалоба usbser в XP работает надежно. Есть, конечно, и некоторые косяки - сигнализация не вся поддерживается и USB нельзя передергивать, пока порт открыт. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
piz2383 0 12 августа, 2009 Опубликовано 12 августа, 2009 · Жалоба Все вроде работает. Но уточню несколько нюансов. На голой винде при подключении девайса, первого подключения в трее выскакивает надпись "atm6124.Sys ATMEL AT91xxxxx Test Board" Как-то хочется что бы вскакивало что-то свое, как это сделать не подскажите? И ещё скажите правильно ли я описал INF-файл для работы с usbser.sys? [Version] Signature="$Windows NT$" Class=Ports ClassGuid={36FC9E60-C465-11CF-8056-444553540000} Provider=%ATMEL% DriverVer=04/16/2008,1.0.0.0 [DestinationDirs] DefaultDestDir=12 [Manufacturer] %ATMEL%=AtmelMfg [AtmelMfg] %USBtoSerialConverter%=USBtoSer.Install,USB\VID_03EB&PID_6124 [USBtoSer.Install] CopyFiles=FakeModemCopyFileSection AddReg=USBtoSer.AddReg [USBtoSer.AddReg] HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,usbser.sys HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider" [USBtoSer.Install.Services] AddService=usbser,0x00000002,USBtoSer.AddService [USBtoSer.AddService] DisplayName=%USBSer% ServiceType=1 StartType=3 ErrorControl=1 ServiceBinary=%12%\usbser.sys [Strings] ATMEL="My Corp." USBtoSerialConverter="SUPER-PUPER BOMBA" USBSer="USB Serial Driver" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 12 августа, 2009 Опубликовано 12 августа, 2009 · Жалоба На голой винде при подключении девайса, первого подключения в трее выскакивает надпись "atm6124.Sys ATMEL AT91xxxxx Test Board" Как-то хочется что бы вскакивало что-то свое, как это сделать не подскажите? Пропишите индексы строк в device descriptor'е и сами строки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
piz2383 0 13 августа, 2009 Опубликовано 13 августа, 2009 · Жалоба Обьясните плз что такое индексы строк, а то я не понял со стандарта? (вродекак написано: Index of string descriptor describing product) Что в цнлом нужно прописыват в поле imanufacturer, iproduct и iserialnumber? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 13 августа, 2009 Опубликовано 13 августа, 2009 · Жалоба Обьясните плз что такое индексы строк, а то я не понял со стандарта? (вродекак написано: Index of string descriptor describing product) Что в цнлом нужно прописыват в поле imanufacturer, iproduct и iserialnumber? В этих полях нужно записать номера соответствующих строк, они будут использованы хостом при запросах GET_DESCRIPTOR - STRING. Номера строк должны быть ненулевыми, нулевой дескриптор используется для передачи списка LANGID. DEVICE DESCRIPTOR: 0x01, // Manufacturer string index 0x02, // Product string index 0x00, // Serial number string index (unused) unsigned char StringDscr0[] = { 0x04, STRING_DSCR, 0x09, // LANGID 0x0409 0x04 // English (United States) }; unsigned char StringDscr1[] = { 0x12, STRING_DSCR, 'A', 0x00, 'B', 0x00, 'C', 0x00, ' ', 0x00, 'C', 0x00, 'o', 0x00, 'r', 0x00, 'p', 0x00 }; unsigned char StringDscr2[] = { 0x14, STRING_DSCR, 'M', 0x00, 'y', 0x00, ' ', 0x00, 'd', 0x00, 'e', 0x00, 'v', 0x00, 'i', 0x00, 'c', 0x00, 'e', 0x00 }; Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
piz2383 0 13 августа, 2009 Опубликовано 13 августа, 2009 · Жалоба Меня как раз смутила надпись "ненулевыми" когда я читал спецификацию. В общем назначить можно любой. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
singlskv 0 14 августа, 2009 Опубликовано 14 августа, 2009 · Жалоба usbser в XP работает надежно. Есть, конечно, и некоторые косяки - сигнализация не вся поддерживается и USB нельзя передергивать, пока порт открыт.А можно поподробнее про момент передергивания при открытом порте ? В чем проблема конкретно ? Дело в том что я тестировал на передергивание при передаче, и у меня ни разу не было проблем с этим. То есть неперерывные запрос/ответ(протокол типа модбас) ну и передергиваю кабель много раз, связь восстанавливается и ничего не падает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 14 августа, 2009 Опубликовано 14 августа, 2009 · Жалоба А можно поподробнее про момент передергивания при открытом порте ? В чем проблема конкретно ? Если выдернуть кабель, пока открыт порт, то автоматом ничего не восстанавливается (по крайней мере на XP SP2). Если порт закрыть, то проблем нет. На W2K было еще хуже - устройство отваливалось до следующей перезагрузки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
piz2383 0 15 августа, 2009 Опубликовано 15 августа, 2009 · Жалоба А подскажите как определить что хост отключился от шины? Линию UDP_CNX подключил как в даташите, но она почему-то всегда в единице. Внезависимости от того подключен хост или нет. Включен пул-ап или нет. Не подскажите что с этой линией может быть не так? И можно как-то с помощью самого контроллера UDP определить подключен хост или нет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 15 августа, 2009 Опубликовано 15 августа, 2009 · Жалоба А подскажите как определить что хост отключился от шины? Что значит отключился, шнурок физически оторвали? Линию UDP_CNX подключил как в даташите, но она почему-то всегда в единице. Внезависимости от того подключен хост или нет. Включен пул-ап или нет. Не подскажите что с этой линией может быть не так? Если речь идет о линии, попключенной к VBUS через делитель, то с ней ничего не может быть не так. Разве только pull-up внутренний может перетянуть ее в единицу, если его не отключить. Других вариантов я не вижу. И можно как-то с помощью самого контроллера UDP определить подключен хост или нет? Можно следить за RXSUSP или вручную мониторить UDP_ FRM_NUM. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
piz2383 0 15 августа, 2009 Опубликовано 15 августа, 2009 · Жалоба Что значит отключился, шнурок физически оторвали? Точнее сказать отсоединили. В общем когда кабелем соединяется ПК с устройством, то началом соединения можно считать приход пакета SET CONFIGURATION. А вот когда пользователь просто взял и отсоединил кабель. Вот про это я спрашивал :))) Если речь идет о линии, попключенной к VBUS через делитель, то с ней ничего не может быть не так. Разве только pull-up внутренний может перетянуть ее в единицу, если его не отключить. Других вариантов я не вижу. aaarrr, я ваш вечный фанат. Да, именно отключив пул-апя добился того что при не подключенном кабеле у меня 0 на этой линии, а при подключенном единица :) Спасибо. Можно следить за RXSUSP или вручную мониторить UDP_ FRM_NUM.Да будущее запомню, но раз уж с той линией разобрались, то не понадобиться сейчас. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
singlskv 0 16 августа, 2009 Опубликовано 16 августа, 2009 · Жалоба Если выдернуть кабель, пока открыт порт, то автоматом ничего не восстанавливается (по крайней мере на XP SP2). Если порт закрыть, то проблем нет. На W2K было еще хуже - устройство отваливалось до следующей перезагрузки. Я думал что Вы имеете в виду что ломается что-то более серьезное, а так да, переоткрытие порта решает вопрос переподсоединения. Разве только pull-up внутреннийО, эту знатную фичу я тоже ловил, причем вся мерзость ситуации в том что на одном контроллере пулап дотягивает до 1 а на другом таком же нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
head_sk 0 19 августа, 2009 Опубликовано 19 августа, 2009 · Жалоба Прошу прощения, если невнимательно шустрил по форуму. Использую драйвер usbser.sys. Как-то нехочется пользователя заставлять искать нужно ком-порт к примеру (COM4), пусть даже и просто выбрать из списка. Не подскажите как программными средствами в винде определить что этот виртуальный ком-порт открыт именно этим устройством? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться