实验六 ARM9嵌入式系统开发环境实验.doc
文本预览下载声明
ARM9嵌入式系统开发环境实验
【实验目的】
1.了解ARM模块的基本特性。
2.掌握ADS(ARM Developer Suite)集成开发环境的软硬件调试方法。
【实验内容】
1. ADS中的混合控制编程。
2. ADS中的软件开发环境的搭建及调试。
3.ADS中的硬件开发环境的搭建及调试。
4.实现跑马灯。
【实验器材】
1.ARM9开发板
2.ARM JTAG线
3 .PC机(软件:H-JTAG v0.9.2、ADS1.2)
【实验原理】
ARM模块的核心芯片为S3C2410,系统主频最高可达266MHz,Nand Flash为K9F1208,可存储64M Byte, SDRAM可存储32M byte。S3C2410共有117个多功能复用I/O口,分为8组,即PORTA~PORTH。相关寄存器有:端口控制寄存器(GPACON~GPHCON)、端口数据寄存器(GPADAT~GPHDAT)、端口上拉寄存器(GPBUP~GPHUP)、杂项控制寄存器以及外部中断控制寄存器(EXTINTN)等。
ARM核心板的两个LED连接在S3C2410的GPF6和GPF7上,通过修改寄存器内容可控制两端口的电平,当端口输出为0时,LED变亮。
ADS是一种ARM嵌入式开发工具,包含了Code Warrior和AXD两个图形化开发环境,前者用于工程文件管理、程序代码编辑、程序编译链接,后者主要用于软件调试和硬件调试。ADS英文全称为ARM Developer Suite,ARM ADS起源于ARM SDT,对一些SDT的模块进行了增强并替换了一些SDT的组成部分。ARM ADS支持所有的ARM系列处理器,包括最新的ARM9E和ARM10。除了可以在ARM SDT支持的操作系统中运行外,ARM ADS还可以在Windows以及RedHat linux上运行。ARM ADS由6个部分组成:代码生成工具、集成开发环境、调试器、指令集模拟器、ARM开发包和ARM应用库。
?代码生成工具 代码生成工具由源程序编辑、汇编及链接工具集组成。
?集成开发环境 集成开发环境指Code Warrior IDE,包括工程管理器、代码生成接口、语法敏感编辑器、源文件和类浏览器、源代码版本控制系统接口以及文本搜索引擎等。
?调试器 ADS中包含3个调试器,分别是ARM扩展调试器AXD(ARM eXtended Debugger)向下兼容的ARMDebugger for Windows/ARM Debugger forUNIX 和ARM 符号调试器。
3.正常检测到ARM内核后打开AXD,点击Options里的Configure Target,显示如下:
其中ADP为硬件调试方式,ARMUL为软件调试方式。单击ARMUL,然后点击Configure,Processor项选择ARM920T,OK退出,再OK进入软件模拟环境。
4.打开Code Warrior,执行File里New命令,在File name里输入test.s,选择保存位置,确定后在编辑区输入以下代码:
AREA asm, CODE, READONLY
IMPORT add
ENTRY
LDR ro,=0x1
LDR r1,=0x2
LDR r2,=0x3
BL add
B .
END
保存后以同样方式在同一目录在建立main.c文件,代码如下:
int add(int a,int b,int c)
{
return a+b+c;
}
5.建立工程项目,File菜单中选New,在project name中输入test,确定后弹出test.mcp窗口,点击右键后Add Files:
把两文件添加进来,其中Targets选择DebugRel。三种可选目标含义如下:
DebugRel:生成目标时,为每一个源文件生成调试信息;
Release:生成目标时,不生成任何调试信息;
Debug:生成目标时,为每一个源文件生成最完全的调试信息。
6.后续设置如下图:
配置好后点击Make,进行编译。
如果没有错误则窗口如下:
此时在项目文件夹下DebugRel里有后缀为.axf的映像文件和.bin的二进制文件,映像文件用于程序调试,二进制文件用于烧写到FLASH中。
7.进行软件调试。回到AXD界面,单击File,然后Load image打开映像文件。此时可以进行单步运行、断点设置、全速运行等调试。执行后可以看到Register里Current变量如下:
8.下面开始硬件调试:
首先用Code Warrior编写一个硬件调试程序,在此以跑马灯为例,来控制ARM核心板上的两个LED。先建立一个2
显示全部