在既定的項目中主要涉及兩方面的內(nèi)容,一個是語音播報,另一個則是RTC時鐘的使用。目前RTC時鐘功能終于就緒了,后面還需再為它配置上多時段的設(shè)置與提示處理功能,以便與語音播報功能相銜接。
鑒于官網(wǎng)的例程已基本符合項目的框架要求,故可在其基礎(chǔ)上通過不斷地擴展來達到設(shè)計目標,具體的操作步驟如下:
1.在主文件中添加頭文件#include "fsl_rtc.h"
2.添加相關(guān)的輔助語句
在主函數(shù)main()中添加以下代碼,以啟動RTC運行。
rtc_datetime_t date;//創(chuàng)建結(jié)構(gòu)變量date
RTC_Init(RTC); //初始化RTC
date.year = 2017;//為變量date賦初值
date.month = 04;
date.day = 19;
date.hour = 23;
date.minute = 24;
date.second = 00;
RTC_StopTimer(RTC);//停止RTC
RTC_SetDatetime(RTC, &date);//設(shè)置RTC時鐘初始值
RTC_StartTimer(RTC); //啟動RTC
3.實現(xiàn)RTC顯示
? ???在原OLED顯示功能的基礎(chǔ)上,在主函數(shù)main()中添加以下代碼即可實現(xiàn)圖示效果。
OLED_Clear();
OLED_ShowString(20,0,"RTC clock",16);
OLED_ShowString(0,2,"date:",16);
OLED_ShowString(0,4,"time:",16);
while(1)
{
RTC_GetDatetime(RTC, &date);//讀取RTC
//顯示RTC時鐘值
OLED_ShowNum(48,2,date.year%100,2,16);
OLED_ShowChar(64,2,'-',16);
OLED_ShowNum(72,2,date.month%100,2,16);
OLED_ShowChar(88,2,'-',16);
OLED_ShowNum(96,2,date.day%100,2,16);
OLED_ShowNum(48,4,date.hour%100,2,16);
OLED_ShowChar(64,4,':',16);
OLED_ShowNum(72,4,date.minute%100,2,16);
OLED_ShowChar(88,4,':',16);
OLED_ShowNum(96,4,date.second%100,2,16);
}