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

 
 
> Потерянная посылка в HID USB, Куда может потерятся посылка и как восстановить связь
StasK
сообщение May 7 2009, 00:11
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 25
Регистрация: 31-03-08
Пользователь №: 36 348



Есть следующая проблема:
Контроллер (AT89C5131) передает данные в комп по HID USB 2.0. Иногда происходит сбой в передаче и комп перестает принимать посыки. Вроде этот сбой происходит, когда комп чем-то занят (много приложений открыть и т.д.). Устройство продолжает оставаться в списке конфигурации и ре-инициализации не происходит. Интересно, что устройство продолжает получать посылки с компа, отправлять ответ, но комп со своей стороны не получает (или вернее моя прога на VC6 не получает). Пока я решил эту проблему очень топорным способом. Как только комп перестает получать сообщения с устройства, комп посылает посылку с кодом, по которому устройство делает detach. Но хочется понять причину и исправить не так радикально, как detach.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
galjoen
сообщение May 7 2009, 00:19
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Посылка InterruptIn?
Пропадают одиночные посылки или вообще перестают приходить?
Go to the top of the page
 
+Quote Post
StasK
сообщение May 7 2009, 15:16
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 25
Регистрация: 31-03-08
Пользователь №: 36 348



Цитата(galjoen @ May 7 2009, 03:19) *
Посылка InterruptIn?
Пропадают одиночные посылки или вообще перестают приходить?


HID, на сколько я знаю, Interrupt. Вообще комп перестает принимать.
Go to the top of the page
 
+Quote Post
galjoen
сообщение May 7 2009, 16:30
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(StasK @ May 7 2009, 19:16) *
HID, на сколько я знаю, Interrupt. Вообще комп перестает принимать.

Под win?
Если так, то скорее всего дело в вашем девайсе. Он в этой ситуации на IN от хоста NAK шлёт. Один раз у вас ACK от хоста потерялся и всё...
На всякий проверьте не запрещается-ли соотв-я EP (ну это навряд-ли, тогда бы вас хост перенумеровал). И повесьте обработчик на посылку NAK хосту. Если у вас его ещё нет. Но если вы хотите получить надёжную связь - посылку NAK-ов обрабатывать нужно ОБЯЗАТЕЛЬНО. Без этого в некоторых ситуациях невозможно понять что хочет от вас хост.
Go to the top of the page
 
+Quote Post



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

 


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


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