你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于STM32的OTA软件框架

[复制链接]
攻城狮Melo 发布时间:2023-3-21 16:38
1. 前言
2 u3 l/ L8 c* _4 M' Q  I* r$ x芯片:STM32F407ZGT6
: v+ }5 z8 ]/ x' u软件:STM32CubeMX、Keil、Visual Studio Code& f7 k- p6 x3 q. A+ I! R
Kiel的函数跳转极不方便,我个人一般使用Visual Studio Code编辑代码,插件生成注释
0 K( o7 c0 m+ y(第一节有点乱,回头加个框架图和流程图)3 C6 }- E# w/ g9 e$ T6 \

0 f" m7 c, I  m9 w6 W' @# v  v1 p2. 分区设置

' z* F7 N$ @2 w  p启动代码就是引导程序。但一般不叫BooLoader。9 P7 r; _  G! J3 g, K% a
STM32先执行启动程序,跳转到0x80000000,然后执行BootLoader(本质裸机程序). q, [; s2 x$ y. A% Y8 _
, |# K% f6 R3 O2 z+ P% m
{TY{H[280VPC2YI463FWM%6.png
$ G9 k% h% c" p8 ?! Y    * P; j# l4 X# P" E  ]7 o
3. 思维逻辑
: @. F' d5 T7 }( m3 u% G1 e将BootLoader程序下载到芯片。
2 J) Z& j  z6 K$ i% b2 o复位,启动代码运行到0x08000000, 执行BootLoader
+ ~# v% u/ G3 ]% s# U0 R5 T接收App固件! E2 U" s  o' E
BootLoader跳转到App1或App2入口地址,开始运行App2 B# h  O7 Z3 D4 C, Z
4. 开发流程

5 Q- w; ~: h/ U8 I; ^& C5 L  J第一步完成内部flash读取。
5 a' c4 ^! j: S: A5 X# b第二步完成程序跳转。3 C; D8 t, Q: L" Z# p
第三步完成串口接收固件,写入flash。5 M1 K9 {# `- ]# B
第四步完成EC20接收固件和通过串口把固件发送给STM32。
- j2 N, ?& X& d, _; X————————————————
% N3 P! y* q/ l# b  Y' q版权声明:lljwork2021
; S- h0 ~3 l% D( o如有侵权请联系删除" v2 e: j) M: K. d% T
, ~9 O* R/ s3 [8 A; q2 ^; ^

* Q  l% m$ G# k. s5 d, P
# j3 p$ M& }4 e# n: T: i
收藏 评论0 发布时间:2023-3-21 16:38

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版