分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

上集介紹了硬件部分,這集來簡單介紹一下軟件部分,因為初學和上班等原因,軟件的編寫和調試折騰了很長時間,全部代碼都是自己一個個敲出來的,MCU的3個定時器全部開啟,整個程序沒有用到一個延時函數。IDE用51最常用的Keil,代碼長度為3.8K左右,大概在1千行左右吧。現把幾個模塊和功能分別介紹一下:

分享一個倒計時開關(下)(多圖)

1.數碼管顯示部分

負責計時、設置等功能的顯示,顯示方式分別為常亮和閃爍,計時時數碼管常亮顯示,設置時閃爍顯示,顯示內容分別為數字和字符,執行每一項功能都會先顯示相應的字符。

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

2.按鍵部分

全部功能由3個按鍵實現,分別為設置、加、減、連加、連減,開始、暫停、停止、單次模式和循環模式切換。邏輯稍為複雜,實現起來稍為燒腦,不過最終還是完成了。

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

3.主程序

主要負責各功能的調度、連接和執行,還有初始化和定時器觸發等等。

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

4.EEPROM程序

負責儲存各項功能設置的數據,實現斷電保存。

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

5.頭文件

所有的C文件全部共用1個頭文件,程序的所有定義和函數聲明全部在裡面

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

分享一個倒計時開關(下)(多圖)

整個程序介紹就這麼多了,如果你喜歡的話請點一下關注,有什麼想法可以在評論區留言。


分享到:


相關文章: