广工嵌入式实验报告材料文档格式.docx
《广工嵌入式实验报告材料文档格式.docx》由会员分享,可在线阅读,更多相关《广工嵌入式实验报告材料文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
三、工具说明
PC机、ARM仿真器、2440实验箱、串口线、USB传输线。
四、系统结构图
五、实验方法、步骤及结构测试
控制发光二极管闪烁和蜂鸣器间断鸣响代码关键部分表述:
ldrr2,=0xfff
SPARK
;
将portB全部输出高电平;
thepinsofportBishighoutput
ldrr0,=GPBDAT
movr1,r2
strr1,[r0]
mvnr2,r2
ldrr3,=0xfffffff;
调整这个值可以改变发光二极管的闪烁频率(关键)
Delay
SUBSr3,r3,#1;
r3减一同时修改标志位。
BNEDelay;
如果r3减一后不为0,则跳转到Delay继续延迟
BSPARK;
如果r3减一后等于0,则跳转到SPARK标号处改变LED状态
实验步骤:
1.连接好实验环境,将仿真器的一端通过并口连接到PC机,将仿真器的另一端
通过JTAG线连接到2440实验箱的JTAG接口。
拔掉实验箱上的J43与J44跳线
帽。
2.将串口线一端接到PC机,另一端接到2440实验箱的COM1接口,打开串口
超级终端dnw.exe,设置串口BaudRate为115200,选择COM1。
3.打开ADSCodeWarrior,在ADSCodeWarrior中打开实验工程目录中的
GEC2440_ASM_C.mcp;
并对工程进行编译。
4.打开仿真器驱动程序Multi-ICEserver,并加载配置文件ARM920T.cfg。
5.打开ARM的开发环境AXDDebugger,在AXDDebugger中加载实验工程
目录中的可执行映象文件GEC2440_ASM_C.axf。
6.执行映象文件,并观察实验结果。
注:
若没有Multi-ICE调试,可以采用下面方法测试程序:
1.拔掉实验箱上的J43与J44跳线帽。
重启2440实验箱,实验箱会自动执行
flash中的BIOS程序,打开dnw.exe超级终端。
2.在dnw中,输入“0”,选择“USBdownloadfile”,(使用dnw的usb下载功
能需在PC上先安装USB驱动,已经安装过则忽略此步骤。
)
3.点击“USBPort”“Transmit”选择实验工程目录下的可执行映象文件
GEC2440_ASM_C.bin将该文件下载到SDRAM。
4.下载结束后,会提示是否要立即运行,这时输入“Y”,执行GEC2440_ASM_C.bin。
5.在dnw中观察实验结果。
运行结果:
程序运行后:
通过修改蜂鸣器鸣响的响应参数,即控制输出高或低电平的时间间隔,是蜂鸣器从发出连续声音变为某一个时间间隔的蜂鸣。
程序清单:
=========================================
NAME:
ArmjishuLedTest.s
DESC:
控制发光二极管闪烁和蜂鸣器间断鸣响
Creat:
2013.01.17:
HISTORY:
COPYRIGHT:
.armjishu.
Led1-4对应于开发板上的GPB5-8管脚
蜂鸣器对应于开发板上的GPB0管脚
=================
I/OPORTforLEDLED对应端口寄存器地址宏定义
GPBCONEQU0x56000010;
已修改为PORTF,原来是PortB0x56000010
GPBDATEQU0x56000014;
PortBdata0x56000014
GPBUPEQU0x56000018;
Pull-upcontrolB0x56000018
INTERRUPT中断寄存器地址宏定义
INTMSKEQU0x4a000008;
Interruptmaskcontrol
INTSUBMSKEQU0x4a00001c;
Interruptsubmask
WATCHDOGTIMER看门狗寄存器地址宏定义
WTCONEQU0x53000000;
Watch-dogtimermode
CODE32;
CODE32告诉编译器将以下代码编译为ARM指令
AREAInit,CODE,READONLY;
以下部分的名称为Init,是代码段,只读属性
ENTRY;
入口点标示
;
bResetHandlexr;
上电或复位异常跳转到ResetHandler标号处。
=====
Entry
ResetHandlexr
禁止看门狗;
disablewatchdog
ldrr0,=WTCON
ldrr1,=0x0
禁止所有中断;
disableallinterrupt
ldrr0,=INTMSK
ldrr1,=0xffffffff
禁止所有子中断;
disableallsubinterrupt
ldrr0,=INTSUBMSK
ldrr1,=0x7fff
将portB全部配置为输出;
ConfiguresthepinsofportBasoutput
ldrr0,=GPBCON
ldrr1,=0x155555
strr1,[r0]
将portB管脚上拉;
EnablePull-upforportB
ldrr0,=GPBUP
ldrr1,=0x00
以下是控制发光二极管闪烁和蜂鸣器间断鸣响的代码实现.armjishu.
调整这个值可以改变发光二极管的闪烁频率
BSPARK;
END;
END关键字告诉编译器,汇编指令到此结束
实验二、触摸屏
1.了解触摸屏的基本概念与原理
2.编程实现并掌握对触摸屏的控制
1.编程实现触摸屏坐标到LCD坐标的校准
2.编程实现触摸屏坐标采集以及LCD坐标计算
3.编写程序,实现在触摸的任意位置画矩形
GEC2440BOXV1.0实验箱、ADS1.2集成开发环境,ARM仿真器、串口连接线
四、实验原理
4.1触摸屏的工作原理
触摸屏由触摸检测部件和触摸屏控制器组成;
触摸检测部件安装在显示器屏幕前面,用于检测用户触摸位置,接受后送触摸屏控制器;
而触摸屏控制器的主要作用是从触摸点检测装置上接收触摸信息,并将它转换成触点坐标,再送给CPU,它同时能接收CPU发来的命令并加以执行。
4.2触摸屏的主要类型
按照触摸屏的工作原理和传输信息的介质,我们把触摸屏分为四种,它们分别为电阻式、电容感应式、红外线式以及表面声波式。
每一类触摸屏都有其各自的优缺点,要了解哪种触摸屏适用于哪种场合,关键就在于要懂得每一类触摸屏技术的工作原理和特点。
五、实验方法、步骤及实验代码
编程流程与相关函数
实验步骤
1.连接好实验环境,将仿真器的一端通过并口连接到PC机,将仿真器的另
通过JTAG线连接到2440实验箱的JTAG接口。
2.将串口线一端接到PC机,另一端接到2440实验箱的COM1接口,打
口超级终端dnw.exe,设置串口BaudRate为115200,选择COM1。
3.1.17-GEC2440_TC目录下的GEC_TC.mcp;
并对工程进行编译。
5.打开ARM的开发环境AXDDebugger,在AXDDebugger中加载可执行
文件GEC_TC.axf。
1.重起2440实验箱,实验箱会自动执行flash中的BIOS程序,打开dnw.e
级终端。
2.在dnw中,输入“0”,选择“USBdownloadfile”,(使用dnw的usb下载
需在PC上先安装USB驱动,已经安装过则忽略此步骤。
3.点击“USBPort”“Transmit”选择3.1.17-GEC2440_TC目录下的GEC_TC
目录中的DebugRel文件夹中的可执行映象文件GEC2440_TC.bin将该文件下
SDRAM。
4.下载结束后,会提示是否要立即运行,这时输入“Y”,执行GEC2440_TC
实验关键代码:
/**************************************************************
在LCD屏幕上用颜色填充一个矩形
**************************************************************/
voidGlib_FilledRectangle(intx1,inty1,intx2,inty2,intcolor)
{
inti;
for(i=y1;
i<
=y2;
i++)
Glib_Line(x1,i,x2,i,color);
}
/***