[应用相关] STM32 IAP应用编程几个要点

[复制链接]
 楼主| 烟雨蒙蒙520 发表于 2021-1-31 23:52 | 显示全部楼层
见IAP程序代码: 617566016d237bc56e.png 所以,我们APP应用程序的其起始地址就必须对应为0x0800 3000 才行。不然,跳转之后没有应用程序,则会出错。
 楼主| 烟雨蒙蒙520 发表于 2021-1-31 23:53 | 显示全部楼层
提示:

它这里是通过按键方式选择执行IAP,还是执行APP;一般建议通过倒计时(比如5s):5s之内通过串口选择下载,否则自动跳转到APP程序执行。这里就需要自己根据情况修改代码。



Demo里程可以通过选择3跳转到APP程序,初学者可以直接不使用按键判断,进行测试,如下,修改一下:

4APP代码和地址问题
上一章节是讲述的IAP程序,本节讲APP程序修改地址的问题。

1.添加代码

在代码开始设置向量表偏移:

NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x3000);



0x3000代表偏移量

2.修改配置

project -> Options



3.生成Bin

具体可以参看我另外一篇**:

MDK-ARM如何生产Bin文件



4.APP程序代码

为方便大家学习,我提供在按照上面修改过的APP代码工程给大家下载,地址和上面一样:

https://pan.baidu.com/s/1umdwlShsJpL8rLdeb9n6Cw

密码:2t3j



5超级终端安装,程序下载
1.超级终端下载、安装

官方提供的文档是HyperTerminal超级终端下载程序,这个可以百度谷歌搜索下载安装。我这后面一直使用SecureCRT这款终端,这终端属于商业软件,但在网上可以找到很多po解的办法。
 楼主| 烟雨蒙蒙520 发表于 2021-1-31 23:54 | 显示全部楼层
为方便大家调试,我这里提供下载链接

https://pan.baidu.com/s/13yjA9q0Eltfer4oLPbGceQ

密码:5r5m

(提示:该链接后期可能会失效,建议到官网下载)
 楼主| 烟雨蒙蒙520 发表于 2021-1-31 23:54 | 显示全部楼层
2.程序下载

硬件连接好,将生成的程序文件(Demo.bin)指定位置(为方便测试下载,我拷贝到桌面)-> 打开终端 -> 键盘按1 ->选择文件 ->下载完成 -> 键盘按3 执行程序。
259486016d2b76317a.png
 楼主| 烟雨蒙蒙520 发表于 2021-1-31 23:55 | 显示全部楼层
以上所有内容就是关于IAP的基础知识和例程说明,更多的IAP在线升级功能讲解敬请等待。
 楼主| 烟雨蒙蒙520 发表于 2021-1-31 23:55 | 显示全部楼层
欢迎留言讨论!
drer 发表于 2021-2-6 09:49 | 显示全部楼层
就像是sopc似的
gwsan 发表于 2021-2-6 09:52 | 显示全部楼层
IAP的官方例程应该有很多
kxsi 发表于 2021-2-6 09:56 | 显示全部楼层
这个地址是定死的吗
nawu 发表于 2021-2-6 10:01 | 显示全部楼层
这样做非常的灵活
qcliu 发表于 2021-2-6 10:03 | 显示全部楼层
不是要点  是步骤还不错
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部