5957|4

1

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

当应用程序和IAP程序一起跑的时候,就出现异常 [复制链接]

本信息来自合作QQ群:NXP Cortex-M0/M3交流(87394268) 

 

 

我建立了两个工程,一个是用来做IAP的,另一个是应用程序,当应用程序自己跑的时候就没有问题,

 

当把应用程序和IAP程序连在一起跑的时候,运行一段时间就进了异常-----即defaultVectorHandle函数.经过添加中断函数排查,异常中断并不是NMI 、总线异常、硬件错误等,我的应用程序的中断向量表是重映射到了RAM里面的。

 

请问这种问题有人遇到过吗?有什么办法可以查出问题?非常感谢!

此帖出自NXP MCU论坛

最新回复

楼主能给个中断向量表是重映射到了RAM的例程吗?我用LPC11C12把异常向量映射到RAM时程序老跑飞  详情 回复 发表于 2013-1-4 14:37

点评

楼主能给个中断向量表是重映射到了RAM的例程吗?我用LPC11C12把异常向量映射到RAM时程序老跑飞  详情 回复 发表于 2013-1-4 14:37
点赞 关注
 

回复
举报

394

帖子

0

TA的资源

一粒金砂(高级)

沙发
 

通过函数指针跳过去的??感觉不靠谱,你通过iap升级以后应该是重启代码,然后进入正常的flash模式,我估计是你是指针函数,强行跳转,结果没有修该中断向量表映射,导致出现代码异常 也就是说你直接跳到flash里面的应用程序的地址?是吧,我建议你直接跳到你启动代码的的起始地址,再试试

 

我个人的了解,向量表只会出现在RAM或flash的起始的32字节里头,出现在其他的位置,我还没有做个,不排除你可以用指针强制复制的形式将32字节的数据拷贝到其他的区域的可能,但是硬件每次都默认跳转到0x0~0x1f的区域,这个没法改变不管是这个是实际的硬件地址也好,逻辑地址也罢。期待你试验成功

此帖出自NXP MCU论坛
 
 
 

回复

2131

帖子

0

TA的资源

至上芯片

板凳
 

回复 沙发 pepsi360 的帖子

说的非常好,我用IAP的时候就向您说的那样,其中让IAP程序的运行级别提高,只作重启代码!远程升级代码一定要保证代码运行的正确性,用户程序只负责存储数据修改标记,IAP会查看标记并启动。
此帖出自NXP MCU论坛
 
个人签名处处留心皆学问!
 
 

回复

2131

帖子

0

TA的资源

至上芯片

4
 

回复 楼主 理想 的帖子

做IAP程序一定要注意你的中断向量表地址的映射
IP pepsi360说的很好!
LZ你可以先做实验将程序在编译时将中断向量地址更改到你想要跳转的地址,如果使用IAP能够启动并正常运行就可以,如果你的IAP与你的应用程序是一个程序那么你要处理好这个部分!
此帖出自NXP MCU论坛
 
个人签名处处留心皆学问!
 
 

回复

7

帖子

0

TA的资源

一粒金砂(中级)

5
 

回复 楼主 理想 的帖子

楼主能给个中断向量表是重映射到了RAM的例程吗?我用LPC11C12把异常向量映射到RAM时程序老跑飞
此帖出自NXP MCU论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表