学习
实践
活动
专区
工具
TVP
写文章

MDK编译以后执行脚本

开发stm32 目前在国内用的最多的集成开发环境就是MDK。最近做一个stm32的IAP在线升级程序,这个IAP程序编译以后生成的bin文件我需要对它做个修改,存入我对整个APP代码部分的checksum校验。这样我就可以通过bootloader来验证我app部分代码的完整性。

这里面有个关键地方就是要对编译好的bin文件进行修改。仔细想想MDK本身编译好以后直接生成的是hex而非bin文件,那么生成的bin是通过编译后添加了一个选项生成的,如下图所示:

圈起来的地方完整的命令如下: C:\Keil_v5\ARM\ARMCC\bin\fromelf.exe –bin -o ./IAP-LED/IAP-LED.bin ./IAP-LED/IAP-LED.axf

也就是编译晚以后会调用这条命令把IAP-LED.AXF 文件转换成bin文件。

于是呢我就顺着这条思路,来实现编译后对我bin文件的修改。但是这里我不再是调用一个现成的exe文件,而是换成了python脚本,测试了还果然ok。(前提是电脑上要安装python并且添加到环境变量中)

下面就公布下我这段python代码:

然后我把这个这个代码保存为APPC.py名称。并把它和我的MDK工程放在同一个文件夹下面。之后就是在我的mdk设置里面添加编译后执行该脚本了:

这样做有什么好处呢?就是每次编译完我就可以直接获得我想要的最终结果,而不再需要手动的把bin再通过手动进行修改。大大提高了效率

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190103G09MKE00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

关注

腾讯云开发者公众号
10元无门槛代金券
洞察腾讯核心技术
剖析业界实践案例
腾讯云开发者公众号二维码

扫码关注腾讯云开发者

领取腾讯云代金券