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

 
 
> STM32: загрузка загрузчика, как обновить сам бутлоадер без программатора
Ruslan1
сообщение Jun 6 2016, 22:16
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Здравствуйте!

как это делается красиво? Есть бутлоадер и основная программа. Обновляем основную программу через файл- если бутлоадер видит файл на диске, то программирует камень согласно содержимомму данного файла (кроме области бутлоадера).
Хочется точно так же обновлять сам загрузчик, из файла.
Конкретно нужно для STM32F4, но тут вряд ли что-то особенное, отличное от других.

Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
aaarrr
сообщение Jun 6 2016, 22:50
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Добавьте еще один "нижний" загрузчик. Работать будет так:
1. "Верхний" загрузчик записывает свое обновление в отдельную страницу памяти и вызывает сброс
2. "Нижний" проверяет CRC и версии образов "верхнего", затем копирует новый образ в рабочую область и передает ему управление
"Нижний" загрузчик пишется один раз и никогда не обновляется.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Jun 7 2016, 03:04
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(aaarrr @ Jun 7 2016, 04:50) *
"Нижний" загрузчик пишется один раз и никогда не обновляется.

Можно и без этого ограничения обойтись.
Очевидно имеется в виду, что в составе устройства имеется некое устройство хранения (УХ) (файловая система или просто например SPI-флешка).
Основной бутлоадер (ОБ) сканирует УХ:
1. Если обнаруживает новое рабочее ПО, записывает его в область рабочего ПО флешь программ.
2. Если обнаруживает новый ОБ, то ищет на этом же УХ вспомогательный бутлоадер (ВБ) (скомпилённый для выполнения в области рабочего ПО флешь программ). Записывает ВБ в область рабочего ПО флешь программ. Передаёт ему управление. ВБ сканирует УХ, обнаружив новый ОБ, записывает его в область ОБ флешь программ и передаёт ему управление.
Единственный минус здесь - такое обновление ОБ небезопасно.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Ruslan1   STM32: загрузка загрузчика   Jun 6 2016, 22:16
|- - Сергей Борщ   QUOTE (jcxz @ Jun 7 2016, 06:04) Можно и ...   Jun 7 2016, 06:03
|- - Ruslan1   Спасибо, буду думать. несрочно, так что еще и поте...   Jun 7 2016, 10:24
- - menzoda   Загрузчик может и сам себя обновить. Правда, возра...   Jun 7 2016, 13:35
|- - Ruslan1   Цитата(menzoda @ Jun 7 2016, 16:35) Загру...   Jun 7 2016, 17:41
|- - jcxz   Цитата(Ruslan1 @ Jun 7 2016, 23:41) И нуж...   Jun 8 2016, 04:18
|- - Kabdim   Цитата(jcxz @ Jun 8 2016, 07:18) Какой см...   Jun 8 2016, 07:29
|- - jcxz   Цитата(Kabdim @ Jun 8 2016, 13:29) Копиро...   Jun 8 2016, 08:09
- - Kabdim   Безопасный вариант уже был предложен - трёхуровнев...   Jun 8 2016, 03:16
- - ViKo   Поскольку функция загрузчика очевидна и однозначна...   Jun 8 2016, 05:43
|- - Сергей Борщ   QUOTE (ViKo @ Jun 8 2016, 08:43) Поскольк...   Jun 8 2016, 06:16
- - Kabdim   Способ загрузить прошивку откуда-то в мк остался и...   Jun 8 2016, 10:01
|- - jcxz   Цитата(Kabdim @ Jun 8 2016, 16:01) Способ...   Jun 8 2016, 12:56
- - Kabdim   Везет вам, у вас флеша хватает на 2 копии основной...   Jun 8 2016, 14:23
- - jcxz   Цитата(Kabdim @ Jun 8 2016, 20:23) Везет ...   Jun 9 2016, 02:45


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

 


RSS Текстовая версия Сейчас: 30th July 2025 - 07:20
Рейтинг@Mail.ru


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