[ZLG-ARM] 启动时在B __main后跳入预取指异常,怎么回事

[复制链接]
 楼主| 云痕 发表于 2008-4-30 09:50 | 显示全部楼层 |阅读模式
我芯片是2378,用的NXP自己的启动代码,2007.03.14&nbsp;&nbsp;ver&nbsp;1.xx。仿真时执行B&nbsp;__main,进入汇编段后出现取指异常,pc指针在0x4C处,进不了main()函数。记得预取指异常仅发生在执行到了异常指令时才发生,而此时尚未执行我自己写的代码啊。调试时发现,把main()函数中的代码注释掉一些后,再仿真时就能顺利到达main()入口。于是猜可能是main()的返回出了问题,ARM&nbsp;LINK是选的simple,RO_base为0x40004000,RW_base空着,整个code+ro+rw才14.6k。把启动代码中的LDR&nbsp;&nbsp;R0,&nbsp;=__main&nbsp;&nbsp;&nbsp;&nbsp;BX&nbsp;换成B&nbsp;__main,情况还是相同。有遇到过这种情况的么?<br />&nbsp;&nbsp;&nbsp;
rodger_br 发表于 2008-5-1 01:26 | 显示全部楼层

取指异常通常是你跳转的地址错了。

或者memory还没有加载
您需要登录后才可以回帖 登录 | 注册

本版积分规则

28

主题

75

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部