jinglixixi 发表于 2022-11-30 09:56

【EV Board (MM32L0136C7P)测评】+RTC电子时钟

本帖最后由 jinglixixi 于 2022-11-30 09:57 编辑

在MM32L0136片内有1 个RTC 计数器,并支持日历功能。在使用串口测试时,其测试结果如图1所示。图1 测试结果
由图可知,它是通过串口发送字符“a”来进行RTC的初始化,由字符“b”来读取计时值,由字符“c”来启用闹钟功能。此外,通过串口以1秒的间隔来发送字符“a”,所得到的计时值也是很准确的。
RTC的初始计时值是通过参数定义来实现,其内容如下:#define APP_RTC_SUBSEC_COUNTFREQ256u#define APP_RTC_TIME_SOURCE       RTC_TimeSource_BypShad#define APP_RTC_TIMEMODE          RTC_TimeMode_24Hour#define APP_RTC_TIMEFORMAT      RTC_HourFormat_AM#define APP_RTC_OUTPUT            RTC_OutPut_None#define APP_RTC_POLARITY         RTC_Polarity_None#define APP_RTC_TIMEOUT         1000u#define APP_RTC_YEARS            11u   //2011-03-04#define APP_RTC_MONTHS            3u#define APP_RTC_DAYS               4u#define APP_RTC_WEEK            1u    // 周一#define APP_RTC_HOURS             1u    // 1:2:4#define APP_RTC_MINUTES         2u#define APP_RTC_SECONDS         4u#define APP_RTC_ALARM_SUBSEC      0xfa#define APP_RTC_ALARM_SECONDS   8u#define APP_RTC_ALARM_MINUTES   2u#define APP_RTC_ALARM_HOURS       1u#define APP_RTC_ALARM_DAYS         4u#define APP_RTC_ALARM_MASK      RTC_ALARMMASK_NONE#define APP_RTC_SUBSEC_MASK       RTC_SubSecmask_8bit
在使用时,可按自己的需要来调整。此外,也可添加相应的函数来实现按键的动态设置。

在添加LCD屏的情况下,则可轻松地实现电子时钟的功能,其效果如图2所示。图2 显示效果

实现电子时钟的主程序为:int main(void)
{
    uint32_t dat;
    BOARD_Init();
    app_slcd_init();
    app_rtc_init();
    while (1)
    {
             app_rtc_get_current_time();
             LCD_DisplayNumberH(rtc_time.Hours, rtc_time.Mins, rtc_time.Secs);
             app_delay(100);
    }
}

值得注意的是,RTC的计时值不能以十进制的方式来显示,而必须转换为十六进制数来显示。此外,还可以使用上层的小号数值来显示日期值中的月日值,如图3的形式。但目前的问题是,第3位数字的段码只提供了一半的段码输出,暂时还无法实现它的全段显示。图3 显示日期与时间

演示视频:https://www.bilibili.com/video/BV1jP4y197cs/?vd_source=f302fc0cc3a0425328db53a3b92082ca

xld0932 发表于 2022-11-30 12:57



时间中间的2个冒号用SLCD的闪烁功能实现一下,显示就更完美了

jinglixixi 发表于 2022-12-1 10:42

xld0932 发表于 2022-11-30 12:57
时间中间的2个冒号用SLCD的闪烁功能实现一下,显示就更完美了 ...

有时间就整一下

tabmone 发表于 2022-12-12 10:44

RTC的精度怎么样?            

jinglixixi 发表于 2022-12-12 21:36

tabmone 发表于 2022-12-12 10:44
RTC的精度怎么样?

精确的要有仪器,一般用没问题。
页: [1]
查看完整版本: 【EV Board (MM32L0136C7P)测评】+RTC电子时钟