//*********主函数**********//
void main()
{
int row,col,temp;
while(1)
{
//****扫描第四列****//
P2=0x7f;
col=3;
P2=0xff;
temp=P2;
temp=temp&0xf0;
switch(temp)
{
case 0xfe:row=0;break;
case 0xfd:row=1;break;
case 0xfb:row=2;break;
case 0xf7:row=3;break;
}
//****扫描第三列****//
P2=0xbf;
col=2;
P2=0xff;
temp=P2;
temp=temp&0xf0;
switch(temp)
{
case 0xfe:row=0;break;
case 0xfd:row=1;break;
case 0xfb:row=2;break;
case 0xf7:row=3;break;
}
//****扫描第二列***//
P2=0xdf;
col=1;
P2=0xff;
temp=P2;
temp=temp&0xf0;
switch(temp)
{
case 0xfe:row=0;break;
case 0xfd:row=1;break;
case 0xfb:row=2;break;
case 0xf7:row=3;break;
}
//******扫描第一列***//
P2=0xef;
col=0;
P2=0xff;
temp=P2;
temp=temp&0xf0;
switch(temp)
{
case 0xfe:row=0;break;
case 0xfd:row=1;break;
case 0xfb:row=2;break;
case 0xf7:row=3;break;
}
P3=key [row][col];
}
}