这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » STM32CubeMX-实时时钟(RTC)

共41条 1/5 1 2 3 4 5 ›| 跳转至

STM32CubeMX-实时时钟(RTC)

高工
2022-12-31 13:50:24     打赏
RTC简介

    实时时钟 (RTC) 是一个独立的 BCD 定时器/计数器。RTC 提供具有可编程闹钟中断功能的日历时钟 /日历。RTC 还包含具有中断功能的周期性可编程唤醒标志。系统可以自动将月份的天数补偿为 28、29(闰年)、30 和 31 天。只要芯片的备用电源一直供电,RTC上的时间会一直走。新建工程    本章程序在串口printf工程的基础上修改,复制串口printf的工程,修改文件夹名。点击STM32F746I.ioc打开STM32cubeMX的工程文件重新配置。RTC选择内部唤醒(Internal WakeUp)开启RTC。开启外部低速晶振,PC14,PC15配置。image.png    RTC时钟选择为外部低速晶振(LSE),频率为32.768。    在RTC配置中,设置时间和日期,其他为默认设置。此处设置时间为2016/04/16 16:25:49。image.png    生成报告以及代码,编译程序。添加应用程序    在rtc.c文件中可以看到ADC初始化函数。在stm32f7xx_hal_rtc.h头文件中可以看到rtc时间和日期读写操作函数。
image.png

    从操作函数中可以看到,时间和日期是以结构体的形式读写的。所以在main.c文件前面申明两个结构体变量存储读取的时间和日期数据。


image.png

    在stm32f7xx_hal_rtc.h头文件中,可以找到RTC_TimeTypeDef,RTC_DateTypeDef这两个结构体的成员变量。
image.png    在while循环中添加应用程序,读取当前的时间和日期,并通过串口发送到电脑上显示。

image.png

    程序中使用HAL_RTC_GetTime(),HAL_RTC_GetDate()读取时间和日期,并保存到结构体变量中,然后通过串口输出读取的时间和日期。注意:要先读取时间再读取日期,如果先读取日期在读取时间会导致读取的时间不准确,一直都是原来设置的时间。
实验效果    编译程序并下载到开发板。打开串口调试助手。设置波特率为115200。串口助手上会显示RTC的时间日期。image.png





关键词: STM32CubeMX     时钟     实时    

专家
2022-12-31 17:53:44     打赏
2楼

感谢您的分享


专家
2022-12-31 19:38:00     打赏
3楼

谢谢分享


专家
2023-01-01 00:30:03     打赏
4楼

感谢分享


专家
2023-01-05 09:12:35     打赏
5楼

感谢分享


院士
2023-01-05 12:00:04     打赏
6楼

谢谢楼主的分享~!


高工
2023-01-05 18:41:27     打赏
7楼

谢谢分享


专家
2023-01-06 06:37:57     打赏
8楼

感谢楼主的分享


专家
2023-01-06 06:51:41     打赏
9楼

看看


高工
2023-01-06 08:36:08     打赏
10楼

谢谢分享


共41条 1/5 1 2 3 4 5 ›| 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]