void keyscan(void)
{
unsigned char n;
//扫描第一行
P1=0xef;
n=P1;
n&=0x0f;
if(n!=0x0f)
{
delay();
P1=0xef;
n=P1;
n&=0x0f;
if(n!=0x0f)
{
switch(n)
{
case(0x0e):display(0);break;
case(0x0d):display(1);break;
case(0x0b):display(2);break;
case(0x07):display(3);break;
}
}
}
//扫描第二行
P1=0xdf;
n=P1;
n&=0x0f;
if(n!=0x0f)
{
delay();
P1=0xdf;
n=P1;
n&=0x0f;
if(n!=0x0f)
{
switch(n)
{
case(0x0e):display(4);break;
case(0x0d):display(5);break;
case(0x0b):display(6);break;
case(0x07):display(7);break;
}
}
}
//扫描第三行
P1=0xbf;
n=P1;
n&=0x0f;
if(n!=0x0f)
{
delay();
P1=0xbf;
n=P1;
n&=0x0f;
if(n!=0x0f)
{
switch(n)
{
case(0x0e):display(8);break;
case(0x0d):display(9);break;
case(0x0b):display(10);break;
case(0x07):display(11);break;
}
}
}
//扫描第四行
P1=0x7f;
n=P1;
n&=0x0f;
if(n!=0x0f)
{
delay();
P1=0x7f;
n=P1;
n&=0x0f;
if(n!=0x0f)
{
switch(n)
{
case(0x0e):display(12);break;
case(0x0d):display(13);break;
case(0x0b):display(14);break;
case(0x07):display(15);break;
}
}
}
}
//函数功能:主程序
void main(void)
{
while(1)
{
keyscan();
}
}
jizzll_617398179 2008-5-7 12:46