嵌入式系统实验报告Word文件下载.docx
- 文档编号:19749410
- 上传时间:2023-01-09
- 格式:DOCX
- 页数:10
- 大小:438.81KB
嵌入式系统实验报告Word文件下载.docx
《嵌入式系统实验报告Word文件下载.docx》由会员分享,可在线阅读,更多相关《嵌入式系统实验报告Word文件下载.docx(10页珍藏版)》请在冰豆网上搜索。
示例工程路径:
配套光盘内容->
光盘内容v1.00->
3.EasyARM2103安装手册->
GPIOTest,将此文件夹复制到其它目录下打开,要求存放目录必须无中文路径,如图5.13所示。
打开文件夹后,建议用户先删掉“GPIO_Test_Data”文件夹,然后双击打开“GPIOTest.mcp”文件,即打开示例工程。
3.点击“user”文件夹,打开main.c文件,见到示例代码
4.选择低速GPIO,控制LED灯闪烁,示例程序如程序清单所示。
此示例操作需要短接JP4的P0.17,输出控制LED1。
5.编译连接工程。
项目目标栏处选择DebugInFlash模式,然后编译连接工程。
如图所示为工程窗口中的DebugRelSettings…工程设置,如地址设置、输出文件设置、编译选项等,SynchronizeModificatinte同步修改日期,检查工程中每个文件的修改日期,若(如使用其辑源文件),则在h栏标记“√”
Linker生成的Image一般包括三个区域:
代码段、数据段和BSS段。
需要通
过Linker设置这三个段的基址。
通常BSS段是紧接着数据段(RW)之后,因此
只要设置代码段(RO)和数据段(RW)的基址就可以了。
根据芯片资料中提供的器件映射地址来填写。
6.仿真调试。
将计算机并口与EasyJTAG-H仿真器相连,然后再将EasyJTAG-H仿真器的JTAG接口连接到EasyARM2103目标板上,打开H-JTAG,检测到芯片内核信息后,选择AutoDownload选项,此时会自动启动H-Flasher软件,选择目标芯片的型号,将当前的配置信息保存起来,建议将配置信息保存到安装路径下的Hconfig文件夹内。
7.Make(快捷键为F7);
启动AXD进行调试Run启动AXD进行调试,并直接利用ProjectInspector工程检查,查看和配置工程中源文件的,发现有更新它编辑器编Touch;
编译连接
8.设置完成后,关闭H-JTAGServer和H-Flasher(注意:
不能使用Exit项关闭)。
启动AXD,打开【Options】->
【ConfigureTarget...】,弹出ChooseTarget窗口,点击“ADD”添加仿真器的驱动程序,在添加文件
窗口选择如D:
\ProgramFiles\H-JTAG目录下的H-JTAG.dll,点击“打开”即可。
9.在AXD环境点击运行,即可看到led亮。
AXD运行调试工具条如图3.14所示,调试观察窗口工具条如图3.15所示,文件操作工具条如图所示。
运行调试工具条
提高部分:
改变led显示位置,重新编译链接,使led灯亮。
源代码如下:
#include"
config.h"
#defineLED11<
<
17/*P0.17控制LED1*/
/*********************************************************************************************************
**Functionname:
DelayNS
**Descriptions:
延时函数
**inputparameters:
uiDly值越大,延时时间越长
**outputparameters:
无
**Returnedvalue:
*********************************************************************************************************/
voidDelayNS(uint32uiDly)
{
uint32i;
for(;
uiDly>
0;
uiDly--){
for(i=0;
i<
50000;
i++);
}
}
main
跳线JP4短接,LED1闪烁
intmain(void)
PINSEL1=PINSEL1&
(~(0x03<
2));
/*将P0.17设置为GPIO*/
IO0DIR=LED1;
/*设置LED控制口为输出*/
IO0SET=LED1;
/*LED1熄灭*/
while
(1){
DelayNS(50);
/*延时*/
IO0CLR=LED1;
/*LED1点亮*/
return0;
**EndOfFile
**********************************************************************************************************/
五、主程序流程图
六、编写程序实现四个LED灯循环闪烁的功能
#denfineLED11<
17
#defineLED21<
18
#defineLED31<
19
#defineLED41<
20
Voidmain
PINSEL1=PINSEL1(~(0xFF<
2));
/*将P0.17设置为GPIO*/
IO0DIR=LED1|LED2|LED3|LED4;
IO0SET=LED1|LED2|LED3|LED4;
IO0CLR=LED2;
实验二中断实验
1.熟悉arm开发板中断原理。
并产生中断。
2.了解快速中断和普通中断。
编写嵌套中断实验。
三.实验原理
1、EasyARM2103开发板提供了4个绿色发光二极管用作显示,电路如图1.1所示。
2、外部中断
1.以GPIO的中断测试程序为例,熟悉EasyJTAG-H软件的使用方法,程序功能设计为控制单路LED闪烁,硬件电路如图1.1所示。
4.编译连接工程。
5.仿真调试。
6.设置完成后,关闭H-JTAGServer和H-Flasher(注意:
【ConfigureTarget...】,弹出ChooseTarget窗口,点击“ADD”添加仿真器的驱动程序,在添加文件窗口选择如D:
7.为实现嵌套中断,修改main.c函数,重复上述步骤。
8.在AXD环境点击运行,即可看到主程序led亮。
通过中断按键,使其他led灯亮。
附源代码如下:
#defineLED1<
17
Eint0IRQ
外部中断0服务程序
**ouputparameters:
void__irqEint0IRQ(void)
{/*进入中断取反LED*/
if((IO0PIN&
(1<
17))==0){
IO0SET=1<
17;
/*熄灭发光二极管*/
}
else{
IO0CLR=1<
/*点亮发光二极管*/
while((IO0PIN&
16))==0);
/*等待按键松开*/
EXTINT=0x01;
/*清中断标志*/
VICVectAddr=0x00;
/*通知VIC中断处理结束*/
main
P0.16低电平触发外部中断主函数
(~0x03);
PINSEL1=PINSEL1|0x01;
/*设置P0.16为外部中断0管脚*/
/*设置P0.17为GPIO功能*/
IO0DIR=LED;
/*设置P0.17为输出*/
IO0SET=LED;
/*设置输出为高电平*/
IRQEnable();
/*IRQ中断使能*/
EXTMODE=0x00;
/*设置外部中断为低电平触发*/
EXTPOLAR=0x00;
VICIntSelect=0<
14;
/*选择EINT0为FIQ中断*/
VICVectCntl0=0x20|14;
/*将外部中断0分配给向量中断0*/
VICVectAddr0=(uint32)Eint0IRQ;
/*设置中断服务程序地址*/
VICIntEnable=1<
/*使能EINT0中断*/
/*清除EINT0中断标志*/
while
(1);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 实验 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)