進(jìn)行鍵盤掃描及鍵處理時,在程序中直接調(diào)用函數(shù)KeyProcess()即可。鍵處理函數(shù)原 型聲明在頭文件Key.h中,鍵處理函數(shù)可放在程序的任何地方,一個按鍵對應(yīng)一個處理函 數(shù)。 該鍵盤掃描程序去抖動為什么不需軟件延時?因?yàn)閺臒o按鍵到鍵被按下,要進(jìn)行兩次 掃描,此間相當(dāng)于延時去抖動。 該鍵盤掃描程序還有一特色:用二維數(shù)組進(jìn)行按鍵功能處理,使程序更簡單。 /*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 矩陣鍵盤鍵值掃描,功能處理函數(shù) 本程序處理4*4的矩陣鍵盤,直接用于8051系列單片機(jī),也可移植到其它機(jī)型. 行輸出在P1口高四位 列輸入在P1口低四位,如果不同,則需修改鍵值讀取函數(shù) 即:GetKeyCode() 有10個數(shù)字鍵0--9,1個小數(shù)點(diǎn),1個負(fù)號鍵。 第二功能鍵和回車鍵共用一個,如果連續(xù)按下該鍵2秒鐘,則鍵盤進(jìn)入第二功能。 在鍵盤初始化程序InitKeyboard中把ucKey1和ucKey2賦值0xff