Цитата(NikP @ Dec 16 2012, 04:27)

В описании работы USB в режиме Bulk сказано, что макс. размер пакета 64 байта для этого режима. Мне надо передать 4 К данных. Так как данные передаются фреймами 1 мс, то получается, что на передачу 64 байтов уходит 2 мс
В течении одного фрейма устройство может передать по балку до 19 пакетов данных, т.е. до 1.2к. Для этого должны выполняться два условия:
- Другие устройства, если они есть, молчат и не пытаются передать что-то свое в то же время
- Устройство обслуживает запросы быстро. Если устройство замешкается, то планировщик хоста отложит обмен и продолжит его в следующем фрейме.
Второе условие является наиболее критическим. Чтобы его выполнить, желательно обрабатывать запросы по прерываниям и использовать двойной буфер ("пинг-понг"), мгновенно подставляя заранее подготовленый пакет.