键盘程序 假设 P2.0-P2.3 为 H0-H3,P2.4-P2.7 为 L0-L3 (列) L0 L1 L2 L3 (行) H0 0 1 2 3 H1 4 5 6 7 H2 8 9 A B H3 C D E F 首先,行为 P2 口 的低四位,而列为高四位。P0 口为数码管输出口。 第一种思路就是逐行逐列判断法。 #include #include #define uint unsigned int #define uchar unsigned char uchar code table[17] = { 0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0xc6,0xa1,0x86,0x8e,0xbf};//八段数码管对应 0-F 值. uchar temp; void Delay_1ms(uint i)//1ms 延时 { uint x, j; for(j=0;j