void?main()?//主函數
{
unsigned?char?//?無符號字符型
tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};//定義壹個數組?LED數碼管譯碼用的碼表
while(1)?//主循環
{
P2=P2|0x07;?//?P2口與0x07按位進行或運算
while(P2&0x07==0x07);//如果P2扣低三位為111則原地等待
switch(P2&0x07)//獲取P2低三位值並且據此執行響應的操作
{
0x06:P0=tab[0x0D];break;//P2低三位為06H,數碼管顯示“d”
0x05:P0=tab[0x0E];break;//P2低三位為05H,數碼管顯示“E”
0x03:P0=tab[0x0F];break;//P2低三位為03H,數碼管顯示“F”
}
}
}