|
Moks455
|
|
USB загрузчик stm32f4. Кто делал?20.10.2013, 14:39. Показов 25591. Ответов 27
Метки нет (Все метки)
Хочу сделать возможность прошивки устройства через USB (mass storage).
Видел есть программа для генерации usb загрузчика для stm32f1. Пробовал прикрутить несколько примеров USB mass storage. Безрезультатно( Может кто-то делал подобное, и может поделиться проектом? |
|
| 20.10.2013, 14:39 | |
|
Ответы с готовыми решениями:
27
USB Audio + USB CDC на одной STM32F4 Свой загрузчик в STM32F4 А делал ли кто-нибудь частотомер на MSP430? |
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
||
| 20.10.2013, 15:11 | ||
0
|
||
|
Moks455
|
|
| 20.10.2013, 16:27 | |
|
Сильно сложно для конечного пользователя. Проще как во флешку залить, и не ставить никаких лишних программ.
|
|
|
1 / 1 / 0
Регистрация: 06.12.2016
Сообщений: 3,946
|
||
| 20.10.2013, 20:26 | ||
0
|
||
|
Moks455
|
|
| 20.10.2013, 21:47 | |
|
http://vg.ucoz.ru/publ/programmyrovanie ... b/9-1-0-22
Насколько понимаю, так. |
|
|
Sorok
|
|
| 21.10.2013, 13:22 | |
|
А можно сделать так, чтобы прошивать через usb, но не изменяя напряжения на boot0 и без собственного встроенного загрузчика?
|
|
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
||
| 21.10.2013, 13:35 | ||
Только загрузчик придётся полностью писать самому и в отдельном секторе Ftosh его хранить.
0
|
||
|
Moks455
|
|
| 21.10.2013, 13:48 | |
|
Успех есть. Взял пример USB карт-ридера, переписал функции записи/чтения. Подсунул на чтение загрузочную область диска. Определяется как носитель. Читаю файл который подсунул. С записью пока туговато. Отказывается кушать файлы больше 512 байт. Разбираюсь, правлю загрузочную область, пытаюсь обмануть систему.
И да, действительно, загрузчик будет лежать в первой странице флеша. |
|
|
Sorok
|
||
| 21.10.2013, 14:11 | ||
Только загрузчик придётся полностью писать самому и в отдельном секторе Ftosh его хранить. но чтобы прошить загрузчик нужно один раз будет изменить на ножке boot0, а если у меня флешка на stm32 уже в корпусе |
||
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
||
| 21.10.2013, 14:13 | ||
0
|
||
|
Moks455
|
||
| 21.10.2013, 14:14 | ||
Загрузчик нужен не для первой прошивки. Например если вышла новая версия программы, а устройство у пользователя. Подключил юсб, кинул файл и прошил. |
||
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
||
| 21.10.2013, 14:15 | ||
0
|
||
|
Moks455
|
||
| 21.10.2013, 14:16 | ||
Вы неправильно поняли. В устройстве нет карточки. Пример я взял карт-ридера, но вместо того чтоб писать на карточку, я пишу во флеш микроконтроллера. При копировании файла на "сьемный носитель" будет прошиваться прибор. |
||
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
||
| 21.10.2013, 14:27 | ||
Теперь понятно :-) У NXP в их Кортексах так сделано, только они это в Boot ROM засунули. Про подсоединении платы LPCXpresso к компьютеру по USB появляется "диск" с firmware на нём. Причём и на чтение, и на запись.
0
|
||
|
0 / 0 / 0
Регистрация: 26.01.2013
Сообщений: 208
|
||
| 21.10.2013, 16:15 | ||
это не то что нужно? у ST даже где-то пример видел по SFU
0
|
||
|
Moks455
|
|
| 22.10.2013, 00:42 | |
|
Все-же застрял(((
Не получается скормить большие файлы, точнее нужно делать внутренний RX буфер не меньше принимаемого файла. И получается что даже если занять всю оперативу, не можно закачать файл больше 100 кб. Смотрел сниффером, ожидал увидеть заливку файла кусками, да хоть даже кластерами. А нет, сначала 512 байт переписал каталог, потом 512 таблицу фат, а потом весь файл одной посылкой. Как тогда пример работал как картридер? Как кормить большие файлы больше мегабайта??? Может кто все-же ковырял mass storage? help... |
|
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
||
| 22.10.2013, 00:48 | ||
На тайминги при записи на SD-карту тоже обратите внимание, когда будете сниффить. Наверняка для записи во Ftosh нужны дополнительные задержки, как и для записи на SD. P.S. Если у Вас STM32F407, то файлы больше мегабайта не понадобятся.
0
|
||
|
Moks455
|
|
| 22.10.2013, 01:07 | |
|
я пока никуда не пишу, просто читаю данные выводя некоторые данные в UART. По программе видно что при записи можно задерживать сколь угодно( там стоит while() пока карта занята). При выведении каких-либо данных в юарт при чтении все сваливается конечно - задержки большие.
мне хотя-бы больше 100 кб передать. |
|
|
Moks455
|
|
| 24.10.2013, 12:38 | |
|
Сделал. Оказалось UART1 мешал работе ЮСБ но не всегда. Хоть нога PA9 и не настроена на ЮСБ, но отправкой данных в порт при определенных обстоятельствах отваливали ЮСБ.
Маленькие файлы записывались, а при больших пакетах всегда обрывались. Вся нигия загрузчика в файле usbd_storage_msd.c [124.8 Кб] |
|
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
||
| 24.10.2013, 13:57 | ||
А я правильно понимаю, что загрузчик Вы всё-таки решили не в самый первый сектор класть (чтобы не мешать нормальным проектам жить по адресу 0x08000000), а скомпилировали его для следующего сектора, со смещения 0x08008000?
0
|
||
| 24.10.2013, 13:57 | |
|
Помогаю со студенческими работами здесь
20
Кто делал обрезание? может кто делал? Кто делал at*e2ipl ? Лаба, кто делал? Кто делал новый подоходный в РБ? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|