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

 
 
> AT91SAM7S USB "залипает", время от времени, под настроение))
overloaded
сообщение Oct 25 2009, 21:32
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 17-10-07
Из: Киев
Пользователь №: 31 422



ЮСБ девайс постоянно обменивается парой сотен байт, размер приема и передачи всегда одинаковый.
Период такого обмена выходит от 1мс. Для теста контроллер вообще ничего кроме этого не делает (программа на ПК кстати тоже=) ). Через рендомные промежутки времени (от получаса до 20 часов) передача прекращается и контроллер ждет в функции Write

Код
// Wait for the the first bank to be sent
while ( !(pUdp->UDP_CSR[AT91C_EP_IN] & AT91C_UDP_TXCOMP) );


а ПК, в свою очередь, где=то внутри функции Read(обмен синхронный). Так продолжается от 5 до 30 секунд, после чего
передача чудесным образом возобновляется. Пробовал таймауты на стороне контроллера.
Слал пакеты неправильной длинны (больше или меньше ожидаемого), все синхронизхируется и возобновляется нормально, но проблема остается.

Пробовал bulkusb.sys+basicUSB чуть доделанный, CDC+ЦДЦ пример из ЮСБ фреймворк(типа на прерываниях), симптомы одни и те же.
Что делать? crying.gif cranky.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
aaarrr
сообщение Oct 27 2009, 14:32
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Постоянно работаю с 5.1.2600.2180 и как-то проблем не вижу. Чем наличие или отсутствие ZLP может помешать?
Go to the top of the page
 
+Quote Post
overloaded
сообщение Oct 27 2009, 19:17
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 17-10-07
Из: Киев
Пользователь №: 31 422



Мне мешает тем, что: контроллер прочитал структуру - отправил структуру. Синхронно. И когда приходит ЗЛП вместо структуры непонятно что делать - еще раз читать или как и обычно писать.
Логично было бы еще раз читать, но ЗЛП (кроме просто ложного пакета) может сигнализировать и конец передачи. А в таком случае еще раз читать нельзя т.к. ПК не дождется данных.
Это не то что сильно мешает, просто напрягает то, что на разных ПК по-разному будет.

Но именно проблема ЗЛП к первому посту не относится.. Там просто нет запроса OUT от хоста.. Вот нет и все! (смотрел программным снупером, аппаратного нет).
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Oct 27 2009, 19:41
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(overloaded @ Oct 27 2009, 22:17) *
Мне мешает тем, что: контроллер прочитал структуру - отправил структуру. Синхронно.

Вот это, по-моему, и является настоящим источником проблем.

Цитата(overloaded @ Oct 27 2009, 22:17) *
Но именно проблема ЗЛП к первому посту не относится.. Там просто нет запроса OUT от хоста.. Вот нет и все! (смотрел программным снупером, аппаратного нет).

А с другим драйвером (не CDC) не пробовали проверить?
Go to the top of the page
 
+Quote Post
overloaded
сообщение Oct 27 2009, 23:10
Сообщение #5


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 17-10-07
Из: Киев
Пользователь №: 31 422



Цитата(aaarrr @ Oct 27 2009, 22:41) *
Вот это, по-моему, и является настоящим источником проблем.

А почему? Зачем разрабатывать систему команд если нужна только одна? И скорость с системой команд думаю будет поменьше.. В чем ненадежность и проблемность? Или я не так Вас понял? Какую альтернативу посоветуете и что в ней лучше? И по-идее же доставка гарантирована, поэтому сколько посылаем столько и получаем.. Тогда чем плоха синхронная?

Цитата(aaarrr @ Oct 27 2009, 22:41) *
А с другим драйвером (не CDC) не пробовали проверить?

Пробовал bulkusb.sys из ДДК, но там сниффером не смотрел т.к. очень редко происходит, трудно поймать.. Еще буду пробовать.. Но в любом случае нужно ЦДЦ..
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- overloaded   AT91SAM7S USB "залипает"   Oct 25 2009, 21:32
- - Dron_Gus   Был в исходниках от Atmel глючек - не досылался пу...   Oct 26 2009, 06:54
|- - overloaded   В basicUSB это исправлял, в фреймворк конечно глян...   Oct 26 2009, 12:41
|- - overloaded   Обнаружил, что CDC хост почему-то после OUT пакета...   Oct 27 2009, 00:55
|- - overloaded   usbser.sys версии 5.1.2600.3234 и 5.1.2600.5512 по...   Oct 27 2009, 14:26
|- - aaarrr   Цитата(overloaded @ Oct 28 2009, 02:10) З...   Oct 27 2009, 23:27
|- - overloaded   Цитата(aaarrr @ Oct 28 2009, 02:27) Ну, е...   Nov 7 2009, 13:50
|- - aaarrr   Цитата(overloaded @ Nov 7 2009, 16:50) И ...   Nov 7 2009, 15:07
|- - overloaded   Цитата(aaarrr @ Nov 7 2009, 18:07) Вообще...   Nov 7 2009, 16:02
|- - aaarrr   Цитата(overloaded @ Nov 7 2009, 19:02) По...   Nov 7 2009, 16:13
|- - overloaded   Цитата(aaarrr @ Nov 7 2009, 19:13) Просто...   Nov 8 2009, 15:11
- - http   Не подскажете, где можно взять проект BasicUSB? О...   Sep 16 2010, 18:11
|- - prottoss   Цитата(http @ Sep 17 2010, 01:11) Не подс...   Sep 18 2010, 15:33
- - http   Спасибо. Решил разбираться по примеру, который вме...   Sep 19 2010, 16:43


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

 


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


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