你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM320F0----IAP问题

[复制链接]
红玫瑰的偏爱 提问时间:2015-6-30 09:53 /
    目前在做IAP,遇到一个很诡异的file:///C:/Users/Administrator/AppData/Roaming/Foxmail7/Temp-5120-20150630094335/Catch9FE1(06-30-09-43-49).jpg问题      开发环境是KEIL 5.15,MCU STM32F030R8
        1,
Boot起始地址为0x08000000,IROM,IRAM设置如下图
         初始化SYSCFG_MemoryRemapConfig(SYSCFG_MemoryRemap_Flash);

,file:///C:/Users/Administrator/AppData/Roaming/Foxmail7/Temp-5120-20150630094335/Catch9FE1(06-30-09-43-49).jpg boot.png

2, APP起始地址为0x8003000,IROM,IRAM设置如下图
app.jpg
        初始化,按照官方的demo,中断向量表重载到SRAM
                uint32_t i = 0;
        __IO uint32_t VectorTable[48] __attribute__((at(0x20000000)));
        /* Relocate by software the vector table to the internal SRAM at 0x20000000 ***/  

        /* Copy the vector table from the Flash (mapped at the base of the application
        load address 0x08003000) to the base address of the SRAM at 0x20000000. */
        for(i = 0; i < 48; i++)
        {
                VectorTable = *(__IO uint32_t*)(APPLICATION_ADDRESS + (i<<2));
        }

        /* Enable the SYSCFG peripheral clock*/
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG, ENABLE);
        /* Remap SRAM at 0x00000000 */
        SYSCFG_MemoryRemapConfig(SYSCFG_MemoryRemap_SRAM);
       
       
        目前的问题是,我debug boot工程时候,跳转到 app运行,boot工程定义的变量 和数组一直在变化。然后从APP跳转回boot,
        boot工程定义的变量 和数组也是一直在变化。实际上,这些变量和数组并没有进行实际的赋值操作。如下


1.jpg 2.jpg

请问一下我的问题出在哪里?有没有方法解决?

收藏 评论5 发布时间:2015-6-30 09:53

举报

5个回答
stary666 回答时间:2015-6-30 09:55:40
顶一个,,,,,
creep 回答时间:2015-6-30 10:02:34
之前也遇到过过这个问题,在debug时不断的看到自己定义个的一个数组(比如512字节)里面的数据发生变化,但是自己并没有修改这个数组的内容。
出现这个问题时设置个断点查看会发现其实数组的内容并没有发生变化,但是全速debug还是能看到这个数组在变化,如果不影响程序的运行结果,就别纠结这个了。
红玫瑰的偏爱 回答时间:2015-6-30 10:05:33
creep 发表于 2015-6-30 10:02
之前也遇到过过这个问题,在debug时不断的看到自己定义个的一个数组(比如512字节)里面的数据发生变化,但 ...

没有啊,我的一直在变化!断点的时候,数组的内容都发生了变化。从APP跳转回来,内容也发生变化!
红玫瑰的偏爱 回答时间:2015-6-30 10:07:10
creep 发表于 2015-6-30 10:02
之前也遇到过过这个问题,在debug时不断的看到自己定义个的一个数组(比如512字节)里面的数据发生变化,但 ...

没有啊,我的一直在变化!断点的时候,数组的内容都发生了变化。从APP跳转回来,内容也发生变化!
creep 回答时间:2015-6-30 10:21:11
红玫瑰的偏爱 发表于 2015-6-30 10:07
没有啊,我的一直在变化!断点的时候,数组的内容都发生了变化。从APP跳转回来,内容也发生变化! ...

不知道是不是你把中断向量表重载到SRAM有关系,我使用IAP时把向量表从0地址向后移动了一段位置但没有放在SRAM中去。
如果不重启设备,进入APP后我就直接运行程序了,并没有再次回到boot。
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版