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

 
 
> USB Mass storage, Эмуляция Mass storage, Спецификация
antoha.by
сообщение May 6 2012, 19:55
Сообщение #1





Группа: Новичок
Сообщений: 2
Регистрация: 6-05-12
Пользователь №: 71 717



Доброе утро/день/вечер.
Делаю USB устройство, подключал, передавал/получал данные, сделал как простую Mass storage "флэшку" т.е. данные хранились записывались во внутреннюю память.
Теперь возник вопрос: Как сделать эмуляцию этой самой "флэшки", т.е. чтобы данные не хранились во внутренней памяти и не записывались, а выдавались программно.
Привожу пример: При подключении usb mass storage устройства оно давала доступ на только чтение один файл, внутри которого хранилось, например, случайное число, которое было сгенерировано при включение, или текущая температура, полученная с датчика. Вообщем всё что угодно.
Для этого мне понадобится:
Сделать битовую копию какого-нибуть диска с определённой файловой системой (например FAT, чтобы читалось везде) на том диске зарание должен быть подготовлен файл, в который мы будем записывать данные.
Затем эту копию вшить в программу.
И теперь, то что мне и нужно, научить мой контроллер работать с Mass storage интерфейсом. т.е. получать от него все пакеты и правильно на них отвечать. т.е. если хост запросит этот файл, то контроллер должен подготовить ответ и вшить в него, то что нужно.
Проблема вот в чём, я незнаю как точно работает Mass storage интерфейс
я читал вот это: http://www.usb.org/developers/devclass_doc...massbulk_10.pdf
Да, там написано про дескрипторы, да там описана структура пакета, да там написано про то, что CSW Должен всегда идти после CBW
Но я так и не понял, как по этому пакету определить, что передавать хосту.
Если вас не затруднит, помогите мне разобратся с этим.
Для интересующихся:
Контроллер: PIC18F4550
Язык программирования: C18
Go to the top of the page
 
+Quote Post



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

 


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


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