嵌入式系统GPIO输入输出实验报告Word文档格式.docx

上传人:b****4 文档编号:16039981 上传时间:2022-11-17 格式:DOCX 页数:10 大小:202.74KB
下载 相关 举报
嵌入式系统GPIO输入输出实验报告Word文档格式.docx_第1页
第1页 / 共10页
嵌入式系统GPIO输入输出实验报告Word文档格式.docx_第2页
第2页 / 共10页
嵌入式系统GPIO输入输出实验报告Word文档格式.docx_第3页
第3页 / 共10页
嵌入式系统GPIO输入输出实验报告Word文档格式.docx_第4页
第4页 / 共10页
嵌入式系统GPIO输入输出实验报告Word文档格式.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

嵌入式系统GPIO输入输出实验报告Word文档格式.docx

《嵌入式系统GPIO输入输出实验报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《嵌入式系统GPIO输入输出实验报告Word文档格式.docx(10页珍藏版)》请在冰豆网上搜索。

嵌入式系统GPIO输入输出实验报告Word文档格式.docx

进行GPIO输入实验时,先要设置IODIR使接□线成为输入方式,然后读取IOPIN的值即可。

图4.2按键电路原理图

实验通过跳线JP8连接KEY1.P0.16,程序检测按键KEY1的状态,控制蜂鸣器BEEP的鸣叫。

按下KEY1,蜂鸣器鸣叫,松幵后停止蜂鸣。

在这个实验中,需要将按键KEY1输入口P0.16设为输入□而蜂鸣器控制口P0.7设置为输出口。

蜂鸣器电路如图4.3所示,当跳线JP6连接蜂鸣器时,P0.7控制蜂鸣器,低电平时蜂鸣器鸣叫。

LED灯电路如图4.4所示,低电平时灯亮。

图4.3蜂鸣器控制电路

图4.4LED控制电路

程序首先设置管脚连接寄存器PINSEL0和PINSEL1,设置P0.16为输入设置P0.7,P1.21为输出。

然后检测端口卩0.16的电平,对P0.7,P1.21进行相应的控制,流程图如图4.5所示,实现程序见程序清单4.1。

图4.5按键输入实验流程图

五、实验步骤.源代码及调试结果

内容1

实验步骤

1启动ADS1.2IDE集成开发环境,选择ARMExecutableImageforlpc2131工程模板建立一个工程BEEP_keyo

2在user组里编写主程序代码main.c。

3选用DebuglnFLASH生成目标,然后编译链接工程。

4将EasyARM教学实验开发平台上的相应管脚跳线短接。

5选择Project->

Debug,启动AXD进行JLINK仿真调试。

6全速运行程序,程序将会在main.c的主函数中停止。

如下图所

加:

7单击ContextVariable图标按钮(或者选择ProcessorViews->

Variables)打开变量观察窗口,通过此窗□可以观察局部变量和全局变量。

选择SystemViews->

DebuggerInternals即可打开LPC2000系列ARM7微控制器的片内外寄存器窗口。

通过变量窗□可以观察变量BEEP、KEY1等的值和ARM7微控制

器的片内外寄存器窗口。

如下图所示:

8可以单步运行程序,先按下Keyl,观察IOOPIN寄存器的值,

然后断开Keyl,观察IOOPIN寄存

器的值。

可以设置/取消断点;

或者

*欧阳光明*创编

全速运行程序,停止程序运行,观察变量的值,判断蜂鸣器控制是否正确。

图4.6未按下Keyl时IOOPIN的值图4.7按下Keyl时IOOPIN

的值

由上两图可知,当按下Keyl时,IOOPIN寄存器的第16位由1变为0(F变为E),keyl与P0.16相连,按下Keyl时,P0.16管脚输出电平由1变为0,寄存器值变化,蜂鸣器响,说明控制是正确的。

现象描述:

按下KEY1,蜂鸣器鸣叫,松幵后停止蜂鸣。

源代码:

#include"

config.h"

constuint32BEEP=1«

7;

//P0.7控制蜂鸣器

constuint32KEY1=1«

16;

//P0」6连接KEY1

(改为KEY3时,只需“constuint32KEY1=1«

16”改为“const

uint32KEY3=1«

18w,其余不变。

/■士■士%•丄■■士■士%J”•士■士■丄"

■士J.■士■士•土

f彳・彳、哼.

■士■土*1*•土%L**1*

#7^#1%#T*#Tv#Tv

**函数名称:

main()

糾函数功能:

GPIO输入实验测试。

糾检测按键KEY1OKEY1按下,蜂鸣器蜂鸣,松开后停止蜂鸣。

糾跳线说明:

把JP8的KEY1跳线短接,JP11连接蜂鸣器。

•士•["

■士■士■士•士■]"

%■士■士■["

%•士•士■]"

%■士■士■]"

■丄.•["

■士■土■]"

•士

叫・彳.彳.#r^#Tv

■[“■]“•土•土%f>

%■士■”•士■士■”■士■]“•”•士■士!

#r%#r%V#v^>

intmain(void)

{PINSEL0=0x00000000;

//所有管脚连接GPIO

PINSEL1=0x00000000;

IOODIR=BEEP;

//蜂鸣器控制□输出,其余输入

while

(1)

{if((IOOPIN&

KEY1)==0)IOOCLR=BEEP;

//如果KEY1按下,蜂

鸣器鸣叫

elseIOOSET=BEEP;

//松幵则停止蜂鸣

return0;

内容二

1启动ADS1.2IDE集成开发环境,选择ARMExecutableImage

forlpc2131工程模板建立一个工程BEEP_keyo

Debug,启动AXD逬行JLINK仿真调试。

Variables)打开变量观察窗口,通过此窗□可以观察局部变量和全局变量。

DebuggerInternals即可打开LPC2000系列ARM7微控制器的片内外寄存器窗口。

通过变量窗□可以观察变量BEEP、KEY1等全局变量、i等本地

变量和ARM7微控制器的片内外寄存器窗口。

如下图所示:

左图所示为ARM7微控制器的片内寄存器窗口。

图4.9本地变量

图4.8全局变量

水欧阳光明*创编

8

可以单步运行程序,先按下Keyl,观察IOOPIN寄存器的值,然后断开Keyl,观察IOOPIN寄存器的值。

或者全速运行程序,停止程序运行,观察变量的值,判断蜂鸣器控制是否正确。

的第16位由1变为0;

而KEY1对应管脚P0.16,当按下时输入低电平,这说明KEY1的控制是正确的。

上图所示为运行“IO0CLR=BEEP”后IOOPIN寄存器的值,与图4.10对比,发现第8位由1变为0,BEEP对应P0.7管脚,这说明BEEP的控制是对的。

当按下KEY1时,蜂鸣器鸣响,LED4亮;

当松开KEY1后,蜂鸣器静音,LED4灭。

源代码如下:

#include'

'

(改为KEY4按键时,只需把上句代码改为"

constuint32

KEY4=1«

19,\其余不变)

constuint32LEDS4=1«

21;

//P1[21]控制LED4,低电平点亮

(改为LED6时,只需把上句代码改为“constuint32LED6=1«

23:

其余不变。

J7"

■士•土■]"

■丄"

•丄"

■士7“■["

•土■士vi#%Lr•]"

■土■["

7"

J”■士7"

■士■土■士■士7"

・士^L>

7“"

“•”

g彳、彳・^4*^T%#T%^yw#T%#T%彳、^T*^T%

•]“■[“■士■土■["

%fx■”•士

#7^#T%#T%zT^#Jv^Tw#T^#T%#T%#Tw

糾检测按键KEYloKEY1按下,蜂鸣器蜂鸣,松开后停止蜂鸣。

粋跳线说明:

把JP8的KEY]跳线短接,JP11连接蜂鸣器。

•]"

■["

■士■土J"

%f>

■”•士kI^■["

•土■士•[“%■士kI^/

#jv^Tw#T^#T%#T%t

{

Uint32i;

PINSELO=0x00000000;

IO0DIR=BEEP;

//蜂鸣器控制□输出0

IO1DIR=LEDS4;

//设置LED4灯亮

KEYl)==0)

for(i=0;

i<

1000;

i++);

〃软件延时

IO0CLR=BEEP;

//如果KEY1按下,蜂鸣器鸣叫

IO1DCLR=LEDS4;

else

IO0SET=BEEP;

//松开则停止蜂鸣

101SET二LEDS4;

〃设置LED4灯灭

}

内容三

示:

7单击ContextVariable图标按钮(或者选择ProcessorViews-

>

Variables)打开变量观察窗口,通过此窗□可以观察局部变

量和全局变量。

通过变量窗□可以观察变量BEEP、KEY1等的值和ARM7微控制器的片内外寄存器窗口。

由上两图可知,

可以单步运行程序,先按下Keyl,观察IOOPIN寄存器的值,然后断开Keyl,观察IOOPIN寄存器的值。

可以设置/取消断点;

或者全速运行程序,停止程序运行,观察变量的值,判断蜂鸣器控制是否正确。

图4.12未按下Keyl

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1