本項目是基于啟明RA6M5開發板搭載2.4寸液晶屏的電子時鐘,該電子時鐘有兩個模式——正常模式和低功耗模式,可以通過開發板的按鍵改變時鐘模式。
項目實現效果如下:
在正常模式下,三個LED都開啟,可以在2.4寸液晶屏上實時顯示RTC提供的日歷時間,并且可以設置鬧鐘,每隔一個小時進行報時。
在正常模式下,由于開啟了低功耗模式的深度軟件待機模式,按下開發板上的SW2鍵進入低功耗模式,三個LED關閉,屏幕熄滅,報時也會關閉。
在低功耗模式下,如果按下SW2鍵,紅燈閃10下,進入正常模式,顯示一下時間,隨后又進去低功耗模式;如果按下SW3鍵,紅燈閃10下,進入正常模式。
可以從串口調試助手看到RA6M5的運行狀況!
一相關配置說明
1Uart4
2RTC
3深度軟件待機模式
Cancel Sources 中開啟IRQ9,IRQ10
4按鍵外部中斷
開啟SW2和SW3的外部中斷
52.4寸液晶屏
八個引腳P001~P003、P006~P008引腳配值為輸出模式,模擬SPI進行驅動
二相關代碼(keil開發)
整體代碼框架如圖
顯示屏移植主要修改一下部分,延時更換一下差不多就可以了
注:項目源碼可點擊文末閱讀原文跳轉獲取。
三遇到的問題及總結
1我們使用keil開發RA6M5時可以用stlink下載,也可以使用Debug調試,有時候下載程序進去后,點Dubug出錯,可以先編譯,然后直接進去Debug,它下載好然后進去!
2RTC時鐘源可以選擇子時鐘或LOCO,按照FSP庫實戰指南時鐘源選擇Sub-Clock,小時進位到時,進位不了,改為LOCO,就可以了,其他配置都一樣,不懂為什么,有大佬知道的話,歡迎評論區留言!
3低功耗模式配置為深度軟件待機模式,用stlink下載進去后,程序有點錯亂,就是什么中斷都可以喚醒MCU,復位之后也不行,但在深度軟件待機模式下,下載程序,下載不了,然后程序就神奇的變好了,同上,歡迎大佬留言!
4由于參加電賽不怎么夠時間完成作品,打算用esp8266聯網獲取準確時間,做不出來(基礎不好),最后感謝野火舉辦的瑞薩RA MCU創意氛圍賽,讓我有機會學習到相關的內容!!!