Slavka_online
@Slavka_online
Интересная личность

Как организовать алгоритм передачи по USB?

В общем usb будет использоваться для считывания данных с контроллера на пк и записи с пк на контроллер, все функции передачи уже описаны, язык С на мк и С++ на пк, контроллер lpc , пока есть в задумках делать так:
Buffer[0] = команда read/write
Buffer[1] = количество байт,
Остальное данные. Или есть варианты лучше?
  • Вопрос задан
  • 448 просмотров
Пригласить эксперта
Ответы на вопрос 2
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
Славка почитай какие бывают типы обмена данными по USB, например здесь: wiki.osdev.org/Universal_Serial_Bus
Ответ написан
Комментировать
@monah_tuk
ты через отдельный EP планируешь передавать или использовать EP0? Если второе, то размер посылки - это часть setup пакета. Так же команду можно впихнуть в value или index поля setup реквеста. Я бы сделал так: если index == 1, значит это первая посылка - начинаем собирать данные, считываем сколько дали и так, пока весь пакет не вычитается. Размер всего пакета передать, к примеру в value - просто за один setup реквест может не получиться все данные передать.

Признак начала посылки может пригодиться, что бы прервать накопление данных, если, к примеру, был какой-то сбой на удалённой стороне (комп ребутнулся и начал работать заново).

А вообще, www.beyondlogic.org/usbnutshell/usb1.shtml и microsin.ru/content/view/1107/44 в помощь.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы