Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
(to vitalyn and all)Классы и endpoint USB - как нужно делать? (продолжение)
Отправлено
nikola 12 мая 2008 г. 09:02
Прошляпил время, когда отвечали на вопрос - но ответ очень нужен - в голове пока каша.
Предыстория:Добрый день!
Реализовываю интерфейс общения компьютера с железкой(на конце AT32AP7000 с интегрированым USB hi-speed).
Требуется качать большие объемы данных и быстро. По протоколу понадобится где-то 4ep.
Какой класс USB device посоветуете использовать(какие быстрее)?
Есть ли ограничение у CDC по скорости?
=====================
Пересылку какую надо - bulk или isochronous? Быстро - это в каком смысле - много мегабит в секунду или с минимальной задержкой?
У USB главная проблема - пересылка из девайса в хост - хост слишком редко (не чаще чем каждую миллисекунду) спрашивает у девайса, есть ли у того что-то для пересылки в хост (IN). Радует только то, что bulk может быть очень длинным пакетом.
CDC тоже bulk пересылает.
=====================
надо по-разному. В девайс:
быстро по скорости - больше 12Мбайт/с (хотелось бы больше 20) большими пакетами(я так понимаю это bulk).
быстро по времени -маленькими пакетами (пара -тройка байт).
Режимы ест-но не одновременные(в зависимости от режима)..
Из девайса предположительно так же + можно ли сделать что б комп автоматом получал небольшие пакеты в свой буфер (про не чаще чем каждую милисекунду - вроде бы хватит - в комп это не так важно)
Что именно с классом - вообще любой и общение через deviceIoControl?
Какие ендпойнты делают в таких случаях?
Про свой драйвер уже понял - накачал софта, раздобыл бестолковую книжку, которая заканчивается СDC и Hid'om - осталось определиться со структурой.
Составить ответ | Вернуться на конференцию
Ответы