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

 
 
> at90usb1287 - малая скорость передачи по USB, Передача данных в режиме CDC USB
Mty
сообщение Nov 23 2010, 09:14
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 151
Регистрация: 19-12-04
Из: Москва
Пользователь №: 1 560



Привет!

Необходимо за 0.1 сек передать с at90usb1287 в комп массив данных из 600 чисел типа int
Я пользуюсь для этого printf()

Код
    
while( buffindex < buffmax ){
printf( "%x %x\r\n", databuff[ buffindex ], databuff[ buffindex + 1 ] );  
buffindex += 2;
}


И получаю очень малую скорость - порядка 100 байт за 0.1 секунды.
А нужно порядка 20 килобайт в секунду.
Посоветуйте, как можно увеличить скорость, что я делаю не так?

За основу я взял AT90USBxxx CDC demonstration с сайта Atmel.
Функцию вывода буффера я поместил в функцию cdc_task()

Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Xenia
сообщение Nov 23 2010, 09:28
Сообщение #2


Гуру
******

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



А приём-то у вас работает? А то как-то странно: printf обычно передает по UART, а не по USB.
Go to the top of the page
 
+Quote Post
Mty
сообщение Nov 23 2010, 09:43
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 151
Регистрация: 19-12-04
Из: Москва
Пользователь №: 1 560



Цитата(Xenia @ Nov 23 2010, 12:28) *
А приём-то у вас работает? А то как-то странно: printf обычно передает по UART, а не по USB.


Да, работает.
Где-то видимо putch переназначен для работы через USB. Не искал где.

Цитата(kovigor @ Nov 23 2010, 12:33) *
Просто ради интереса посмотрел, какая предельная скорость передачи у моего фабричного переходничка на ИС вроде FT232. Написано, что 128000 Бит/сек. А 20 КБайт - это 200000 Бит/Сек. Чувствуете разницу ?


Не совсем близкая параллель. FT232 это конвертер в RS232 насколько я помню, а у at90usb1287 на борту хардверный USB контроллер на 12mbit/s. На www.avrfreaks.net видел сообщения что реально у людей он работал до 7 мбит в одну сторону и до 4 в дуплексе. Правда с правкой родных библиотек от Atmel.
Go to the top of the page
 
+Quote Post
shrek
сообщение Nov 23 2010, 18:20
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 125
Регистрация: 1-12-08
Из: г. Орел
Пользователь №: 42 126



Цитата(Mty @ Nov 23 2010, 12:43) *
Да, работает.
Где-то видимо putch переназначен для работы через USB. Не искал где.



Не совсем близкая параллель. FT232 это конвертер в RS232 насколько я помню, а у at90usb1287 на борту хардверный USB контроллер на 12mbit/s. На www.avrfreaks.net видел сообщения что реально у людей он работал до 7 мбит в одну сторону и до 4 в дуплексе. Правда с правкой родных библиотек от Atmel.


А вы бы не могли бы по подробнее про последнее написанное)))
Сам столкнулся с ограничением USB to Serial максимум 64 килобайта в секунду из-за ограничения спецификацией USB на конечные точки с BULK типом передачи данных. Для команд скорость вполе годится, для сыплющихся данных маловато)))
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Mty   at90usb1287 - малая скорость передачи по USB   Nov 23 2010, 09:14
|- - Mty   Цитата(shrek @ Nov 23 2010, 21:20) А вы б...   Nov 24 2010, 08:55
||- - zhevak   Цитата(Mty @ Nov 24 2010, 13:55) Попробов...   Nov 24 2010, 09:19
|- - mempfis_   Цитата(shrek @ Nov 23 2010, 22:20) Сам ст...   Nov 24 2010, 09:23
|- - shrek   Цитата(mempfis_ @ Nov 24 2010, 12:23) Это...   Nov 25 2010, 07:08
- - kovigor   Цитата(Mty @ Nov 23 2010, 13:14) А нужно ...   Nov 23 2010, 09:33
- - zhevak   Цитата(Mty @ Nov 23 2010, 14:14) И получа...   Nov 23 2010, 10:11
|- - Xenia   Цитата(zhevak @ Nov 23 2010, 13:11) К ста...   Nov 23 2010, 11:57
||- - demiurg_spb   Передавайте бинарный массив сразу без всяких print...   Nov 23 2010, 12:00
|||- - MrYuran   Цитата(demiurg_spb @ Nov 23 2010, 15:00) ...   Nov 23 2010, 12:09
|||- - Mty   Цитата(demiurg_spb @ Nov 23 2010, 15:00) ...   Nov 23 2010, 13:14
|||- - zhevak   Цитата(Mty @ Nov 23 2010, 18:14) Спасибо....   Nov 23 2010, 13:59
||- - zhevak   Цитата(Xenia @ Nov 23 2010, 16:57) Есть г...   Nov 23 2010, 12:24
||- - Xenia   Цитата(zhevak @ Nov 23 2010, 15:24) Знает...   Nov 23 2010, 12:45
|- - Mty   Цитата(zhevak @ Nov 23 2010, 13:11) Отдел...   Nov 23 2010, 12:44
- - ARV   а вы не рассматривали такую возможность: в WinAVR ...   Nov 24 2010, 09:51
|- - Mty   Цитата(ARV @ Nov 24 2010, 12:51) а вы не ...   Nov 24 2010, 20:37
- - Xenia   А вы еще "double bank mode" включите (эт...   Nov 25 2010, 00:02
- - Mty   Цитата(Xenia @ Nov 25 2010, 03:02) А вы е...   Nov 25 2010, 08:36
- - mempfis_   Цитата(Mty @ Nov 25 2010, 12:36) А как по...   Nov 25 2010, 08:48
- - Mty   Цитата(mempfis_ @ Nov 25 2010, 11:48) Это...   Nov 25 2010, 10:28
- - shrek   Цитата(mempfis_ @ Nov 25 2010, 11:48) Это...   Nov 25 2010, 13:02
- - mempfis_   Цитата(shrek @ Nov 25 2010, 17:02) С друг...   Nov 25 2010, 13:32
- - shrek   Цитата(mempfis_ @ Nov 25 2010, 16:32) С a...   Nov 25 2010, 13:37
- - mempfis_   Цитата(shrek @ Nov 25 2010, 17:37) Ну воо...   Nov 25 2010, 13:53


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

 


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


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