📄 key-and-led-display.c
字号:
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit x=P2^0;
uchar code table[]={
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0x88,0x83,
0xa7,0xA1,0x86,0x8e};
uchar temp,num;
delay(uchar);
display(uchar);
void main()
{
while(1)
{
P0=0xfe;
temp=P0;
temp=temp&0xf0;
if(temp!=0xf0)
{
delay(50);
if(temp!=0xf0)
{
switch(temp)
{
case 0xe0: num=0;
break;
case 0xd0: num=1;
break;
case 0xb0: num=2;
break;
case 0x70: num=3;
break;
}
}
}
P0=0xfd;
temp=P0;
temp=temp&0xf0;
if(temp!=0xf0)
{
delay(50);
if(temp!=0xf0)
{
switch(temp)
{
case 0xe0: num=4;
break;
case 0xd0: num=5;
break;
case 0xb0: num=6;
break;
case 0x70: num=7;
break;
}
}
}
P0=0xfb;
temp=P0;
temp=temp&0xf0;
if(temp!=0xf0)
{
delay(50);
if(temp!=0xf0)
{
switch(temp)
{
case 0xe0: num=8;
break;
case 0xd0: num=9;
break;
case 0xb0: num=10;
break;
case 0x70: num=11;
break;
}
}
}
P0=0xf7;
temp=P0;
temp=temp&0xf0;
if(temp!=0xf0)
{
delay(50);
if(temp!=0xf0)
{
switch(temp)
{
case 0xe0: num=12;
break;
case 0xd0: num=13;
break;
case 0xb0: num=14;
break;
case 0x70: num=15;
break;
}
}
}
display(num);
}
}
delay(uchar x)
{
uchar a,b;
for(a=x;a>0;a--)
for(b=200;b>0;b--);
}
display(uchar num1)
{
P1=table[num1];
x=0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -