查看: 6042|回复: 5

[原创] 【OKdo E1双核Cortex M33开发板】基于OKdo E1开发板的RTC电子时钟

[复制链接]
  • TA的每日心情
    奋斗
    2023-2-15 00:12
  • 签到天数: 969 天

    连续签到: 1 天

    [LV.10]以坛为家III

    175

    主题

    2843

    帖子

    34

    金牌会员

    Rank: 6Rank: 6

    积分
    7123
    最后登录
    2023-4-20
    发表于 2020-11-25 00:12:59 | 显示全部楼层 |阅读模式
    本帖最后由 jinglixixi 于 2020-12-10 11:42 编辑

    LPC55S69的内核中配置了RTC计时器,并在函数库中也提供了相应的函数支持。为此,我们只需要调用相关的函数并为它配置一个显示屏就可实现RTC电子时钟的功能。
    实现图示效果的主程序为:
    1. int main(void)
    2. {
    3. uint32_t sec,i;
    4. uint32_t currSeconds;
    5. uint8_t index;
    6. rtc_datetime_t date;
    7. /* Board pin, clock, debug console init */
    8. /* attach 12 MHz clock to FLEXCOMM0 (debug console) */
    9. CLOCK_AttachClk(BOARD_DEBUG_UART_CLK_ATTACH);
    10. /* Enable the RTC 32K Oscillator */
    11. //  SYSCON->RTCOSCCTRL |= SYSCON_RTCOSCCTRL_EN_MASK;
    12. BOARD_InitPins();
    13. BOARD_BootClockFROHF96M();
    14. BOARD_InitDebugConsole();
    15. /* Init RTC */
    16. RTC_Init(RTC);
    17. app_oled_init();
    18. OLED_Init();
    19. OLED_Clear();
    20. OLED_ShowString(0,0,"OKDOE1 TEST",16);
    21. OLED_ShowString(0,2,"RTC & OLED",16);
    22. OLED_ShowString(0,5,"  :  :",16);
    23. /* Set a start date time and start RT */
    24. date.year   = 2020U;
    25. date.month  = 11U;
    26. date.day    = 11U;
    27. date.hour   = 19U;
    28. date.minute = 0;
    29. date.second = 0;
    30. /* RTC time counter has to be stopped before setting the date & time in the TSR register */
    31. RTC_StopTimer(RTC);
    32. /* Set RTC time to default */
    33. RTC_SetDatetime(RTC, &date);
    34. /* Enable RTC alarm interrupt */
    35. RTC_EnableInterrupts(RTC, kRTC_AlarmInterruptEnable);
    36. /* Enable at the NVIC */
    37. EnableIRQ(RTC_IRQn);
    38. /* Start the RTC time counter */
    39. RTC_StartTimer(RTC);
    40. /* This loop will set the RTC alarm */
    41. while (1)
    42. {
    43. busyWait = true;
    44. index    = 0;
    45. sec      = 0;
    46. /* Get date time */
    47. RTC_GetDatetime(RTC, &date);
    48. OLED_ShowNum(0,5,date.hour,2,16);
    49. OLED_ShowNum(24,5,date.minute,2,16);
    50. OLED_ShowNum(48,5,date.second,2,16);
    51. for(i=0;i<10000;i++);
    52. }
    53. }
    复制代码

    在主程序中,包括了RTC时钟的设置环节,在初次使用时,只需按时时间加以调整即可。
    此外,如果感兴趣的话,还可利用开发板上的小按键来随机调整RTC的系统时间。
    小家伙,一样会有大力量!
    a.jpg
    RTC电子时钟
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2016-12-2 08:40
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    103

    主题

    868

    帖子

    7

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    4336
    最后登录
    2025-6-13
    发表于 2020-11-25 11:13:18 | 显示全部楼层
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-12-18 12:56
  • 签到天数: 55 天

    连续签到: 1 天

    [LV.5]常住居民I

    108

    主题

    276

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    1993
    最后登录
    2025-7-16
    发表于 2020-11-25 11:36:23 | 显示全部楼层
    签到
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2020-12-18 12:56
  • 签到天数: 55 天

    连续签到: 1 天

    [LV.5]常住居民I

    108

    主题

    276

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    1993
    最后登录
    2025-7-16
    发表于 2020-11-25 11:38:06 | 显示全部楼层
    签到
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-2-15 00:12
  • 签到天数: 969 天

    连续签到: 1 天

    [LV.10]以坛为家III

    175

    主题

    2843

    帖子

    34

    金牌会员

    Rank: 6Rank: 6

    积分
    7123
    最后登录
    2023-4-20
     楼主| 发表于 2020-11-26 08:20:08 | 显示全部楼层

    多谢支持!!!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-2-15 00:12
  • 签到天数: 969 天

    连续签到: 1 天

    [LV.10]以坛为家III

    175

    主题

    2843

    帖子

    34

    金牌会员

    Rank: 6Rank: 6

    积分
    7123
    最后登录
    2023-4-20
     楼主| 发表于 2020-11-26 08:21:06 | 显示全部楼层
    本帖最后由 jinglixixi 于 2020-12-10 11:42 编辑

    怎么无颜                           
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-19 10:07 , Processed in 0.091795 second(s), 25 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表