Требуется реализовать USB mass storage device на основе evaluation kit (EK). (файловая система подключена). В примерах StellarisWare имеется bulk device, usb_host_msc и ряд других, но примеров mass storage device нет ни там, ни при поиске в Интернете... Bulk device определяется на стороне РС, но требует установки драйвера. MSC host на стороне PC не определяется.
Читая описание ROM-функций и примера usb_host_msc, сделал следующее: - настройка USB, GPIO, DMA как в примере - заполнение структуры tUSBDMSCDevice, как предлагается в описании ROM-функций (вместо всех callback-функций стоят заглушки с записью логов) - вызов функций: USBStackModeSet(0, USB_MODE_OTG, ModeCallback); pv = USBDMSCInit(0, &g_sMSCDevice); - обработчик прерывания из примера USB0OTGModeIntHandler настроен для вызова по вектору. Вторая функция возвращает ОК, но никакой реакции на стороне РС не возникает. На callback-функции не попадает.
С USB ранее я не занимался, разбираюсь во всём с нуля. Поэтому возникают вопросы: - Для реализации mass storage надо прописывать отсутствующий в примерах DEV MODE или это делается на основе OTG MODE? - На основе какого примера можно с минимальными затратами реализовать mass storage? Какая примерно будет последовательность вызова функций для инициализации режимов USB? - Где можно / можно ли вообще посмотреть готовый пример?
Спасибо.
|