打印

未定义指令

[复制链接]
2676|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
runmo420|  楼主 | 2007-10-25 22:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
买的是北京微芯力科的开发板,付带了St公司的软件函数库,把这些函数库添加到应用程序文件,编译没问题,但仿真的时候,却总是跳出“ARM7TDMI出现异常,原因是未定义指令”。对函数库未作修改。这是怎么回事,如果有未定义指令,那编译又怎么会通过呢?
沙发
浪淘沙| | 2007-10-26 09:29 | 只看该作者

请先检查“未定义指令”出现在哪里

LZ好像断定错误出在函数库内部,你有什么根据吗?

这种问题,通常会有三种可能:
1)应用程序有错
2)函数库有错
3)程序跑乱了,运行到了数据区。

第1、2种可能性较小,第3种可能性很大,尤其是向量表未设定好,程序跑乱了。

使用特权

评论回复
板凳
runmo420|  楼主 | 2007-10-26 12:40 | 只看该作者

未定义指令

不知向量表未设定好是指什么。ST也提供了中断向量表的函数vect.s,察看过,觉得没什么问题的。程序运行时,停在地址0x00000004处,也就是此芯片的未定义指令异常的中断入口,在中断服务程序中的未定义中断函数体是空的。

使用特权

评论回复
地板
浪淘沙| | 2007-10-26 13:44 | 只看该作者

中断函数体是空的,那么发生中断时程序跑到哪里去了?

这当然会出现“未定义指令”的错误了。

使用特权

评论回复
5
张进128| | 2007-10-30 08:43 | 只看该作者

顶一个顶一个

顶一个顶一个顶一个顶一个顶一个

使用特权

评论回复
6
runmo420|  楼主 | 2007-11-1 15:09 | 只看该作者

谢谢浪淘沙 问题解决了

虽然不是中断函数的问题,但还是多亏浪淘沙提醒程序乱跑,原来是入口地址没有指定,导致程序乱跑。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

48

主题

142

帖子

0

粉丝