天祥单片机学习之单键检测

代码如下:

#include<reg52.h>
#include<intrins.h>

sbit key2=P3^4;    //按键IO口

//延时10ms
void delay10ms()
{
	unsigned int i=0,j=0;
	
	for(i=0;i<20;i++)
	{
		for(j=0;j<248;j++);
	}
}

void key()
{
	if(key2==0)         //判断按键是否被按下
	{
		delay10ms();    //延时,消抖								  
		if(key2==0)     //再次检测确认按键是否被按下
		{
			P1=_crol_(P1,1); //向左移动一位
		}
		while(key2==0);  //等待按键释放,如果未释放则一直在此等待
	}
}

void main()
{
	P1=0xff;
	P1=0xfe;      //点亮第一盏灯
	while(1)
	{
		key();    //按键识别函数	
	}
}

 

你可能感兴趣的:(单片机,led,按键检测)