电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

STM32IAP,APP参数配置,向量表映射VIP免费

STM32IAP,APP参数配置,向量表映射_第1页
1/13
STM32IAP,APP参数配置,向量表映射_第2页
2/13
STM32IAP,APP参数配置,向量表映射_第3页
3/13
基于MDK 的STM32 系列IAP 和APP 程序的配置 很多人在做IAP 程序的时候,一般都能很容易就做出来,但是在做APP 的时候,却经常会跑飞,其中原理,大都由于MDK 配置出的问题,或者是APP 没有映射向量表。向量表起始地址默认的是0x 08000000,在IAP 的程序里不用再映射,但APP 的起始地址已经不再是0x 08000000,所以,必须要映射到实际的起始地址,否则当 IAP 跳转到 APP 的时候,程序直接就飞了。如我的APP 起始地址是0x 08005400,我的映射函数是这么配置的NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x 5400); NVIC_VectTab_FLASH 的值 就是0x 08000000。下面让我们来看看 IAP 和APP 的MDK 配置,其中片子为 STM32F103RE,IAP起始是0x 08000000,程序大小是0x 5400 字节;APP 的起始地址是0x 08005400,程序大小是0x 7AC00,配置如下: 1. IAP 的option for target’stm3210e-ev el’配置 1)这里要注意的是IROM1 的配置 2)这里是片子的选择配置 单击setting 进入下面的界面 这里要注意Programming Algorithm 的siz e 大小。实际上经过测试,这个 siz e 使用片子的最大的容量也没关系,即0x00080000(512K),也不会影响程序的运行。 3)以上是大家需要配置的,以下是其它的配置,与 IAP 功能无关紧要,是我的配置,仅供大家参考。 2. APP 的配置 1)注意下面的IROM1 的配置,千万不可与IAP 有区域重叠,而且size 不能超过片子的大小。这里 0x7AC00 与IAP 的0x5400 之和,刚好是 0x80000,即 512K 2 )片子的配置 再次说明一下,以上的RAM for algorithm(RAM 为运算法则准备的空间)的size 和programming for algorithm(程序为运算准备的空间)的size 都是默认的,当然程序为运算准备的空间大小也可以改成0x7AC00,起始地址改为0x08005400,但经过调试效果都一样。 其它 MDK 的设置参照 IAP 的(3)点 (3)以下的说明要特别注意,稍不留神就会出问题。平时我们在建立工程的时候,可能不会去重新映射向量表,原因是一般我们程序的起始地址都是默认的0x08000000,但此刻的APP的起始地址是0x08005400,那么就必须重新映射了。需要注意的是,在系统时钟配置好后,马上就做向量映射,中间最好先不要做其它的配置,比如端口初始化等等,否则程序跑飞也不一定的。下面的这段代码就是我实际的配置过程。 Void Main(void) { SystemInit();//系统初始化 NVIC_SetVectorT...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

STM32IAP,APP参数配置,向量表映射

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部