lesson5_2.c

来自「按键处理程序」· C语言 代码 · 共 79 行

C
79
字号
#include<reg52.h>
sbit key1=P3^4;
sbit key2=P3^5;
sbit key3=P3^6;
sbit key4=P3^7;
sbit light1=P1^7;
sbit dula=P2^6;
sbit wela=P2^7;
#define uchar unsigned char
#define uint unsigned int
uchar code table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,
0x7d,0x07,0x7f,0x6f,0x77};
uchar num,nn;
display(uchar );
delay(uchar);
uchar scan();
void main()
{
	while(1)
	{
		nn=scan();
		display(nn);
	}
}

display(uchar num1)
{
	P0=table[num1];
	dula=1;
	dula=0;	
	P0=0xc0;
	wela=1;
	wela=0;
}

delay(uchar x)
{
	uchar a,b;
	for(a=x;a>0;a--)
	 for(b=200;b>0;b--);
}

uchar scan()
{
		if(key1==0)
		   {
			 delay(50);	 
			if(key1==0)
			   num=4;
			 while(!key1);
 		   }

		if(key2==0)
		   {
			 delay(50);	 
			if(key2==0)
			 num=5;
			 while(!key2);
 		   }

		if(key3==0)
		   {
			 delay(50);	 
			if(key3==0)
			 num=6;
			 while(!key3);
 		   }

		if(key4==0)
		   {
			 delay(50);	 
			if(key4==0)
			 num=7;
			 while(!key4);
 		   }
		return num;
}

⌨️ 快捷键说明

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