keyin.c

来自「Lpc2103的小程序」· C语言 代码 · 共 63 行

C
63
字号
/****************************************Copyright (c)**************************************************
**
**                                  北天星国际有限公司
**                                http://www.po-star.com
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************
* 文件名:KEYIN.C
* 功能:键盘输入。当检测到有按键输入时,对发光二极管LED1和LED2进行取反控制。
        并且两个灯交替闪烁。 使用I/O口输入方式对按键KEY1进行扫描。
* 说明:将跳线器JP1_KEY1,JP2短接。
****************************************************************************/
#include  "..\inc\config.h"



/****************************************************************************
* 名称:WaitKey()
* 功能:等待一个有效按键。本函数有去抖功能。
* 入口参数:无
* 出口参数:无
****************************************************************************/
void  WaitKey(void)
{ U32  i;

   while(1)
   {  while( (IO0PIN&KEY1)!=0 );	// 等待KEY1键按下
      for(i=0; i<50000; i++);		// 延时去抖
      if( (IO0PIN&KEY1)==0 ) break;
   }

   while( (IO0PIN&KEY1)==0 ); 		// 等待KEY1键放开
}


/****************************************************************************
* 名称:main()
* 功能:读取按键,控制LED闪烁
****************************************************************************/
void  main(void)
{  PINSEL0 = 0x00000000;		    // 设置所有管脚连接GPIO
   PINSEL1 = 0x00000000;

   IO0DIR = LED1CON|LED2CON;			        // 设置LED控制口为输出,其它I/O为输入
   while(1)	
   {  IO0SET = LED1CON;
      IO0CLR = LED2CON;
      WaitKey();
      IO0CLR = LED1CON;
      IO0SET = LED2CON;
      WaitKey();
   }

}








⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?