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

基于STM32的IAP问题

[复制链接]
带刺儿 提问时间:2013-10-29 09:33 /
最近在做基于STM32的IAP,我想把FALSH分为4个区,1个BOOT区(8002000H开始),2个应用程序区(1区:8002000H开始,2区:8008000开始),1个存储标志位的区(800F000H开始)。在BOOT里面通过读取FLASH里的标志位,来决定跳到应用程序区1还是跳转到应用程序区2。现在能够正常跳转到应用程序区1,不能跳转到应用程序区2,大致问题应该是中断向量表的问题。我应用程序里面的中断向量表设置也是通过读取FLASH标志位来设置,如果APP在1区,则设置为8002000H,在2区设置为8008000。keilc里面设置的编译段为8002000H。
 
请问哪里不对
收藏 评论11 发布时间:2013-10-29 09:33

举报

11个回答
回答时间:2013-10-29 11:28:44

RE:基于STM32的IAP问题

NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0);
记得设置向量列表
看起来很黑 回答时间:2013-10-29 21:53:36

RE:基于STM32的IAP问题

向量列表的地址也要写正确
tchxttt 回答时间:2013-10-30 20:53:22

回复:基于STM32的IAP问题

设置了NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x2000);能够正常运行APPI,但是不能正常执行APP2啊,并且在Keilc里面也只能设置一个偏移地址啊
 
wenshijian 回答时间:2013-10-30 21:19:13

RE:基于STM32的IAP问题

我晕,你一个芯片里面一个IAP两个APP,这个复杂度挺高的阿,围观你什么时候放弃。
wenshijian 回答时间:2013-10-30 21:21:05

RE:基于STM32的IAP问题

劝你尽早放弃这种想法,否则光中断向量就够你受的
111-418106 回答时间:2013-10-30 22:04:52

RE:基于STM32的IAP问题

两个app还是建立两个工程文件,放在同一个workspace里就行,这样keil设置方便
xing16880 回答时间:2013-10-30 23:34:13

RE:基于STM32的IAP问题

有几种做法:1种是生成一个BOOT工程,再做一个应用工程,通过FLASH-ARM把两个HEX文件合并一下。另一种方法,把BOOT工程生成BIN文件。再把这个BIN文件转换成表格文件。以.H的形式加载到应用工程。
Hiker 回答时间:2013-10-31 13:43:13

回复:基于STM32的IAP问题


你的两块应用程序,要按上图 进行设置。注意,有两处。
story_xjj 回答时间:2013-11-1 21:43:38

RE:基于STM32的IAP问题

围观一下,看解决方案
12下一页
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版