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

STM32HEX合并及一键烧写

[复制链接]
ruigewei5 发布时间:2020-2-17 14:33
在某些场景我们需要将多个hex文件合并成一个hex文件烧写到芯片中,比如远程升级。
! ?% h7 _+ y$ P
在做远程升级的时候,程序组合一般是IAP加APP的形式,本文只讲解最简单的单个IAP加单个APP的情况,实际上这个明白了,多个IAP加多个APP的情况也就是一样的方法。

$ j. {: T0 h0 h+ ^- a" s& I
(http://mp.weixin.qq.com/s/5GvfDs-ehy7--7CjDda0zQ)J-Link驱动提供的J-Flash工具了,下面我将使用bat批处理脚本配合J-Flash命令自动化的合并两个hex文件并将其烧写到芯片中。
本文约定:你已经知道两个hex文件在芯片flash中的存储分布,并且已经了解远程升级相关知识,芯片型号为STM32F407ZET6,IAP程序烧写及运行地址为0x08000000,APP程序烧写及运行地址为0x08008000,注意两个地址都需要在Keil MDK或其它软件中编译程序前设置好,APP程序的地址需要与你程序中定义的跳转地址一致,否则程序无法运行。
: z: c, X( _  X; b2 M
1.新建一个文件夹,我这里取名为《hex合并及一键烧写》,然后在此文件夹中创建三个文件夹及一个bat批处理脚本,如下图:
! ^, b! l# e1 `7 o" z3 p$ m
111.jpg

, w' X4 Q* d  G# ]7 _& q& m' Y
2.进入J-Link驱动安装目录,拷贝下图框选文件到TOOL文件夹中,这些文件就是J-Flash运行需要的东西
9 W1 \- e: \0 M; f, D3 k' y2 ~
222.jpg
! A' C5 D! R( D
3.创建jflash工程,保存到PRJ文件夹中,操作如下

! U/ D# m- D  i/ S( X
333.jpg
9 n# m! L) {( G4 M0 o9 [
444.jpg
5 m3 o. b. ~" C2 f
555.jpg
4.编写脚本程序,程序中用到的所有命令,都可以在J-Flash工具中按F1打开帮助文档找到,打开前面创建的bat脚本,然后输入以下的内容保存即可

8 Z' r# R) }: r- F. ?5 Z* N9 R" V
@ECHO OFF
ECHO Open a project and data file, startauto processing and exit
ECHO. %换行%
::打开J-Flash工具,加载jflash工程,加载hex文件并指定地址,将合并后的hex另存(非必要),最后烧写到芯片中并运行
TOOL\JFlash.exe-openprjPRJ\jlinkCfgFile.jflash -openHEX\iap.hex,0x08000000-mergeHEX\app.hex,0x08008000 -saveasHEX\iap_app.hex -auto -startapp -exit
IF ERRORLEVEL 1 goto ERROR
goto END
:ERROR
::烧写成功直接退出,烧写失败则给出提示
ECHO J-Flash ARM:  Error!
pause
:END

1 \5 x4 S  K7 o' }
5.将要合并写入的hex文件放到HEX文件夹中

1 {( p% N* q# V# P
666.jpg
  K  s- }& q5 G, E+ J% P. {
6.完成以上的步骤,以后烧写程序就只需要执行一下脚本就完成了多个hex文件的一次性写入。
% C( k1 r5 }0 x6 C+ D) z$ \

2 r0 Q4 a& ], G3 A! x. j' a1 E0 T$ r" C# v' U
赞 收藏 3 评论3 发布时间:2020-2-17 14:33

举报

3个回答
Kevin_G 回答时间:2020-2-18 15:32:15
有用
jiguosheng 回答时间:2020-5-3 11:06:15
有用收藏了。
李康1202 回答时间:2020-5-6 09:21:08
谢谢分享
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版