📄 main.c
字号:
#include<reg52.h>
sbit cs_138=P2^6;
sbit cs_373=P2^5;
unsigned code zima1[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
unsigned char keydat=1;
void keyscan(void); //按键扫描函数声明;
void keyfind(unsigned char); //按键分析函数声明;
void main()
{
cs_138=1;
cs_373=1;
while(1)
{
P1=0xf0;
if((~P1)&0xf0) //判别列线是否有键被按下
{
keyscan();
}
P0=zima1[keydat-1]; //所要显示的数据
P2=0x1c|0x60; //所要显示的数据位置
}
}
/*以下是按键函数处理的调用程序*/
void keyscan(void)
{
P1=0xfe;
keyfind(0);
P1=0xfd;
keyfind(4);
P1=0xfb;
keyfind(8);
P1=0xf7;
keyfind(12);
}
void keyfind(unsigned char i) //键植分析
{
switch((~P1)&0xf0)
{
case 0x10:
keydat=1+i; //列线p14被按下
break;
case 0x20:
keydat=2+i; //列线p15被按下
break;
case 0x40:
keydat=3+i; //列线p16被按下
break;
case 0x80:
keydat=4+i; //列线p17被按下
break;
default:break;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -