资源描述:
《嵌入式gpio实验》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、西安郵電大学嵌入我系统设it实駿振告题目:GPIO、定时器设计实验院系名称:电子信息学院专业名称:电子与通信工程班级:电研12学生姓名:武永仙学号:1202810056指导教师:王忠民设计起止时间:2013年2月25曰〜2013年6月14曰实验二GPIO实验一、实验目的1、熟悉LPC2000系列ARM7微控制器的GPIO控制,熟悉ARM芯八I/OU编程配置A法。2、熟悉LPC2000系列ARM7微控制器的定时器0的基本没置及匹配输出应用。3、学习ARM汇编语言程序设计,包括GPIO和定时器的设计,及在EasyARM2131上进行调试和运行。二、实验内容硬件:嵌入式实验平台一套、仿真器一
2、个、PC机一台。软件:Windows9^000/NT/XP操作系统、仿真器驱动程序、ADS开发软件一套控制嵌入式实验箱上的LED轮流点亮。三、概要设计S3CRRB0X芯片上共有71个多功能I/O引脚,他们分别为7组I/O端门:2个9位I/O端LI(端LIE和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芯片与端
3、口相关的寄存器:(1)端口控制寄存器(PCONA~G):在S3C44B0X芯片中,大部分引脚是使用多路复用的,所以要确定每个引脚的功能。PCONn(端II控制寄存器)能够定义引脚功能。如果PG0-PG7作为掉电模式下的唤醒信号,那么这些端口必须配置成中断模式。(2)端口数据寄存器(PDATA〜G):如果端口定义为输出口,那么输出数裾可以写入PDATn中相应的位;如果端口定义为输入口,那么输入数据可以从PDATn相应的位中读入。(3)端口上拉寄存器(PUPC〜G):通过配置端门上拉寄存器,可以使该组端口与上拉电阻连接或断开。当寄存器巾相应位配置为0时,该引脚接上拉寄存器;当寄存器中相应位
4、配置为1时,该引脚不接上拉电BI。(4)外部屮断寄存器(EXTINT):通过不同的信号方式可以使8个外部屮断被请求。EXTINT奇存器可以根据外部屮断的需求,将屮断触发信号配罝为低电平触发,高电平触发,下降沿触发,上升沿触发和边沿触发几种方式。四、详细设计1.启动ADS1.2,使用ARMExecuatableImage工程模板新建一个工程;2.添加两个组INC和SRC;3.将INC文件夹下所有文件添加到组INC中;4.将SRC文件夹下所有文件添加到组SRC中;5.建立源文件test5.C,编写实验程序,添加到工程屮;6.编译链接选项的设置同前面实验;7.编译链接工程,点击Debug按钮
5、,启动AXD进行调试;1.连续点击stepin按钮,单步运行程序。2.理解并掌握本实验原理及程序。流水灯实验流程如下图所示:五、调试过程,设计技巧及体会8个LED灯依次实现:全部熄灭后,再全部点亮,依次逐个点亮,依次逐个叠加,依次逐个递减,两个靠拢后分开从两边叠加后递减。蜂鸣器定时器0.5s定时,实现蜂鸣器每隔Is,响一次0.5s。通过这次试验,我学会了ADS硬件仿真的没置和调试,实验板的连接,建立C语言工程,掌握了I/O端口相关寄存器的使用。实验过程中遇到一些问题如下载蜂鸣器定时控制后,蜂鸣器没有响,由于没有接P0.7的跳线造成的。每次重新下载程序编译过程屮,须要进行RemoveOb
6、jectcode,再重新make检测,以免产生错误。六、附录:1流水灯实验#include"config.h"/*LED8~LED18个LED分别由Pl.25〜Pl.18控制*/constuint32LEDS8=(OxFF«18);//Pl[25:18】控制LED8~LED1,低电平点亮voidDelayNS(uint32dly){uint32i;for(;dly>0;dly-)for(i=0;i<50000;i++);**函数名称:main()**函数功能:流水灯显示实验。**调试说明:连按跳线jP12至LED8〜LED1。木氺木木木氺木氺木木木木木本氺木木木木木木木木氺木氺木氺木木
7、氺氺木木木木氺木木木氺木氺木氺木木木木氺木木木木木木木氺木木木木氺木氺木氺木木木氺木本氺木氺木氺木本*木木木*木本*本木本//*流水灯花样,低电平点亮,注意调用时候用了取反操作*/constuint32LED_TBL[]={0x00,OxFF,//全部熄灭后,再全部点亮0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,//依次逐个点亮0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,OxFF,/