满意答案
#include
#include
#define uchar unsigned char
uchar key;
int i=0;
char b[4]={‘0′,’0′,’0′,’0’};//输入的密码放这里和初始的比较来判断是否密码正确
void keyscan()//扫描按键是否按下
{
uchar temp;
P3=0xfe;//扫描第一行
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)//判断按键是否按下
{
delayms(10);//去抖动
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)//确认按键按下
{
temp=P3;
switch(temp)
{
case 0xee:key=’0′;break;
case 0xde:key=’1′;break;
case 0xbe:key=’2′;break;
case 0x7e:key=’3′;break;
}
while(temp!=0xf0)//判断按键是否松开
{
temp=P3;
temp=temp&0xf0;
}
b