Keil软件仿真调试

Keil软件仿真调试
Keil软件仿真调试

51TRACER 仿真调试高级技巧

进入调试状态后,Debug 菜单项中的命令可以使用了,有关编译的工具栏按钮消失了,出现了一个用于运行和调试的工具栏,Debug 菜单上的大部份命令都有相应的快捷按钮。

从左到右依次是复位、运行、暂停、单步跟踪、单步、执行完当前子程序、运行到当前行、下一状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析、1#串行窗口、内存窗口、性能分析、工具按钮命令;

然后按一下图示第二个“运行”按钮。连接上相关的实验资源,本实验用一条8PIN的数据排线把实验仪的CPU部份的P1口(JP44)连接到八路指示灯部份的JP32。这时你会看到实验仪的八个红色LED,轮流点亮,表示运行成功,也可以查看相关的变量和参数,非常方便。

⒈单步跟踪运行

使用菜单Debug->Step 或上图第四个单步运行按钮或使用快捷键 F11 可以单步跟踪执行程序,在这里我们按下 F11 键,即可执行该箭头所指程序行,每按一次 F11,可以看到源程序窗口的左边黄色调试箭头指向下一行,如果程序中有Delay延时子程序,则会进入延时程序中运行。

⒉单步运行

如果Delay 程序有错误,可以通过单步跟踪执行来查找错误,但是如果 Delay 程序已正确,每次进行程序调试都要反复执行这些程序行,会使得调试效率很低,为此,可以在调试时使用 F10 来替代 F11(也可使用菜单 Step Over 或相应的命令按钮),在 main 函数中执行到 Delay时将该行作为一条语句快速执行完

毕。为了更好的进行对比,我们重新进入仿真环境,将反汇编窗口关闭,不断按F10 键,可以看到在源程序窗口中的左边黄色调试箭头不会进入到延时子程序。

⒊全速运行

点击工具栏上的“运行”按钮或按F5 键启动全速运行,全速执行程序,此时用户板上的 P1 口所接 LED 以流水灯状态显示。

⒋暂停

点击工具栏上的按钮,此时用户板上的P1 口所接 LED 停止以流水灯状态显示,只有一个 LED 灯点亮(取决于暂停前的 P1 的值)。

⒌观察/修改寄存器的值

Project 窗口在进入调试状态后显示 Regs 页的内容,包括工作寄存器 R0~R7 的内容和累加器 A、寄存器 B、堆栈指针 SP 的内容。

用户除了可以观察以外还可自行修改,例如将寄存器a 的值 0x62 改为 0x85。方法一:用鼠标点击选中单元a,然后再单击其数值位置,出现文字框后输入0x85 按回车键即可;

方法二:在命令行窗口,输入A=0x85,按回车键将把 A 的数值设置为 0x85

6.观察/修改存储器的数据

点击菜单“视图View->储存器窗口Memory Windows”,便会打开储存器Memory 窗口(如窗口已打开,则会关闭), Memory 窗口可以同时显示 4 个不同的存储器区域,点击窗口下部分的编号可以相互切换显示。

在储存器1(Memory#1)的地址输入栏内输入“D:0e0h”,按回车键后,可以从内部可直接寻址 RAM 的e0H 地址处开始显示, e0H 地址的值就是寄存器 a 的值,应与主寄存器窗口下的值相同。

点击窗口下部分的储存器2(Memory#2),在 Address 输入栏内输入“D:0e0h”,按回车键后,可以从内部可间接寻址 RAM 的 e0H 地址处开始显示。

点击窗口下部分的Memory#3,在 Address 输入栏内输入“C:0x0021”,按回车键后,可以从代码区域 0000H 地址处开始显示,这时各地址值应与在反汇编窗口中的值相同。

点击窗口下部分的Memory#4,在 Address 输入栏内输入“X:00h”,按回车键后,可以从xdata RAM 区域 0000H 地址处开始显示。

通过 Memory 窗口修改数据

在Memory 窗口中显示的数据可以修改。例如,要改动 data 区域 OXE0 地址的数据内容:

把鼠标移动到该数据的显示位置,按动鼠标右键在弹出的菜单中选中:更新储存器“Modify Memory at D:0xE0”,在弹出对话框的文本输入栏内输入相应数值,按回车键或点击 OK,修改完成。

通过命令行查看数据

例如,我们想查看data 空间从 0x01 到 0x03 地址的内容,可在命令输入窗口输入“d d:0x01,03H”,回车即可完成,d 表示 data 空间,0x01 表示起始地址,03H 表示结束地址(注意两种 16 进制的表示方法在这里都可以接受),输出结果在信息输出窗口中显示出来。

通过命令行修改数据

例如,我们想把 p1口的值从0x02数据修改成 0x04 ,可在命令输入窗口输入p1=0x04”,回车即可完成,此时如果p1口接有led,将立即看到led状态改变。

通过 Memory 窗口可以看到修改后的数据:

在地址栏输入 d:00H然后回车。储存器1 的d:0x90后的第一个数据就变成了04 ,这正是我们刚才修改的结果。

7.观察/修改变量的值

在暂停程序运行时,可以观察到有关的变量值。

在监视/调用堆栈(Watch)窗口“局部”页自动显示当前正在使用的局部变量,不需要用户自己添加。监视(Watch)页显示用户指定的程序变量。(先按F2键,然后输入变量的名称例如“delay”然后回车)

移动鼠标光标到要观察的变量“delay”上停留大约一秒钟,就弹出一个“变量提示”块出来。

将鼠标移动到一个变量名“d1”的上面,点击鼠标右键,出现快捷菜单,选中:“增加d1到观察窗口”(Add “d1” to Watch Windows…)选项,子菜单中会出现#1 和#2 的选项,点击后该变量就会加入对应的监视/调用堆栈(Watch) 窗口。

增加d1到观察窗口”(Add “d1” to Watch Windows…)选项后对应的监视窗口显示了d1 的值。

修改变量的数值方法:用鼠标左键点击该行的变量数据栏,然后按F2 键出现文本输入栏后,输入修改的数据,确认正确后按回车键。

8.复位

如果用户想重新开始运行用户程序,可以点击工具栏上的复位按钮,对仿真器的用户程序进行复位。仿真器复位后,程序计数器PC 指针将复位成 0000H,另外,一些内部特殊功能寄存器在复位期间也将重新赋值,例如 A 将变为 00H, DPTR 变为 0000H, SP 变为 07H, I/O 口变为 0FFH,此时用户板上的 P1 口所接 LED 指示灯会全部熄灭。

9.设置断点

将光标移至待设置断点的源程序行,如“MOV P1,#0B6H”行。点击工具栏上的“断点”图标,可以看到源程序窗口中该行的左边出现了一个红色的断点标记。(如果再点一下这个图标则清除这个断点)同样的方法,您可以设置多个断点。

10.带断点的全速运行

按动F5 启动全速运行,全速执行程序,当程序执行到第一个断点时,会暂停下来,这时你可以观察程序中各变量的值及各端口的状态,如下图:第一个断点在mov p1,#06dh 之后,此时在储存器窗口Memory Windows”, 储存器1(Memory#1)的地址输入栏内输入“D:000h”,按回车键后,可以从内部可直接寻址地址数据为6D 和程序设计的相同!

此时用户目标板上会显示当前断点的状态,继续按动F5 启动全速运行,程序执行到第二个断点时,会暂停下来,在变量观察窗口中,RAM的值应为B6;继续按动 F5 启动全速运行,程序又会执行到第一个断点处暂停,此时用户目标板上的灯又显示相应的状态。断点是仿真器调试的重要手段,请您仔细反复的练习直到熟练。

⒒清除程序中所有断点

如果想取消全部的断点全速运行时,要是逐个取消将是很烦琐的事,我们只要点击工具栏相应的图标,就可清除程序中所有断点。

⒓执行到光标处

在体验“执行到光标处”之前,我们先点击工具栏上复位的图标,对仿真器的用户程序进行复位,把鼠标放在想要停止的行点一下,再按“执行到光标处”程序全速执行到光标所在行,这与我们在前面看到的带断点的全速运行相类似。13.退出仿真

先点击调试工具栏“暂停”按钮,再点击调试工具栏的“复位”复位,再点击开启/关闭调试模式按钮,则退出仿真状态,就又重新回到编辑模式。(如果不能正确退出,请按一下仿真器上的复位按钮)

此时可以对程序修改,然后重新编译,再按开启/关闭调试模式按钮,就又进入仿真模式了。

请注意!由于KEIL软件在仿真状态时和仿真器始终保持通信联系,为此退出仿真的时候最好按照以上顺序退出,不要强行退出,否则容易造成电脑死机。

到这里也就完成了keil软件的标准操作过程,由于KEIL操作过程较复杂,请您自行练习直到熟练!

一种基于仿真测试平台的实物自动化测试环境

一种基于仿真测试平台的实物自动化测试环境 摘要 针对FPGA软件测试过程中仿真测试和实物测试的不足,提出了一种基于仿真测试用例的实物自动化测试环境,将用于仿真测试的Testbench进行解析处理,形成能够用于FPGA 实物测试的传输信号,通过执行器将此信号转换为作用于被测FPGA芯片的实际信号,并采集被测FPGA芯片的响应,实现对FPGA的实物自动化测试。采用实物自动化测试环境验证平台对设计架构进行了验证,取得了良好的效果。 0 引言 随着FPGA设计规模的不断扩大,因FPGA软件设计而造成的质量问题也越来越突出,成为影响装备质量的重要因素。而测试是当前解决该问题的最有效手段,因此,越来越多的型号装备产品定型过程对FPGA软件测试提出了新的要求[3]。 然而FPGA测试与常规软件测试不同,因其测试环境限制,测试过程需大量依赖于仿真和分析的方法[4],而在实际芯片中开展的测试往往是板级、系统级测试,测试结果可信度低且无法有效发现FPGA软件设计缺陷[5-6]。为此,本文提出了一种基于仿真测试平台Testbench数据的自动化测试环境框架,测试结果具有较高的可信度,能够有效提高FPGA 测试质量。 1 FPGA动态测试概述1.1 FPGA动态测试环境原理 当前型号装备FPGA定型测试过程主要方法包括设计检查、功能仿真、门级仿真、时序仿真、静态时序分析、逻辑等效性检查和实物测试。其中功能仿真、门级仿真、时序仿真和实物测试均为动态测试,开展测试时需依据测试要求,建立FPGA运行的外围环境,根据测试对象的不同,可将此类环境分为仿真测试环境和实物测试环境。 采用仿真测试环境时,需根据测试用例将测试数据映射为不同时刻下的不同信号值,形成仿真测试平台文件Testbench,通过仿真测试工具将被测FPGA产生的响应进行采集和自动判断,形成测试结论[7]。

嵌入式系统仿真测试平台的体系结构研究

!"##!年第$期 福建电脑注:本文得到广东省科技厅攻关项目资金资助%项目编号"##"&’(&)电子科技大学青年基金项目资助%项目编号*+#"#,#-。 &、 引言目前嵌入式系统开发已经成为了计算机工业最热门的领域之一,嵌入式系统应用渗透到信息家电、工业控制、通信与电子设备、人工智能设备等诸多领域。然而嵌入式系统的软件与目标硬件紧密相关,软件开发周期长,开发成本昂贵,软件质量无法保障.&/."/。特别是嵌入式软件的测试工作,在整个开发周期中通 常占用着大部分时间 (-#01,#0)。软件测试是一个非常重要而又艰苦的过程。软件测试工具用来全部或部分的代替人工进行软件的测试工作。它能极大的节省人力、物力和财力,缩短项目的开发周期。 国际上,许多软件公司致力于开发功能强大的软件测试工具。按获得测试信息的方式分为纯硬件、纯软件、软硬件相结合三种类型的测试工具。纯硬件测试工具如仿真器、逻辑分析仪、开发系统等。纯软件测试工具如234563786的2345938:,是一种软件逻辑分析仪。软硬件相结合的测试工具如以;<公司的=>?938:为代表的虚拟仪器和以@AB 公司的BC58DEFD 为代表的测试工具。这三类测试工具都有一个缺点:没有提供一个集成各种软硬件测试工具的框架,使各类测试工具能紧密协调工作。 为提高测试工作的效率,迫切需要功能强大的嵌入式系统测试工具。 仿真开发在嵌入式系统开发中正在发挥着越来越重要的作用。许多软件公司已经开发出成熟稳定的嵌入式仿真开发工具。但是在嵌入式仿真开发中,仍然缺乏一种嵌入式系统测试工具的集成框架。本文正是基于这个目标,从软件体系结构的角度,研究和设计了一种称为G EFDH G 的嵌入式系统仿真测试平台的集成框架。并基于其上实现了一个嵌入式仿真测试平台3I >EFDH 。 "、 嵌入式系统仿真测试平台的体系结构EFDH 对于大规模复杂软件系统,其总体结构设计远比算法和数据结构的选择更重要.J /.!/。基于这样的认识和背景,本文在对嵌入式测试和嵌入式仿真开发深入研究的基础上,研究和设计了EFDH 的体系结构。"K &EFDH 的结构模型 EFDH 的体系结构主要借鉴了当前流行的嵌入式交叉开发工具的目标服务器L 目标代理结构.’/,分为宿主机端和仿真目标机端两大部分。 EFDH 的结构模型见图&: 图&EFDH 结构模型 EFDH 结构模型的基本特征:&M EFDH 由宿主机端和目标机端两大部分构成,宿主机 端以测试服务器DF (D8NO F86786)为核心;目标机端以测试代理D@P D8NO @Q84O M 为核心。 "M 所有的测试工具不与目标机端交互, 而只与测试服务器DF 进行交互;测试服务器DF 同测试代理D@交互。这样只要更换相应的测试代理D@,即可与不同的仿真开发系统一起工作。 J M 测试服务器DF 与所有测试工具之间通过嵌入式仿真测试工具交换协议EFDDR (ES?85585F3STU>O3C4D8NO DCCU 8RI VW>4Q8X6COCVCU ) 规范接口进行交互。!M 测试服务器DF 和测试代理D@之间通过嵌入式仿真测试协议EFD P ES?85585F3STU>O3C4D8NO X6COCVCU M 规范接口进行交互。 ’M 测试工具以软插件的形式集成到EFDH 中%EFDDR 和EFD 规范定义的接口是公开的和可免费获得的,第三方测试工具非常容易的集成到EFDH 中来。 -M 测试工具多种多样,可以是软件代码测试工具,也可以是硬件诊断测试工具,都可以很容易的集成到EFDH 中来,从而达到各类测试工具的紧密协作。 $M EFDH 中各类测试工具紧密集成到一个图形用户接口中,大大提高了用户的工作效率。 ,M 测试代理D@以一个线程的形式存在于仿真运行环境中,与各类模拟器之间通过固定的接口交互,获取丰富的测试信息。 "K "测试服务器DF 模型 测试服务器DF 是EFDH 的核心结构部件,作为EFDH 的测试管理器,其结构模型如图"。 图"测试服务器DF 结构模型 DF 的主要功能:&M DF 提供相应的EFDDR 协议规范接口,接受来自测试工具的控制命令和状态查询,并提供相应的数据传输接口,向测试工具返回对应的测试结果。 "M DF 提供相应的EFD 协议规范接口,向采集代理发送控制命令信息和状态查询信息,并且根据EFD 协议规范提供的接口收取返回信息。 J M DF 提供测试高速缓冲管理、 测试存储器管理以及流测试协议,管理和控制整个宿主机端。"K J 测试代理D@模型 嵌入式系统仿真测试平台的体系结构研究 邵荣防,罗克露 P 电子科技大学计算机科学与工程学院,四川 成都-&##’!M 【摘要】仿真开发在嵌入式开发中正逐步成为热点,仿真测试工具在仿真开发过程中正发挥着日益重要的作用。本文首先简要分析了当前的嵌入式测试工具,然后给出一种嵌入式仿真测试平台的体系结构EFDH 。基于EFDH 体系结构,实现了一个面向信息家电的嵌入式仿真测试平台3>EFDH 。 【关键词】嵌入式系统仿真开发 仿真测试平台

系统仿真测试平台

仿真测试系统 系统概述 FireBlade系统仿真测试平台基于用户实用角度,能够辅助进行系统方案验证、调试环境构建、子系统联调联试、设计验证及测试,推进了半实物仿真的理论应用,并提出了虚拟设备这一具有优秀实践性的设计思想,在航电领域获得了广泛关注和好评 由于仿真技术本身具备一定的验证功能,因此与现有的测试技术有相当的可交融性。在航电设备的研制和测试过程中,都必须有仿真技术的支持:利用仿真技术,可根据系统设计方案快速构建系统原型,进行设计方案的验证;利用仿真验证成果,可在系统开发阶段进行产品调试;通过仿真功能,还可对与系统开发进度不一致的子系统进行模拟测试等。 针对航电设备产品结构和研制周期的特殊性,需要建立可以兼顾系统方案验证、调试环境构建、子系统联调联试、设计验证及测试的系统仿真平台。即以半实物仿真为基础,综合系统验证、系统测试、设备调试和快速原型等多种功能的硬件平台和软件环境。 目前,众多研发单位都在思索着如何应对航电设备研制工作日益复杂的情况。如何采取高效的工程技术手段,来保证系统验证的正确性和有效性,是航电设备系统工程的重要研究内容之一,FireBlade 系统仿真测试平台正是在这种大环境下应运而生的。 在航电设备研制工程中的定位设备可被认为是航电设备研制工程中的终端输出,其质量的高低直接关系到整个航电设备系统工程目标能否实现。在传统的系统验证过程中,地面综合测试是主要的验证手段,然而,它首先要求必须完成所有分系统的研制总装,才能进行综合测试。如果能够结合面向设备的仿真手段,则可以解决因部分设备未赶上研发进度导致综合测试时间延长的问题。在以往的开发周期中,面向设备的仿真技术并没有真正得到重视: (1)仿真技术的应用主要集中在单个测试对象上,并且缺乏对对象共性的重用; (2)仿真技术缺乏对复杂环境与测试对象的模拟; (3)仿真技术的应用缺乏系统性,比如各个阶段中仿真应用成果没有实现共享,

实验一 软件仿真器Simulator的使用方法

实验一软件仿真器Simulator的使用方法 一、实验目的 1、了解DSP开发系统平台的构成。 2、了解Code Composer Studio 3.3 的操作环境和基本功能。了解DSP软件开发过程。 二、实验要求 按照实验步骤熟练掌握CCS的使用方法。 三、实验设备 PC一台;操作系统为Windows XP;安装Code Composer Studio 3.3 四、实验原理 开发TMS320C5000应用系统一般需要以下几个调试工具来完成: (1)软件集成开发环境(Code Composer Studio3.3):主要完成系统的软件开发和调试。它提供一整套的程序编制、维护、编译、调试环境,能将汇编语言和C语 言程序编译连接生成COFF格式的可执行文件,并能将程序下载到目标DSP上 运行调试。 (2)开发系统(ICETEK 5100 USB):实现硬件仿真调试时与硬件系统的通信,控制和读取硬件系统的状态和数据。 (3)评估模块(ICETEK VC5416-A):提供软件运行和调试的平台和用户系统开发的参照。 五、实验步骤 1、启动Code Composer Studio 3.3 双击桌面“CCS3.3(C5000)”,启动Code Composer Studio 3.3; 2、创建工程 (1)创建新的工程文件 选择菜单Project的“new…”项;在Project Creation 对话框中,在project项输入 volume;单击location项末尾的浏览按钮,改变目录到 C:\ICETEK-VC5416-EDULAB\Lab01-UseCC,单击OK;单击完成;这时建立的是 一个空的工程,展开主窗口左侧工程管理窗口中Projects下新建立的“volume.pjt”,其中各项均为空。 (2)在工程文件中添加程序文件

虚拟仿真实验平台使用教程

虚拟仿真实验平台使用教程 一、首次使用 1. 虚拟仿真实验平台登录网址为::6050 2. 点击右上角“系统使用说明(首次登录必看)” 3. 根据视频教程安装虚拟运行环境 4. 查看系统各模块的视频教程

二、预习测试 1. 登录仿真平台(初始账号密码均为10位学号,登录后请设置邮箱和密保问题, 设置后可以自行找回密码) 2. 进入“实验预习系统” 3. 在“完成预习”选项卡下进入预习,根据提示完成预习测试题。 注意:“实验预习系统”仅具有答题功能,请同学们完成预习测试题前先在“仿真实验V4.0”系统进行实验学习!

三、仿真实验 1. 进入“仿真实验V4.0” 2. 进入各实验项目进行学习和实验 3. 实验操作由系统评分,同时考察实验操作过程和测量数据情况。 注意:请在结束实验操作前截图保存原始数据,以进行后续的数据处理和报告撰写,实验结束后无法查看原始数据!

四、实验报告提交 1. 完成虚拟仿真实验后,在“开始实验”选项卡下点击“上传实验报告” 2. 点击“报告模板下载”按钮下载该实验的报告模板,根据模板要求完成实验报告并上传。 3. 在教师评阅前实验报告可多次上传,新上传的实验报告会覆盖之前上传的。 五、技术问题 1. 虚拟仿真实验平台使用过程中遇到技术问题时,可在“虚拟仿真实验环境安装

及使用问题解决方案”中查找解决方案。 2. 遇到无法解决的问题,同学们可以将问题反馈给学习委员,由学习委员在“物理实验课程通知群”统一反馈给实验指导教师和公司技术人员。 附:虚拟仿真实验环境安装及使用问题解决方案

虚拟仿真实验环境安装及使用问题解决方案 1. 安装过程中如果遇到如图所示的情况 解决方案:请关闭杀毒软件(360安全卫士,360管家,联想电脑管家,鲁大师等),再重新安装,如果还不行就按照如下链接给注册表权限再安装

相关文档
最新文档