嵌入式系统GPIO 输入输出实验报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式系统GPIO 输入输出实验报告

实验四 GPIO 输入实验 一实验目的 1能够使用GPIO的输入模式读取开关信号 2、掌握GPIO相关寄存器的用法和设置。 3、掌握用C语言编写程序控制GPIO。 二、实验环境 PC机 一台 ADS 1.2集成开发环境 一套 EasyARM2131教学实验平台 一套 三、实验内容 1.实验通过跳线 JP8 连接KEY1与P0.16KEY1 的状态,控制蜂鸣器BEEP 的鸣叫。按下KEY1,蜂鸣器鸣叫,松开后停止蜂鸣。(调通实验后,改为KEY3键进行输入当检测到KEY1有按键输入时点亮发光二极管LED4并控制蜂鸣器响,软件延时后关掉发光管并停止蜂鸣,然后循环这一过程直到检测按键没有输入。4,发光管改为LED6并控制蜂鸣器响软件延时后关掉发光管并停止蜂鸣,然后循环这一过程直到检测按键再次按下。 四、实验原理 当P0 口用于GPIO输入时(如按键输入),内部无上拉电阻,需要加上拉电阻,电路图参见图 4.2。 进行 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.4 LED 控制电路 程序首先设置管脚连接寄存器PINSEL0 和PINSEL1,设置P0.16 为输入,设置P0.7,P1.21 为输出。然后检测端口P0.16 的电平,对P0.7, P1.21进行相应的控制,流程图如图 4.5 所示,实现程序见程序清单 4.1。 图 4.5 按键输入实验流程图 实验步骤、源代码及调试结果 内容 实验步骤① 启动ADS1.2IDE集成开发环境,选择ARM Executable Image for lpc2131工程模板建立一个工程。② 在user组里编写主程序代码main.c。③ 选用DebugIn生成目标,然后编译链接工程。④ 将EasyARM教学实验开发平台上的管脚跳线短接gde台ngtheng 。⑤ 选择Project-Debug,启动AXD进行JLINK仿真调试。⑥ 全速运行程序,程序将会在main.c的主函数中停止。如下图所示 ⑦ 单击Context Variable图标按钮(或者选择Processor Views-Variables)打开变量观察窗口,通过此窗口可以观察局部变量和全局变量。选择System Views-Debugger Internals 即可打开LPC2000系列ARM7微控制器的片内外寄存器窗口。 1等的值和ARM7微控制器的片内外寄存器窗口。如下图所示 ⑧ 可以单步运行程序,可以设置/取消断点;或者全速运行程序,停止程序运行,观察变量的值,判断 图4.6 未按下Key1时IO0PIN的值1时IO0PIN的值 1时IO0PIN寄存器的第0.16相连按下Key1时P0.16管脚输出电平由 现象描述KEY1,蜂鸣器鸣叫,松开后停止蜂鸣。 源代码: #include config.h const uint32 BEEP = 1 7; // P0.7 控制蜂鸣器 const uint32 KEY1 = 1 16; // P0.16 连接KEY1 3时只需const uint32 KEY1 = 1 16”改为“const uint32 KEY3 = 1 18”,其余不变。) /******************************************************************************************* ** 函数名称:main() ** 函数功能:GPIO 输入实验测试。 ** 检测按键KEY1。KEY1 按下,蜂鸣器蜂鸣,松开后停止蜂鸣。 ** 跳线说明:把 JP8 的KEY1 跳线短接,JP11 连接蜂鸣器。 *****************************************************************************

文档评论(0)

jiupshaieuk12 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档