USB MSD

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
Открыл глаза
Аватара пользователя
Сообщения: 48
Зарегистрирован: Пн июл 31, 2017 10:53:04

Сообщение Cheeseman »

Всем привет :) Вопрос такой. Хочу прикрутить USB bootloader в проект (тип вставил флешку в девайсину, а она оттуда уже подтягивает прошивку). Начал гуглить USB что как и куда делается. В итоге подавляющее большинство сайтов - откройте куб. дальше не читаю, хочу на регистрах написать, для лучшего понимания работы. Ну и собственно вопрос - может кто знает нормальную библиотеку на регистрах - USB MSD, чтобы поковырять посмотреть, как работает или нормальное руководство
Реклама
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1525
Зарегистрирован: Чт июн 10, 2010 20:11:19

Сообщение COKPOWEHEU »

Для stm32f103, stm32l151 https://habr.com/ru/articles/549016/ Ну и теории немножко рассказываю.
А вот про fat16: https://habr.com/ru/articles/654853/
Ну и учтите, что вам ведь наверное понадобится файловая система (хотя при желании можно и через dd копировать, но зачем тогда именно MSD). А файловая система хранит отдельные куски файлов в разных местах, а в других местах - связи между ними. Например, компьютер может передать сначала 10-й блок, потом 8, потом 14, потом 1, и только потом рассказать в каком порядке они должны идти.
Как результат, вам придется выделить во флеш-памяти кучу места, куда сначала набросать фрагменты прошивки, и только потом отсортировать их и склеить воедино. Причем обратите внимание, что даже для fat16 надо флешку не менее 30, кажется, килобайт, иначе комп захочет ей пользоваться как fat12. Да, там такой дурацкий способ определения файловых систем.
Возможно, решением будет MTP - извратный протокол, использующийся в смартфонах. Вроде как там сразу указывается какой части файла принадлежит транзакция. А еще он медленный (для прошивки контроллера это не критично) и нестабильный. Но о внутреннем устройстве я сказать ничего не могу - не ковырял.
Реклама
Родился
Сообщения: 10
Зарегистрирован: Вс янв 18, 2009 20:30:00

Сообщение xDriver »

[uquote="Cheeseman",url="/forum/viewtopic.php?p=4483527#p4483527"]может кто знает нормальную библиотеку на регистрах[/uquote]
я боюсь спросить - у вас основной проект, весь "на регистрах" реализован ?
Открыл глаза
Аватара пользователя
Сообщения: 48
Зарегистрирован: Пн июл 31, 2017 10:53:04

Сообщение Cheeseman »

Спасибо большое, почитаю)) Ага, весь проект на регистрах :)
Реклама
Эиком - электронные компоненты и радиодетали
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1525
Зарегистрирован: Чт июн 10, 2010 20:11:19

Сообщение COKPOWEHEU »

[uquote="xDriver",url="/forum/viewtopic.php?p=4483583#p4483583"]я боюсь спросить - у вас основной проект, весь "на регистрах" реализован ?[/uquote]
А что в этом такого?
Реклама
Мудрый кот
Сообщения: 1731
Зарегистрирован: Вт авг 15, 2017 10:51:13

Сообщение jcxz »

[uquote="Cheeseman",url="/forum/viewtopic.php?p=4483527#p4483527"]может кто знает нормальную библиотеку на регистрах - USB MSD, чтобы поковырять посмотреть, как работает или нормальное руководство[/uquote]Качаете IAR\Examples. И там находите целую кучу примеров различных USB-устройств для разных МК. И всё это счастье - совсем безкубово. :)))

Добавлено after 3 minutes 28 seconds:
[uquote="COKPOWEHEU",url="/forum/viewtopic.php?p=4483699#p4483699"]А что в этом такого?[/uquote]"папа. а инопланетяне есть? Нет сынок. Это фантастика." 8)
Реклама
Ответить

Вернуться в «ARM»