设为首页
加入收藏
联系站长
首页 | 文章中心 | 下载中心 | 本站商品 | 学习资料 | 
您现在的位置: 电子爱好者 >> 文章中心 >> ARM入门 >> 正文 用户登录 新用户注册
lpc2103源程序--FGPIO          【字体:
lpc2103源程序--FGPIO
作者:未知    文章来源:互连网    点击数:    更新时间:2007-4-28

/*------------------------------------------------------------
FILE NAME : FGPIO.c
DEscrīptION : 键盘输入。当检测到有按键输入时,对蜂鸣器BUZZER进行取后控制。
                  使用FGPIO口输入方式对按键KEY进行扫描。

//--------------------Include files-------------------------//
#include  <lpc2103.h>
//--------------------Variable ----------------------------//

//-------------------Function prototype-------------------//

//-------------------Function ----------------------------//

//-------------------Define-------------------------------//

#define   BUZZER 0x00000080  /* P0.7引脚控制BUZZER,低电平点亮*/
#define   KEY  0x00040000  /* P0.18引脚连接KEY */


/*--------------------------------------------------------
NAME  : waitkey
ENTRY  TYPE : void
RETURN TYPE : void
PURPOSE  : 等待一个有效按键。本函数有去抖功能。
VERSION  : 0.0.0
DEscrīptION :
CREATE DATE : 12.07.2006
LOGS  :--\
- 1.create;
---------------------------------------------------------*/
void  WaitKey(void)
{  unsigned int  i;

   while(1)
   {  while( (FIOPIN&KEY)!=0 );  // 等待KEY键按下
      for(i=0; i<500; i++);      // 延时去抖
      if( (FIOPIN&KEY)==0 ) break;
   }
  
   while( (FIOPIN&KEY)==0 );   // 等待KEY键放开
}

//------------------ End of file ----------------------------//

/*--------------------------------------------------------
NAME  : main
ENTRY  TYPE : void

RETURN TYPE : void
PURPOSE  : 读取按键,控制BUZZER
VERSION  : 0.0.0
DEscrīptION :
CREATE DATE : 12.07.2006
LOGS  :--\
- 2.create;
---------------------------------------------------------*/
int  main(void)
{  PINSEL0 = 0x00000000;      // 设置所有管脚连接GPIO
   PINSEL1 = 0x00000000;

   SCS=1;                                   //设置快速FGPIO模
   FIODIR = BUZZER;                         // 设置BUZZER控制口为输出,其它I/O为输入
   FIOMASK=0x00000000;                      // 允许快速I/O
   while(1) 
   {  FIOSET =BUZZER;
      WaitKey();
      FIOCLR =BUZZER;
      WaitKey();
   }
   return(0);
}
//------------------ End of file ----------------------------//

文章录入:admin    责任编辑:admin 
  • 上一篇文章: lpc2103源程序--LED数码管显示

  • 下一篇文章: lpc2103 串口发送数据
  • 发表评论】【告诉好友】【打印此文】【关闭窗口
       最新热点    最新推荐    相关文章
  • AT91SAM7S系列评估板

  • 【本站学习光盘列表】

  • 8051、ARM和DSP指令周期分析

  • 32位RISC ARM芯片的应用和选…

  • ARM7在嵌入式应用中启动程序…

  • ARM开发调试教程

  • ARM简介与编程-献给ARM初学者

  • lpc2103实验--外部中断

  • lpc2103源程序--PWM

  • lpc2103源程序--TIME1的计数…

  • 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)  
    {$PopAnnouceWindow(400,440)}