基於uCOS-II的RTC時鐘

一個練手的小項目,想到的能用的傳感器就加上去。
用的是野火STM32-MINI-V3助學板(STM32F103VET6)。
寄存器版的驅動。
代碼沒有特別的優化整理。

實現功能:
    1.  通過OLED顯示RTC時鐘模塊時間信息。
    2.  通過USART1可以設置時間,格式爲“2016 06 04 18 53 55”。
    3.  通過USART1可以重置RTC,格式爲“r”或者“R”。
    4.  按鍵K1可以切換時間和溫溼度顯示方式(在關閉OLED屏的情況下會點亮屏幕)。
    5.  按鍵K2可以開啓或關閉OLED顯示屏。
    6.  人體熱釋電傳感器會在檢測到人體並且OLED屏處於關閉狀態下開啓OLED顯示屏,若此時按K2則關閉OLED顯示屏,否則當檢測不到人體時將自動關閉OLED顯示屏。
    7.  光敏傳感器可以根據環境亮度調節OLED屏幕亮度。
    8.  電容按鍵可進入鬧鐘設置(0-24小時,在關閉OLED屏的情況下會點亮屏幕),爲0時關閉鬧鐘,按第二下確認設置。鬧鐘響時蜂鳴器發出響聲,按一下電容按鍵關閉鬧鐘。
尚存在的問題:
    1.  人體熱釋電傳感器反應不靈敏。
    2.  鬧鐘只能按小時設置。
    3.  鬧鐘沒有重複功能。
    4.  進入設置鬧鐘界面時,未設置超時未設置鬧鐘自動退出功能。

整體.jpg

開機-0.jpg

開機-1.jpg

開機-2.jpg

開機-3.jpg

開機-4.jpg

顯示-0.jpg

顯示-1-0.jpg

顯示-1-1.jpg

鬧鐘-0.jpg

鬧鐘-1.jpg

關屏.jpg

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章