嵌入式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、定时器设计实验 院系名称: 电子信息学院 专业名称: 电子与通信工程 班 级: 电研12 学生姓名: 武永仙 学 号: 1202810056 指导教师: 王忠民 设计起止时间: 2013年月日~20年月日LPC2000 系列ARM7 微控制器的定时器0的基本设置及匹配输出应用。 3、学习ARM汇编语言程序设计 ,包括GPIO和定时器的设计,及在EasyARM2131上进行调试和运行。 二、实验内容 硬件:嵌入式实验平台一套、仿真器一个、PC 机一台。 软件:Windows 98/2000/NT/XP 操作系统、仿真器驱动程序、ADS 开发软件一套 控制嵌入式实验箱上的LED 轮流点亮。 三、概要设计 S3CRRB0X 芯片上共有71个多功能I/O 引脚,他们分别为7 组I/O 端口: 2个9 位I/O 端口(端口E 和F) 2个8 位I/O 端口(端口D 和G) 1个16 位I/O 端口(端口C) 1个10 位I/O 端口(端口A) 1个11 位I/O 端口(端口B) 每组端口都可以通过软件配置寄存器来满足不同系统合设计的需要。在运行主程序之前,必须先对每一个用到的引脚的功能进行设置。如果某些引脚的附庸功能没有使用,那么可以先将该引脚设置为I/O 口。 S3C44B0X 芯片与端口相关的寄存器: (1)端口控制寄存器(PCONA~G):在S3C44B0X 芯片中,大部分引脚是使用多路复用的,所以要确定每个引脚的功能。PCONn(端口控制寄存器)能够定义引脚功能。如果PG0~PG7 作为掉电模式下的唤醒信号,那么这些端口必须配置成中断模式。 (2)端口数据寄存器(PDATA~G):如果端口定义为输出口,那么输出数据可以写入PDATn 中相应的位;如果端口定义为输入口,那么输入数据可以从PDATn 相应的位中读入。 (3)端口上拉寄存器(PUPC~G):通过配置端口上拉寄存器,可以使该组端口与上拉电阻连接或断开。当寄存器中相应位配置为0 时,该引脚接上拉寄存器;当寄存器中相应位配置为1 时,该引脚不接上拉电阻。 (4)外部中断寄存器(EXTINT):通过不同的信号方式可以使8个外部中断被请求。EXTINT 寄存器可以根据外部中断的需求,将中断触发信号配置为低电平触发,高电平触发,下降沿触发,上升沿触发和边沿触发几种方式。 四、详细设计 1.启动ADS1.2,使用ARM Execuatable Image 工程模板新建一个工程; 2.添加两个组INC 和SRC; 3.将INC 文件夹下所有文件添加到组INC 中; 4.将SRC 文件夹下所有文件添加到组SRC 中; 5.建立源文件test5.C,编写实验程序,添加到工程中; 6.编译链接选项的设置同前面实验; 7.编译链接工程,点击Debug 按钮,启动AXD 进行调试; 8.连续点击step in 按钮,单步运行程序。 9.理解并掌握本实验原理及程序。 流水灯实验流程如下图所示: 五、调试过程,设计技巧及体会 8个LED灯依次实现:全部熄灭后,再全部点亮,依次逐个点亮,依次逐个叠加,依次逐个递减,两个靠拢后分开从两边叠加后递减。 蜂鸣器定时器0.5s定时,实现蜂鸣器每隔1s,响一次0.5s。 通过这次试验,我学会了ADS硬件仿真的设置和调试,实验板的连接,建立C语言工程,掌握了I/O端口相关寄存器的使用。实验过程中遇到一些问题如下载蜂鸣器定时控制后,蜂鸣器没有响,由于没有接P0.7的跳线造成的。每次重新下载程序编译过程中,须要进行Remove Object code,再重新make检测,以免产生错误。 六、附录: 1 流水灯实验 #include config.h /* LED8~LED1 8个LED分别由P1.25~P1.18控制 */ const uint32 LEDS8 = (0xFF 18); // P1[25:18]控制LED8~LED1,低电平点亮 void DelayNS (uint32 dly) { uint32 i; for ( ; dly0; dly--) for (i=0; i50000; i++); } ** 函数名称 :main() ** 函数功能 :流水灯显示实验。 ** 调试说明 :连接跳线JP12至LED8~LED1。 *******************************************************************************************/ /* 流水灯花样,低电平点亮,注意调用时候用了取反操作 */ cons

文档评论(0)

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

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

1亿VIP精品文档

相关文档