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

 
 
 
Reply to this topicStart new topic
> LPC1768 USB DMA, Передаються не все данные
yashok
сообщение Feb 7 2014, 07:46
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 60
Регистрация: 31-08-10
Из: Минск-Витебск
Пользователь №: 59 203



Всем добрый день.
Ситуация следующая. Пытаюсь запустить в своем проекте usb mass storage device. Использую библиотеку nxpusblib. Ранее был опыт работы с USB CDC и USB RNDIS, так же пользовался этой библиотекой. Все сделал на основе примера из этой библиотеке, дискрипторы взял из радного примера от LUFA. Вообщем при передачи, парой передаються не все данные, не передается последняя часть данных равная размеру точки. Менял размер точек и в usb анализаторе видел, что всегда не хватает количества данных, которое равняеться размеру точки. Причем все может работать долго (пару минут) не наступит такая ситуация, а бывает и 10 секунд не проработает.
Может кто-нибудь сталкивался с таким.
Испульзую IAR.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Feb 7 2014, 09:03
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



поглядите во внутрях библиотеки при передаче последнего пакета длинной в буфер конечной точки, передается еще один пустой пакет следом?
Go to the top of the page
 
+Quote Post
yashok
сообщение Feb 7 2014, 09:43
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 60
Регистрация: 31-08-10
Из: Минск-Витебск
Пользователь №: 59 203



Передаеться пакет 512 байт, потом ответ на команду 13 байт. РАзмер точки 64. Так вот иногда вместо передачи 512 байт передается 461. Т.е. пердаеться 448 байт данных и 13 байт ответа на команду. Уже все прошерстил, ничего не понимаю. В статусе dma все правильно, и нужное количество байт перегнал, и адрес последнего переданного байта правильный (именно когда передаеться не полный 512 байтовый пакет). В проверках свободна ли точка контролировал и первый и второй буфер точки. НИЧЕГО НЕ ПОМОГАЕТ!!!

На счет того что не передаються именно последнии данные это я написал неверно. Из эксперементов стало видно, что могут не передоваться обсолютно любые 64 байта внутри 512-ти байтового пакета.
Go to the top of the page
 
+Quote Post
Axel
сообщение Feb 8 2014, 11:41
Сообщение #4


Местный
***

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



Цитата(yashok @ Feb 7 2014, 13:43) *
...НИЧЕГО НЕ ПОМОГАЕТ!!!

А может проблема с другой стороны? Попробуйте поставить какой-нибудь сниффер (напр. Bus Hound) и посмотреть - не передается или не принимается..
Go to the top of the page
 
+Quote Post

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

 


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


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