delay(1);
temp=P1; ?//延時//讀P1口?
temp=temp&0xF0; ?//屏蔽低四位
temp=~((temp>>4)|0xF0); ?
if(temp==1) ?//?p1.4?被拉低
key=1;?//第1個按鍵鍵值
else?if(temp==2)//?p1.5?被拉低
key=2; ?//第2個按鍵鍵值
else?if(temp==4)//?p1.6?被拉低
key=3; ?//第3個按鍵鍵值
else?if(temp==8)//?p1.7?被拉低
key=4; ?//第4個按鍵鍵值else
?key?=?16;
P1=0x0F;?//低四位輸入?行為高電平?列為低電平
delay(1); ?//延時
temp=P1;?//讀P1口temp=temp&0x0F;
temp=~(temp|0xF0);
if(temp==2) //第壹行?p1.1?被拉低(直接P1==2?是因為我們P1.0空的,是3*4的矩陣鍵盤)
key=key+0;?
else?if(temp==4)//第二行?p1.2?被拉低
key=key+4;
else?if(temp==8)//第三行?p1.3?被拉低
key=key+8;
else
?key?=?16;
您好!檢測下來問題不大,但還是建議不要替換!