视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
IAR软件使用教材
2025-10-05 18:36:39 责编:小OO
文档
第二章 软件开发工具介绍

本章主要针对实验平台开发过程中用到的软件的使用方法做简要的介绍。

实验平台用到的开发软件为IAR Embedded Workbench for 430(以下简称IAR EW430)。IAR Systems是全球领先的嵌入式系统开发工具和服务的供应商。公司成立于1983年,迄今32年,提供的产品和服务涉及到嵌入式系统的设计、开发和测试的每一个阶段,包括:带有C/C++编译器和调试器的集成开发环境(IDE)、实时操作系统和中间件、开发套件、硬件仿真器以及状态机建模工具。这里介绍的IAR EW430软件提供了工程管理、程序编译、代码下载调试等所有功能。

2.1 IAR EW430软件的安装

IAR EW430软件可在IAR官网下载,也可以通过百度或者google找到下载地址。这里以5.502版本为例,安装步骤具体如下:

(1)点击运行EW430-EV_web-5502.exe;

(2)如图选择,点击Next;

(3)继续点击Next;

(4)继续点击Next;

(5)如上图选择,点击Next;

(6)在上述步骤中Name、Company可以自己随便填写,License需要用到注册机。点击IAR kegen PartA.exe。

(7)选择Embedded Workbench For MSP430 v5.5后,点击Generate,会得到License和License key;

(8)将License复制到第(5)步骤中License的地方,点Next;

(9)将注册机中得到的License key复制粘贴到License key栏,点击Next;

(10)选择Complete,点击Next;

(11)选择合适的安装路径,点击Next;

(12)点击Next;

(13)点击Install,等待安装完成即可。

2.2 IAR EW430软件的使用

在正确完成IAR EW430安装之后,就可以使用它进行编程。下面简单地介绍下如何用IAR EW430新建一个工程。

(1)点击IAR Embedded Workbench图标,运行软件;

(2)先新建一个工作空间(Workspace),File->New->Workspace;

(3)创建工程,Project->Create New Project…;

(4)按下图选择,点击OK;

(5)选择一个存放工程的文件夹,并给工程命名,点击保存,注意工程名不要包含中文;

(6)在创建完工程之后,就可以在右边的编辑框中进行编程;

(7)在对工程进行编译之前需要对工程进行设置,在左边工作空间的工程名上右键,点击Option;

(8)需要选择正确的器件,这里以MSP430F5438A为例,点击General Options,在Device中点击,MSP430x5xx Family->MSP430F5438A;

(9)点击Debugger->FET Debugger,然后点击OK;

(10)保存工作空间,点击save all,在文件名中填上合适的工作空间名称,注意不要包含中文,选择用一个工作空间包含一个工程这种简单的操作方式,可以将工作空间的名称与工程名称取成一致。

以上步骤完成了创建新工程,并进行正确配置的任务。在完成以上步骤之后,可以进行代码编辑。在完成代码编辑之后,需要进行编译,生成,运行操作,主要用到以下几个控件。

点击进行编译,编译通过点击生成,以上步骤都没有出现错误之后就可以运行。出现以下界面。

除了调试程序流程之外,程序员在排错过程中还会需要查看各种变量和寄存器的值,以确定程序运行中间结果是否正确。在IAR EW430调试状态下,View菜单提供了功能丰富的查看功能。

(1)在西安查看变量。只要程序处于暂停状态,将鼠标停在源代码任何一个变量上2s不动,就会自动显示该变量的值。这是一种简单便捷的查看方法,但每一次只能查看一个变量,并且不能更改变量值。

(2)通过菜单View->Watch打开观察窗。这是最常见的功能之一。在Expression栏内输入变量名或表达式,在Value栏可以看到变量或表达式的值。一个观察窗可以同时察看多个变量的值,且通过在Value栏中键入数据,能更改变量值。用鼠标右键还可以切换数据的显示格式(如十进制、二进制、字符等)。

(3)通过菜单View->Register打开寄存器窗。可以查看单片机内部各个模块的控制寄存器。MSP430单片机内部的寄存器较多,寄存器窗口已经按照模块将其分类,以方便察看。类似于观察窗,只要是科协的寄存器,都可以通过直接输入新数值来改变寄存器值。

(4)通过菜单View->Disassembly打开反汇编窗。它将C语言生成的机器码重新翻译回汇编语言,供有经验的程序员调试用。一条C语言可能对应一条以上的汇编语言,在打开反汇编窗口后,但不执行和跟踪执行每次执行一条汇编语句而不再是一条C语句。

(5)通过菜单View->Call Stack打开调用关系窗。可查看程序执行到当前位置所经历的函数路径。

(6)通过菜单View->Stack打开堆栈窗。可以看到当前堆栈空间使用情况。

(7)通过菜单View->Memory打开内存窗。可以看到内存中数据存放的秦光。MSP430单片机属于冯·诺依曼结构,数据空间和程序空间统一编址。所以在内存窗也可以查看Flash 内代码或数据情况。

通过对上述调试、查看功能的综合运用,能够组合出强大的排错能力。对于初学者来说,复杂问题的排错可能像瞎子摸象,没有目的得乱找,比较吃力。换成经验丰富的程序员,也行两三步就能发现错误。排错方法是一个需要不断练习和积累经验的过程。对于新手,以下的几个基本方法是普遍适用的:

(1)包围法。将程序划成若干段,打开观察窗,监视可疑变量或中间结果,用“断点”或“运行到光标处”工具检验各段程序运行的结果是否正确,逐步缩小问题范围,最后可以用单步、跟踪工具找到问题。

(2)极限法。对于某些偶尔出现或周期出现的问题,很可能是某些处于溢出边缘,或者在判断语句中将“>=”和“>”混淆之类的习惯性错误。利用变量观察窗,改变变量值,尽可能取极限情况,试验每个函数是否工作正常,逐步缩小错误范围最终找到问题。

(3)陷阱法。当怀疑系统偶尔出现某种不应出现的状态时,或者怀疑某变量偶尔出现了不应出现的值时,可以用一个if语句判断该状态的出现,在后面跟一条空操作语句_NOP();并在空语句处设置断点。在出现这种状态时,被断点捕捉,此后可以打开观察窗,查看各变量,看哪些可疑,分析错误来源。

(4)穷举法。当怀疑某个函数有可能在某些特殊的输入情况下产生错误的结果,可以用一个for循环对富哦有可能输入进行尝试,并设置错误陷阱,看哪些输入会造成错误,然后用观察窗的变量赋值功能专门产生错误输入情况,最后用跟踪工具找出错误来源。

(5)对比法。自己写的程序无法正常执行,恰巧手头有可参考的代码;或者以前写的程序正常,现在写的去突然不能用了;甚至写了一段新程序后,前面已经调试通过的代码却突然失灵。遇到此类情况可以分别运行两个程序,通过Register窗口或Watch窗查看并记录下相关寄存器和变量的值,二者对比,找到设置错误的变量或寄存器,再跟踪出错原因,最终排除错误。下载本文

显示全文
专题