程序名称矩阵按键测试显示r
r
按键值通过数码管显示出来r
r
r
r
说明:使用本程序你必须把SE5设置为ON23短接r
r
SE6设置为OFF12短接,SE6设置为0FF很重要,因为时钟芯r
r
片的时钟数据脚跟按键复用,DS1302的RST脚高电平时为选定r
r
该片,当DS1302的时钟脚有变化的时候,会输出数据到数据脚,r
r
影响了按键检测的正确性。当你做按键扫描测试时候,务必把r
r
SE6设置为OFF或者在软件里面将DS1302的RST脚(P35)拉低为0r
r
r
r
r
r
r
头文件r
r
i
cludereg52hr
r
i
cludei
tri
shr
r
defi
eui
tu
sig
edi
tr
r
defi
eucharu
sig
edcharr
r
defi
e_
op_
op_r
r
r
defi
esca
_key_portP1定义矩阵按键端口r
r
sbitP10P10定义独立对地按键端口r
r
sbitP11P11定义独立对地按键端口r
r
sbitP33P33定义独立对地按键端口r
r
sbitP34P34定义独立对地按键端口r
r
r
sbitDS1302_RSTP35定义时钟芯片的选片脚r
r
r
defi
esled_dm_portP0定义数码管段码引脚r
r
defi
esled_wm_portP2r
r
r
r
定义数码管显示字符跟数字的对应数组关系r
r
ucharcodesled_mu
_to_char0xc00xf90xa40xb00x990x920x820xf80x800x900x880x830xc60xa10x860x8e0xffr
r
0123456789abcdef
odispr
r
defi
edp0x7f小数点值r
r
defi
ep0x8cr
r
r
定义需要点亮的数码管r
r
ucharcodesled_bit_table0x7f0xbf0xdf0xef0xf70xfb0xfd0xfer
r
r
uchardatasled_data80xff0xc00xc00xff0xff0xc00xff0xff07号SLED缓冲值r
r
uchardataled_lighte
_bit0LED灯点亮标志位07r
r
r
ucharcodedisp_table0x180x280x480x880x140x240x440x840x120x220x420x820x110x210x410x81r
r
r
r
r
r
r
r
r
1MS为单位的延时程序r
r
voiddelay_1msucharxr
r
r
r
ucharjr
r
whilexr
r
forj0j125jr
r
r
r
r
r
r
r
r
r
r
r
r
r
矩阵按键扫描程序r
r
r
r
r
ucharkey_sca
r
r
r
r
ucharsccoderecoder
r
sca
_key_port0xf0发全