while(*p)
{
WriteLCD1602Dat(*p);
p++;
}
}
/*按鍵掃描函數(shù),返回掃描鍵值*/
uchar KeyScan() //鍵盤掃描函數(shù),使用行列反轉(zhuǎn)掃描法
{
uchar num1;
static uchar key_on =0;
P2=0x0f;
if(P2!=0x0f)
{
if(key_on==0)
{
key_on=1;
num1=P2;
num1 |= 0xf0;
P2=num1;
num1=P2;
return(num1);
}
}
else
{
key_on=0;
}
return(0xff);
}
uchar KeyPro()
{
switch(KeyScan())
{
// case 0x7e:return '+';break;//0 按下相應(yīng)的鍵顯示相對應(yīng)的碼值
// case 0x7d:return '-';break;//1
// case 0x7b:return '*';break;//2
// case 0x77:return '/';break;//3
//
// case 0xbe:return '3';break;//4
// case 0xbd:return '6';break;//5
// case 0xbb:return '9';break;//6
// case 0xb7:return '=';break;//7
//
// case 0xde:return '2';break;//8
// case 0xdd:return '5';break;//9
// case 0xdb:return '8';break;//a
// case 0xd7:return '0';break;//b
//
// case 0xee:return '1';break;//c
// case 0xed:return '4';break;//d
// case 0xeb:return '7';break;//e
// case 0xe7:return '.';break;//f
// default:return 0xff;break;
//
case 0xe7:return '.';break;//0 按下相應(yīng)的鍵顯示相對應(yīng)的碼值
case 0xeb:return '0';break;//1
case 0xed:return '=';break;//2 .0=/
case 0xee:return '/';break;//3
case 0xd7:return '7';break;//4
case 0xdb:return '8';break;//5 789*
case 0xdd:return '9';break;//6
case 0xde:return '*';break;//7
case 0xb7:return '4';break;//8
case 0xbb:return '5';break;//9 456-
case 0xbd:return '6';break;//a
case 0xbe:return '-';break;//b
case 0x77:return '1';break;//c
case 0x7b:return '2';break;//d 123+
case 0x7d:return '3';break;//e
case 0x7e:return '+';break;//f
default:return 0xff;break;