Как загрузить программу с внешней флэш-памяти STM32L4 - PullRequest
0 голосов
/ 27 августа 2018

Привет EveryOne, Я пытаюсь разработать прошивку по воздуху (FOTA) на STM32L4 MCU. Здесь я хочу загрузить / загрузить MCU с новой загруженной микропрограммой, и микропрограмма загружается и сохраняется во внешней флэш-памяти, используя для этого связь SPI. Итак, мне нужно предложение, как я могу сделать это для обновления прошивки после загрузки его во внешнюю флэш-память, а затем запустить MCU в качестве новой обновленной прошивки.

Спасибо ...

Ответы [ 2 ]

0 голосов
/ 27 августа 2018

Полагаю, вы хотите разработать IAP. До того, как я разработал приложение IAP через CanBus. Прежде всего, вам нужен программный загрузчик с указанным размером флэш-памяти. Затем вы проверяете в этом коде, есть ли программа. Если кода нет, то вам придется ждать нового кода по протоколу связи. Или проверьте внешнюю вспышку, есть ли программа. На мой взгляд, следующая ссылка поможет вам. С помощью этой ссылки легко разработать IAP самостоятельно. IAP развивающийся

0 голосов
/ 27 августа 2018

Распространенным способом решения этой проблемы является наличие загрузчика. Это часть прошивки в виде отдельной программы (отдельный проект и т. Д.), Которая запускается перед вашим основным приложением и находится в отдельной области внутренней флэш-памяти. Чаще всего эта область никогда не затрагивается после производства - загрузчик не изменяется - хотя вы можете подходить к нему так, как вам требуется.

Когда запускается загрузчик, он может нести ответственность за следующее (не все, возможно, вам нужно, но я перечисляю возможности, так как кажется, вы можете найти их полезными):

  • Проверка наличия загруженного приложения внутри MCU, если оно действительно и его версия,
  • Проверка наличия загруженного приложения во внешней флэш-памяти, если оно действительно, какая у него версия,
  • Основываясь на двух вышеперечисленных шагах: определение необходимости обновления внутреннего приложения и, если да, его обновление (удаление области флэш-памяти, занимаемой приложением во внутренней флэш-памяти, запись приложения из внешней флэш-памяти с последующей проверкой),
  • После завершения - перейти к приложению.
...