硬體: E3 Gateway A02 開發板,圖(1)
軟體:E3 MCAL3.0 e3_ref_gateway 工程。
二、測試方法與說明
啟動開發板,輸入 help 命令,可以發現有如圖(2)所示的 demo。這些 demo 的實現在MCAL_release\test_suite\example\mcu_example\mcu_example.c 文件中
1)rtc_time_test_example()用於設置萬年曆。依次傳入參數
<year> <month> <day> <hour> <second> <RTC index>,其中 <RTC index> 用於指定使用 RTC0 還是RTC1。函數調用流程如圖(3),Rtc_SetTime()函數用於將傳入的年月日時分秒轉化為 sec,然後寫入 RTC 模塊對應的寄存器。
測試結果見圖(4),設置時間為 2023/02/04 11:11:11,使用 rtc0。
2)rtc_alarm_test_example()函數用於設置alarm,首先設置默認日期為2022/8/16 10:14:00,
然後調用Rtc_SetAlarmTime()設置3個alarm,分別是 10s 25s 50s 後觸發。
測試結果見圖(6),經過對應的時間後,相關 alarm 事件觸發。
3)rtc_alarm_clear_test_example()用於測試 alarm 清除功能,和rtc_time_test_example()代碼不同的地方在於 i=1(即25s)時,調用Rtc_ClearAlarmTime()清除alarm。代碼區別和測試結果如圖(7)所示。
4)rtc_is_leap_year_example()用於計算某年是否是閏年,測試結果如圖(8)
5)rtc_get_sleep_example()用於測試 RTC 休眠,調用 Mcu_SetMode(MCU_MODE_RTC); 進入休眠模式。10s 後自動喚醒,或者按下板子上的 SYS_WAKEUPO 按鈕。
10s 的時間是通過EB 配置的,配置路徑如下圖(10):
6)rtc_clear_timercount_example()用於reset 萬年曆。恢復到1970/01/01,測試結果如圖(11)
參考文獻:
- 12.pdf
- 0.pdf
歡迎在博文下方留言評論,我們會及時回復您的問題。如有更多需求,歡迎聯繫大聯大世平集團 ATU 部門:atu.sh@wpi-group.com
作者:Sim Guo / 郭夕峰
評論