程式要求:板子上選擇四個獨立按鍵,從左到右依次為K1-k4.選擇四個數碼管,從左到右依次為m1-m4.按鍵前沿消抖程式。按下k1,在m1上顯示1,m2到m4不顯示,再按下k1顯2,加到99後再按下k1返回到0. 按下其他鍵時,與k1操作相同,同時,每次按下按鍵LED1閃爍一下。
工具/原料
51單片機板子
電腦及各種相關軟體
方法/步驟
開啟keil軟體,寫軟體的標頭檔案
#include
#include
並定義了段選,位選數碼管程式碼
定義一些其他變數和IO口,還有宣告全域性函式
定義一個函式,這個函式用陣列來控制數字個位buf[0]和十位buf[1]要顯示的數字
定時器初始化程式,選用定時器0,工作方式為0。
開始寫主函數了,首先讓定時器初始化,然後進行while(1)死迴圈,不斷對鍵盤掃描和不斷的顯示。
中斷處理程式,這樣寫可以避免按鍵和數碼管之間的衝突。
按鍵掃描程式,同時也加入消抖程式,同過按鍵通過對y的處理。
延時程式,主要是為了按鍵消抖。
注意事項
一定要用中斷控制數碼管。
按鍵一定要消抖