📄 1.c
字号:
#include <reg51.h>
sbit flag = P3^2;
unsigned char key_code = 10;
void delay() //延时函数;
{
unsigned char a,b;
for(a=0;a<20;a++)
for(b=0;b<100;b++);
}
key() //按键处理函数;
{
unsigned char k =0xfe, column = 0;
while(1)
{
SBUF = k;
while(TI !=1);
TI = 0;
if(flag != 0)
{
column++;
if(column >= 8) column = 0;
k = k<<1;
}
else
{
key_code = column;
SBUF = 0x00;
while(TI == 0);
TI = 0;
return(key_code);
break;
}
}
}
main()
{
SCON = 0x00;
EA = 0;
ES = 0;
SBUF = 0x00;
while(TI !=1);
TI = 0;
while(1)
{
if(flag == 0)
{
delay();
if(flag == 0) key();
}
switch(key_code)
{
case 0:
P1 = 0x01;
break;
case 1:
P1 = 0x02;
break;
case 2:
P1 = 0x04;
break;
case 3:
P1 = 0x08;
break;
case 4:
P1 = 0x10;
break;
case 5:
P1 = 0x20;
break;
case 6:
P1 = 0x40;
break;
case 7:
P1 = 0x80;
break;
default:
P1 = 0x00;
break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -