Статус:
Offline
Реєстрація: 17.08.2005
Повідом.: 48741
Реєстрація: 17.08.2005
Повідом.: 48741

- 🟠 00:59 Загроза ударних БпЛАЗагроза БпЛА типу «Шахед»#м_Харків_та_Харківська_територіальна_громада
- #1
Кто-то пробовал STM32 самопрошивать из главного кода, а не по буту?
Задался интересным вопросом - все для обновления юзают перезагрузку с зажатым бутом...
Ну стандартный подход, ок. А кто-то пробовал делать вход в лоадер из основной программы?
Там какое дело... практически, если лоад с носителя, или по воздуху - дважды зашиваются копии кода для периферии.
Один раз USB-host|радиоканал - в бут секции, и потом ещё раз - уже в главной, если она с ними работает.
Вопрос в чем - как правильно сделать это один раз? К примеру, инит USB покласть в бут-секцию и в основном коде хардкодить параметром (из того же бутлоадера) адрес ссылки на неё.
По идее, если тип данных будет совпадать - такое обращение возможно. Бутлоадер точно знает где лежит что. И оно там будет лежать всегда. Он передаст абсолютно валидный адрес.
Тогда в основной секции не надо будет второй раз инитить эту срань.
Как вам такое, Илоны Маски?
Задался интересным вопросом - все для обновления юзают перезагрузку с зажатым бутом...
Ну стандартный подход, ок. А кто-то пробовал делать вход в лоадер из основной программы?
Там какое дело... практически, если лоад с носителя, или по воздуху - дважды зашиваются копии кода для периферии.
Один раз USB-host|радиоканал - в бут секции, и потом ещё раз - уже в главной, если она с ними работает.
Вопрос в чем - как правильно сделать это один раз? К примеру, инит USB покласть в бут-секцию и в основном коде хардкодить параметром (из того же бутлоадера) адрес ссылки на неё.
По идее, если тип данных будет совпадать - такое обращение возможно. Бутлоадер точно знает где лежит что. И оно там будет лежать всегда. Он передаст абсолютно валидный адрес.
Тогда в основной секции не надо будет второй раз инитить эту срань.
Как вам такое, Илоны Маски?