|
USB CDC драйвер для Windows 7, Кто-то может надоумить? |
|
|
|
 |
Ответов
(1 - 10)
|
Dec 11 2010, 10:22
|

Гуру
     
Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237

|
Цитата(sergeeff @ Dec 11 2010, 13:03)  Я сталкивался с такой неприятной штукой. Открыто окно терминала. Подключен COMn через usbser.sys. Все работает. Нажимаем reset на контроллере. Он стартует, но по COMn больше нет коннекта. Причем до тех пор, пока не перезагрузишь комп. Если сначала закрыть терминал, а потом reset, то все ok. Согласись, что это слегка через ж... Это лечится, и usbser.sys в том не виноват. Если это ваша собственная программа находится на связи с USB-устройством, то она должна реагировать на системное сообщение WM_DEVICECHANGE, которое генерируется системой при подключении и отключении внешних USB-устройств. Если вы успеете (а должны успеть!) закрыть тот COM-порт до того, как USB-устройство воскреснет после ресета и начнет коннектиться заново, то никакого затора не возникнет. Но, а если это дубовая программа-терминал, написанная чужим дядей, то с ней ничего не поделаешь.
|
|
|
|
|
Dec 11 2010, 11:31
|
Профессионал
    
Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007

|
Цитата(Xenia @ Dec 11 2010, 14:22)  Это лечится, и usbser.sys в том не виноват. Если это ваша собственная программа находится на связи с USB-устройством, то она должна реагировать на системное сообщение WM_DEVICECHANGE, которое генерируется системой при подключении и отключении внешних USB-устройств. Если вы успеете (а должны успеть!) закрыть тот COM-порт до того, как USB-устройство воскреснет после ресета и начнет коннектиться заново, то никакого затора не возникнет. Но, а если это дубовая программа-терминал, написанная чужим дядей, то с ней ничего не поделаешь. Как я понимаю, мы должны разрабатывать устройства (и, возможно, драйвера к ним), которые работают с любыми "дубовыми" программами. В частности я пользую TeraTerm. Кстати HyperTerminal в этом смысле ведет себя ровно также. С другой стороны, если посмотрите на устройства/драйвера от prolific, там такого явления не наблюдается.
|
|
|
|
|
Dec 11 2010, 23:42
|
Профессионал
    
Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007

|
Цитата(DpInRock @ Dec 12 2010, 01:28)  Сотключением девайса во время работы - именно так и поступаю, отслеживаю отключение USB и переподключаюсь, если надо. Вернее, юзеру предлагаю нажать кнопку... Мало ли зачем отключили... И тут я вполне понимаю гипертерминал. Незачем восстанавливать связь.
Сам в глаза ни разу не видел ни 7, ни Висту.
Надеюсь, что инф файл для 7 также выглядит? 1. Вы бросьте надеяться, что пользователи будут какую-то там кнопочку нажимать. Решение под себя любимого, это и есть вариант для себя. 2. С inf файлом под Win7-32 никаких проблем особых нет. А под Win7-64 нам всем придуман очередной кирдык. Драйвер должен быть подписан соответствующим цифровым сертификатом. Единственное что радует - 175 (не миллион!) евро цена на год кросс-сертификата для подписывания драйверов. Есть программная штука, позволяющая этот сертификат похоронить, но для коммерческих изделий - это не вариант.
|
|
|
|
|
Sep 26 2011, 10:25
|
Группа: Новичок
Сообщений: 1
Регистрация: 26-09-11
Пользователь №: 67 385

|
Цитата(DpInRock @ Dec 11 2010, 13:41)  Меня usbser устраивает вполне. Говорят в 7 есть какая-то XP mode. Toweroff, может именно в этой моде драйвер встал?
Под XP у меня работает usbser хорошо. Не знаю что имелось ввиду под pnp, но втыкания вытыкания обрабатываются просто моментально. А всякие RTS DTR, настройки скорости и прочая я из CDC на стороне контроллера убил. Токо данные гоняю. Что удобно - скорость порта на стороне компа может быть любой, в смысле от нее не зависит ничего. Исходниками можешь поделиться?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|