2014-02-03 5 views
0

Я разработал встроенное устройство, использующее mkroe-панель разработки stm32f207vg. Я новичок в этом, поэтому плз медведь со мной. Мой вопрос заключается в том, что позже (после публикации на публике) я хочу, чтобы конечные пользователи моего устройства обновили программное обеспечение устройства, как я могу включить эту функцию. Например, когда я улучшаю программное обеспечение устройства и хочу, чтобы пользователи обновили устройство с помощью нового .hex-файла с помощью USB-порта. Я предполагаю, что мне нужно создать настольное приложение. что я делаю, чтобы сделать приложение? Во время разработки я загружаю приложение загрузчика Mikroe для отправки/установки шестнадцатеричного файла на свое устройство. Я хочу сделать подобное приложение. Я смотрел протокол DFU. У Stm есть демо-приложение Defuse. Это приложение для этой цели. Я хочу создать собственное приложение для этого. С чего начать?Включить конечный пользователь для обновления прошивки mikroe stm32f207vg

ответ

1

Я создал программу на C#, которая позволяет моим конечным пользователям обновлять прошивку. Я сделал это путем обратного проектирования программы Dufse, которая может быть найдена here. Весь исходный код включен. This link описывает протокол.

Моя плата имеет переключатель на булавке boot0, который позволяет MCU загружаться в «системную память». При загрузке в «системную память» USB-интерфейс MCU будет запускаться как устройство DFU. Вам нужно будет установить драйверы ST DFU на ваш хост-компьютер, а затем вы можете использовать программу Dfuse или свою собственную программу для обновления прошивки.

Я также нашел this discussion полезный, но не позволяйте ему привести вас в заблуждение. Документы ST являются реальным источником информации.

Есть и другие способы. Знаете ли вы, что ваше микропрограммное обеспечение действительно может записывать во флэш-память? Вы можете написать свой собственный загрузчик, который использует USART, USB, Ethernet или другое периферийное устройство, чтобы запрограммировать устройство, записав его на вспышку. Однако будьте осторожны, чтобы не перезаписывать загрузчик. Кажется, что ST это «программирование в приложении» (IAP).

Это может быть для различных микроконтроллеров, но принципы остаются те же.

Надеюсь, что это даст вам начало, которое вы ищите.

+0

Большое вам спасибо за подробный ответ! Я посмотрю ссылки, которые вы предоставили. –