stm32_IAP
来源:互联网 发布:虚拟现实软件 编辑:程序博客网 时间:2024/06/05 17:26
IAP的目的在于产品后期可以通过预留的通信寇对产品程序更新,如IO,串口等。 bootloader + IAP
当烧入IAP后,要执行以下操作:检测第二部分代码是否需要更新;如果不更新则执行第二部分代码,如果更新,就先要更新再执行。
一般芯片必须要通过GTAG|ISP烧入bootloader,再又bootloader执行烧入的IAP程序。
其实我的理解就是当烧写IAP程序时就相当于给bootloader的一个中段处理函数,先执行IAP,再返回继续执行。
但是IAP程序必须满足两个要去:1 新程序必须在IAP程序之后的某个偏移量x的地址开始 2必须将新程序的中段向量表相应的移动,移动个偏移量是x。
APP程序的生成步骤:
1、设置APP程序的起始地址和空间大小
App程序的其实地址可以在魔术棒中手动设置 需要注意的是设置的地址必须留给bootloader足够的空间,不然两者的地址会有冲突
2、设置中段向量表偏移量
中段向量表的偏移地址设置:SCB->VTOR寄存器
3、设置编译运行,生成bin文件
如何将hex文件生成bin文件 我的路径是:C:\Program Files 2\MDK\ARM\ARMCC\bin
hex文件和bin文件的区别:
bin文件只是纯粹的二进制文件,没有格式可言;而hex文件是包含数据长度,地址,数类型,数据,校验等信息
也就是说为什么烧写bin的时候要指明地址的原因了,而hex是不需要的。
1 0
- stm32_IAP
- STM32_IAP详解(有代码,有上位机)
- STM32_IAP详解(有代码,有上位机)
- 【借花献佛】STM32_IAP详解(有代码,有上位机)
- 七步教你实现Django网站列表自动分页
- left join 和 inner join 以及 fetch
- 带扩展名的路由失效问题
- Redis入门很简单之三【常见参数配置】
- 卷积,DFT,FFT,图像FFT,FIR 和 IIR 的物理意义
- stm32_IAP
- 详解IIS Express的详细配置、使用和注意事项
- 小猪的Android入门之路 Day 3 - part 1
- matlab之pdf 概率密度函数
- Hibernate的fetch (转)
- ERP主要模块
- 安卓四大组件详解
- Java Web学习笔记——Filter
- poj 1088滑雪(记忆化搜索)