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

 
 
> V-USB HID, Disconnect, ATmega32? 16 MHz
Br.Misha
сообщение Mar 20 2011, 12:15
Сообщение #1


Местный
***

Группа: Validating
Сообщений: 253
Регистрация: 21-12-08
Пользователь №: 42 646



Привет!
Я много сделал юсб -девайсов и почти во всех применял V-USB, который при подключении к компу запрашивал драйверы, короче работал через LibUSB-win32. Было все ок, но мне в нем не нравилось то, что ему нужны были драйвера и глючность самой библиотеки (под комп) на некоторых компах(например когда девайс е подключен и т.д.). Но вот в последнее время решил пересесть на HID, тут либа стандартная и дравера не надо, а значит, будет работать на большинстве платформ.
Чтобы не паять девайс для теста, я просто решил переделать тот, который щас разрабатываю. Я Просто изменил дескриптор репорта, отключил опрос по RS485(это одна с ф-ций девайса), и сделал пару изменений в конфиге, переделал прогу под комп и девайс начал кидать байтики на комп. Потом влючл опрос по RS485, но не подключал витую пару - работало тоже нормально. Потом подключил конектор с витой парой и как только остальные девайсы по рс485 начали передавать байты на главные девайс (тот, на котором юсб), программа перестала находить девайсsad.gif. Заглядывал в диспетчер устройств, там девайс нормально определяется, потом решил посмотреть через эверест. Оказывается, что при нормальной работе девайса в эвересте отображаются производитель, продукт, VID/PID, клас, а когда программа не может найти устройство, то только VID/PID. Соответственно, программа не может его найти. Но при этом, даже когда програма не видит устройство, оно работает нормально (опрос по рс485, отображение на дисплее, сканирование клавы). Я потом начал втыкать usbPoll() куда только можно, всеравно не работает. Короче мучался полторы суток и заработало, почему не знаю, но хотелось бы знать.

Конечно пробелма решилась, но не факт, что она опять появится, особенно фигово будет когда оно начнет глючить у заказчика.

Может кто-то сталкивался с подобной пробемой?

Забыл добавить: глюк происходит вне звисимости от частоты опроса (5 сек или 50 мсек)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Br.Misha
сообщение Mar 20 2011, 12:38
Сообщение #2


Местный
***

Группа: Validating
Сообщений: 253
Регистрация: 21-12-08
Пользователь №: 42 646



hd44780, спасиб что ответил! я думал что мой вопрос даже до конца не дочитают.
Но проблема не в том. У меня к примеру есть еще один девайс на атмега32, так в нем: юсб, ик-приемник, ик-передатчик, 4 дисплея, 1-wire, ну и еще управление нагрузками, светодиодами и некоторые математические вычисления, по юсб девайс опрашивается каждые 50 мс почти круглосуточно. Работает без глюков, но использует LibUSB-win32. Тут проблема в чем то другом, наверно LibUSB-win32 с меньшей частотой опрашивает девайс чем ХИД. Я поставил USB_CFG_INTR_POLL_INTERVAL = 500 но проблема всеравно не решилась.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 21:48
Рейтинг@Mail.ru


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