【ARM学习笔记】问题Processor ARM920T raised an exception.Cause:Undefined instruction的解决方法

概述

在进行ARM系统原理与开发的学习过程中,使用ADS(ARM Developer Suite)进行ARM开发时,常会遇到一些问题,除了一些编写程序语法上的错误外,经常会遇到Processor ARM920T raised an exception.Cause:Undefined instruction的问题
【ARM学习笔记】问题Processor ARM920T raised an exception.Cause:Undefined instruction的解决方法_第1张图片

出现这个问题的原因及解决方法

1、项目中目标程序(.o)文件重复产生

原因:在进行ARM项目开发中,所创建的文件名相同,(后缀不同)导致在这两个文件,经过汇编器编译成二进制文件时,这两个文件的汇编结果都是he0.o,就重名了,虽然产生的 是警告,但是对于调试,运行就会出现一定的问题。
【ARM学习笔记】问题Processor ARM920T raised an exception.Cause:Undefined instruction的解决方法_第2张图片
问题解决方法
对一个项目中的文件名要进行不同的命名,即使文件后缀不同,文件名最好也要避免相同

2、ARM开发环境中,ADS与AXD处理器的设置的不同

原因:在ads的DebugRel Settings中的处理器设置与AXD中Options->Configure Target中的处理器设置不一样,导致上面问题的出现
问题解决方法
在ADS中:如果用的是ARM920T,最好在Language Settings下的五个设置选项中,所对应的Architecture or Processor设置为ARM920T
:处理器的选用最好使用ARM920T;对于ARM720T,ARM7TDMI处理器,可能会在某些开发中出现问题
【ARM学习笔记】问题Processor ARM920T raised an exception.Cause:Undefined instruction的解决方法_第3张图片
【ARM学习笔记】问题Processor ARM920T raised an exception.Cause:Undefined instruction的解决方法_第4张图片
【ARM学习笔记】问题Processor ARM920T raised an exception.Cause:Undefined instruction的解决方法_第5张图片

在AXD中:在AXD的菜单栏处,找到【Options】->【Configure Target】中的设置,首先选中ARMUL然后双击或是点击右下角Configure,就会出现下图:
【ARM学习笔记】问题Processor ARM920T raised an exception.Cause:Undefined instruction的解决方法_第6张图片
【ARM学习笔记】问题Processor ARM920T raised an exception.Cause:Undefined instruction的解决方法_第7张图片
【ARM学习笔记】问题Processor ARM920T raised an exception.Cause:Undefined instruction的解决方法_第8张图片
我们可以看到默认的是ARM7TDMI,改变此项,使与ADS的设置相同即可。
然后点击OK,在重新进行调试运行,本项目就不会再出现上述问题了。

本篇文章是在ADS开发环境中,对一些比较麻烦的问题的解决方法的总结,如果您有不同的问题或者有些认为常会出现的问题以及解决方法,可以在评论区写下,我们可以一起讨论,互相学习。

你可能感兴趣的:(ARM学习笔记)