嵌入式系统_实验指导书.doc
《嵌入式系统_实验指导书.doc》由会员分享,可在线阅读,更多相关《嵌入式系统_实验指导书.doc(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、嵌入式系统实验指导书2011年11月4日第1章ADS 1.2 IDE工具简介41.1ADS 1.2简介41.2ADS 1.2集成开发环境练习5第2章ARM指令系统及运算基础实验112.1二进制数加减运算112.2带符号数的加减法运算132.3简单分支程序设计162.4数据块转储实验(循环程序设计)172.5数值1到数值100的累加程序设计182.6搜寻最大数、最小数程序设计20第3章ARM(LPC2000系列)体系结构实验233.1EasyARM2131实验板简介233.2JTAG仿真器的启动与设置233.3基于嵌入式系统的C语言程序实验253.4GPIO输出控制实验1263.5GPIO输出控
2、制实验2283.6GPIO输入实验303.7外中断实验313.8定时器基本功能实验1(匹配反转输出功能应用)343.9定时器基本功能实验2(定时器中断)353.10UART串行数据通信实验1(查询方式)373.11UART 串行数据通信实验2(中断方式)40 引 言本实验指导书包含三部分,分别是ADS1.2 IDE工具简介、ARM指令系统及运算基础实验和ARM(LPC2000系列)体系结构实验。其中,第二部分的实验内容是借助ADS的编译器和调试器进行仿真调试,学习有关ARM 7指令系统指令实验,主要目的是掌握ARM7的指令系统和开发工具的使用,理解ARM CPU的工作过程;第三部分的实验内容是
3、借助广州周立功公司开发的LPC2131实验板,学习配置ARM芯片内各模块部件,初步掌握简单嵌入式系统的构成原理和简单应用。第1章 ADS 1.2 IDE工具简介1.1 ADS 1.2简介 ARM ADS全称为ARM Developer Suite,是由ARM公司提供的专门用于ARM 处理器应用开发和调试的综合性工具软件。目前使用的ADS1.2版本是一款功能强大的开发工具和易于使用的集成开发环境(Integrated Development Environment,IDE)。它可以安装在Windows NT4,Windows 2000,Windows 98,Windows 95,Windows
4、XP和Windows Me操作系统。ADS主要包含CodeWarrior IDE、AXD两部分; CodeWarrior IDE工具主要用于工程的管理配置、源程序的编辑、编译和链接;嵌入式系统开发人员在此环境中,用C、C+或ARM汇编语言编写ARM和Thumb处理器源程序,将源代码文件、库文件、其他相关的文件以及编译环境设置等组织在一个工程中,并可以设置生成在SRAM调试(DebugInSRAM)、在Flash调试(DebugInFLASE)或发布版(RelInFLASH)等不同的生成目标。各生成目标在同一个工程中共享源文件、库文件等,便于用户在不同开发阶段的使用。 AXD主要用于工程的下载和
5、调试。嵌入式系统开发人员使用此工具软件可以对用户程序进行诸如断点的设置与清除、程序运行控制、单步执行、寄存器数据监视和变量的查看等调试操作。另外,AXD挂接在CodeWarrior IDE中,用户可在CodeWarrior IDE中直接点击启动AXD,调试用户程序;也可以单独启动AXD,加载、调试用户代码。1.2 ADS 1.2集成开发环境练习1. 实验目的学习ADS1.2集成开发环境的使用方法。2. 实验设备l 硬件:PC机 一台l 软件:Windows 98/XP/2000系统,ADS1.2集成开发环境3. 实验内容(1) ADS的启动;(2) 使用asm for lpc2131工程模板,
6、建立一个新的工程。(3) 在模板文件main.S文件中,加入用户汇编代码。(4) 编译链接工程。(5) 调试工程。(6) 学习ADS工具的使用。4. 实验预习要求阅读ADS集成开发环境及仿真器应用文档或其它相关资料,了解系统调试技术,了解ADS、AXD的基本功能。5. 实验步骤 启动ADS1.2IDE集成开发环境。 在ADS主窗口主菜单选择File-New,使用asm for lpc2131工程模板建立一个工程(图例中工程名称为:mabo_test1),指定工程路径(图例中工程路径为 D:arm_projectmabo_test1)。 点击确认,创建工程。 在mabo_test1工程窗口,双击
7、模板文件main.S,打开该文件。 可在主窗口菜单选择Edit-Perferences,设置字体和字号。 在main.S文件编辑窗的 “add the user code here. 添加用户代码”行下建立用户汇编程序代码 。ADS窗口工具条行用户工程窗用户代码编辑窗在此处添加用户代码 选择Project-Make(或快捷键),编译链接整个工程。若编译成功,则Erros & Warnings对话框会报告编译错误为0,此时即可对工程进行仿真。ADS窗口主菜单编译报告窗口 选择Project-Debug(或快捷键),IDE环境就会启动AXD调试软件。AXD寄存器窗口,可点击打开各模式寄存器集蓝色箭
8、头指向当前待执行指令执行控制工具图标AXD内存显示窗口6. 调试方法 单步运行;在AXD调试器主窗口,选择 Execute - Step (或快捷键),处理器执行一行代码; 设置断点;在AXD调试器“代码调试窗口”双击目标代码行,若出现红色实心圆点,则表示断点设置成功;然后选择Execute-Go全速运行,处理器执行程序停止在断点行; 运行到光标行;在AXD调试器“代码调试窗口”单击选择目标代码行,然后在AXD调试器主窗口,选择Execute-Run to Cursor运行到光标处;通过断点调试可以观察ARM寄存器和存储单元的数值变化,具体操作方法在后面的实验中会作详细介绍。指定显示内存的地址
9、空间AXD调试代码窗口AXD调试窗口7. 思考(1) 工程模板有哪些作用?(提示:对照VC Studio IDE。)(2) 如何强行重新编译工程的所有文件?(提示:选择Project-Remove Object Code删除工程中的*.obj文件。)第2章 ARM指令系统及运算基础实验2.1 二进制数加减运算1. 实验目的l 了解ADS1.2集成开发环境及ARMulator软件仿真。l 掌握ARM7TDMI常用汇编指令的用法,并能编写简单的汇编程序。l 学习使用LDR/STR/ADD/SUB指令完成存储器的访问及二进制数据加减运算。l 领会处理器进行数据处理的方式原理。2. 实验设备l 硬件:
10、PC机 一台l 软件:Windows 98/XP/2000系统,ADS1.2集成开发环境3. 实验内容(1) 使用LDR指令读取Data1、Data2数据,完成两数相加/减,将结果写入到Data3单元。(2) 使用ADS1.2软件仿真,单步、全速运行程序,设置断点,打开寄存器窗口(Processor Registers)监视R0和R1的值,打开存储器观察窗口(Memory)监视Data1、Data2和Data3存储单元的值。4. 实验预习要求学习ADS工程编辑和AXD调试工具的使用,二进制运算,处理器运行原理。5. 实验步骤 启动ADS1.2IDE集成开发环境,选择asm for lpc213
11、1工程模板建立一个工程TEST2。 在模板文件main.S中,补加用户代码,编写实验程序,保存。 选择主窗口菜单 Project-Make(或直接快捷键),联编工程; 联编无错后,选择主窗口菜单Project-Debug,启动AXD进行软件仿真调试。 注意首次使用 AXD 时,需要设置 AXD 仿真环境,AXD主菜单:选择Options-Configure Target,打开 Choose Target窗口,并在其中选择:ARMUL仿真器;方法如下图示:备注:ARMUL仿真器是AXD环境下的软件仿真器,在PC机上仿真了ARM处理器的执行情况;可用于软件算法调试,不能仿真硬件外设系统。配置 AX
12、D 目标配置 AXD 使用ARMUL 软件仿真器 打开寄存器窗口(Registers),选择Current项,监视R0、R1和R2的值。打开存储器观察窗口(Memory)设置观察Data1、Data2和Data3单元值,显示方式Size为32bit。6. 实验参考程序Data3 = Data1 + Data2 运算汇编指令实验1的参考程序见Error! Reference source not found.程序清单 21 汇编指令实验1参考程序AREAExample1,CODE,READONLY; 声明代码段Example1 ENTRY; 标识程序入口CODE32; 声明32位ARM指令STA
13、RTLDRR11, =Data1; R11 =address( Data1)LDRR0, R11; R0 = Data1LDRR11, =Data2; R11 =address( Data2)LDRR1, R11; R0 = Data2ADDR2, R1, R0LDRR11, =Data3; R11 =address( Data3)STRR2,R11; R1 = R2,即设置COUNT为0HALTBHALTData1DCD 0xData2DCD 0xData3DCD 0x00ENDData3 = Data2 Data1 运算汇编指令实验2的参考程序见Error! Reference sourc
14、e not found.。程序清单 22 汇编指令实验2参考程序AREAExample1,CODE,READONLY; 声明代码段Example1 ENTRY; 标识程序入口CODE32; 声明32位ARM指令STARTLDRR11, =Data1; R11 =address( Data1)LDRR0, R11; R0 = Data1LDRR11, =Data2; R11 =address( Data2)LDRR1, R11; R0 = Data2SUBR2, R1, R0LDRR11, =Data3; R11 =address( Data3)STRR2, R11; R1 Reload Cur
15、rent Image重新加载映像文件。)2.2 带符号数的加减法运算1. 实验目的l 了解ADS1.2集成开发环境及ARMulator软件仿真。l 掌握ARM7TDMI常用汇编指令的用法,并能编写简单的汇编程序。l 学习使用LDR/STR/ADD/SUB指令完成存储器的访问及带负号数的加减运算。l 领会处理器进行数据处理的方式原理及符号数的表示与运算。2. 实验设备l 硬件:PC机 一台l 软件:Windows 98/XP/2000系统,ADS1.2集成开发环境3. 实验内容(1) 使用LDR指令读取Data1、Data2数据,完成两数相加/减,将结果写入到Data3单元。(2) 使用ADS1
16、.2软件仿真,单步、全速运行程序,设置断点,打开寄存器窗口(Processor Registers)监视R0和R1的值,打开存储器观察窗口(Memory)监视Data1、Data2和Data3存储单元的值。(3) 注意观察“CPSR_标志位”的情况,领会CPSR标志位的工作情况与含义;(4) 注意观察符号数的计算机表示方式;4. 实验预习要求学习ADS工程编辑和AXD调试工具的使用,符号数的表示与运算,处理器运行原理。5. 实验步骤(1) 启动ADS1.2IDE集成开发环境,选择asm for lpc2131工程模板建立一个工程TEST2。(2) 在模板文件main.S中,补加用户代码,编写实
17、验程序,保存。(3) 选择主窗口菜单 Project-Make(或直接快捷键),联编工程;(4) 联编无错后,选择主窗口菜单Project-Debug,启动AXD进行软件仿真调试。(5) 打开寄存器窗口(Registers),选择Current项,监视R0、R1和R2的值。打开存储器观察窗口(Memory)设置观察Data1、Data2和Data3单元值,显示方式Size为32bit,注意观察CPSR寄存器中的各标志位的情况。6. 实验参考程序Data3 = Data1 + Data2 运算汇编指令实验1的参考程序见Error! Reference source not found.。程序清单
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 实验 指导书
限制150内