main.c

来自「Proteus在MCS-51%26ARM7系统中的应用百例 Proteus在M」· C语言 代码 · 共 40 行

C
40
字号

/******************************************************************************
*File:Main.c
*功能: 键盘输入.当检测到有按键输入时,对发光二极管进行取反控制
*      使用I/O口输入方式对按键进行扫描
*******************************************************************************/
#include   "config.h"
#define      LEDCON           0x00000200   /*P0.9引脚控制LED,低电平点亮*/
#define      KEY             0x00008000   /*P0.15引脚连接按键*/
/*******************************************************************************
*名称:WaitKey()
*功能:等待一个有效按键.本函数有去抖功能
*******************************************************************************/
void WaitKey(void)
{  uint32 i;
   while(1)
   { while((IOPIN&KEY)!=0);   //等待按键按下
     for(i=0;i<50000;i++);     //延时去抖
     if((IOPIN&KEY)==0)break;
   }
   
   while((IOPIN&KEY)==0);     //等待按键放开
}
/*******************************************************************************
*名称:main()
*功能:读取按键,控制LED闪烁
*******************************************************************************/
int main(void)
{ PINSEL0=0x00000000;            //设置所有引脚连接GPIO
  PINSEL1=0x00000000;
  
  IODIR=LEDCON;                  //设置LED控制口为输出,其它I/O为输入
  while(1)
  { IOSET=LEDCON;
    WaitKey();
    IOCLR=LEDCON;
    WaitKey();
  }
  return(0);
}

⌨️ 快捷键说明

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