你的位置:软件开发平台 > 联系我们 > APP开发资讯 IAP代码和APP代码归拢烧录流程示范

APP开发资讯 IAP代码和APP代码归拢烧录流程示范

发布日期:2024-07-18 14:49    点击次数:166
APP开发资讯

咱们使用STM32芯片竖立居品时,随机需要自带升级功能。因此,确随即除了需要准备基本的应用代码外,还得准备一套升级代码。频频称前者为IAP代码或BOOT代码,后者称之为APP代码。一般来讲,这两套代码基于两个工程完成并生成相应的本质文献,初度烧录时往往但愿两套代码归拢在一说念进行烧录,这么简单、省事。

这里就该需求,行使ST提供的器具软件STLINKUtility来示范下归拢流程。

因为仅仅模拟两个不同地址区的文献归拢,是以这里的两个工程代码险些相通,也很八成,仅仅存放的地址空间不同。

我使用的竖立板是STM32L476RGNucleo板。代码功能齐是继承按键,每收到1次按键当作,就打印出咫尺处所职责区。当收到3次按键后则从面前职责区跳往另一职责区。

两个工程的内存及中断矢量安排如下两幅图:

e43ef9b2-445e-11eb-8b86-12bb97331649.png

e488793e-445e-11eb-8b86-12bb97331649.png

除了上头实在立各别外,两个工程的代码险些相通,仅仅输出指示有别。

e4cd8632-445e-11eb-8b86-12bb97331649.png

这里使用的是IAR IDE环境,基于上头两个工程鉴别生成IAP.HEX和APP.HEX两个本质文献。

然后大开STLINKUtility器具,相连竖立板,将芯片擦除干净。接着,APP开发业务运行烧录,先烧IAP.hex文献。【其实先烧录谁无所谓】

e528d3f2-445e-11eb-8b86-12bb97331649.png

之后,将面前IAP.HEX文献关闭,再调APP.hex文献进行烧录。督察此次烧录时选择跳过FLASH的擦除操作,因为刚运行也曾全擦,并且前边也曾写了IAP代码。

e5656fce-445e-11eb-8b86-12bb97331649.png

到此,两个工程的代码齐写进芯片了。

当今,先在VIEW菜单里点击下Device Memory,然后在File菜单里选择文献另存操作。你选择HEX或BIN身手齐不错。

e59cc6a4-445e-11eb-8b86-12bb97331649.png

使用BIN身手的话督察烧录时给出正确的肇端地址。这个另存出来的文献便是归拢过的文献了,不错成功拿来烧录。

底下是我基于归拢文献烧录的测试甘休。跟本色预期甘休相通,每按键1次作念1次输出,3次后跳转,这么走动操作。

e61d1778-445e-11eb-8b86-12bb97331649.png

操作很八成,也很简单。之前偶尔也会有东说念主问起这个话题。此次整理本文作念考证时,甘休在作念归拢时老是失败。因为之前有考证过,服气这个操作是可行的。其后怀疑可能是我电脑系统方面的原因,换成婚里那台电脑测试起来就很顺畅,来回考证屡次齐平素。看来,我那台电脑该重装或换掉了。