【蓝桥杯嵌入式】RTC——实时时钟

news2024/12/29 0:25:01

一、RTC简介

RTC

        RTC—real time clock,实时时钟,主要包含日历、闹钟和自动唤醒这三部分的功能,其中的日历功能我们使用的最多。日历包含两个32bit的时间寄存器,可直接输出时分秒,星期、月、日、年。

从Cubemx里的配置选项我们也可以看到功能。

时钟源

  • 其中使用最多的是LSE,LSE由一个外部的32.768KHZ(6PF负载)的晶振提供,精度高,稳定,RTC首选。
  • LSI是芯片内部的30KHZ晶体,精度较低,会有温漂,一般不建议使用。
  • HSE_RTC由HSE分频得到,最高是750khz,使用的也较少。

因为我们的竞赛板子上只有HSE和LSI,并未连接LSE,所以我们这里选用LSI作为时钟源。

预分频器

预分频器PRER由7位的异步预分频器APRE和15位的同步预分频器SPRE组成。异步预分频器时钟CK_APRE用于为二进制 RTC_SSR 亚秒递减计数器提供时钟,同步预分频器时钟CK_SPRE用于更新日历。 异步预分频器时钟fCK_APRE=fRTC_CLK/(PREDIV_A+1), 同步预分频器时钟f:sub:CK_SPRE=fRTC_CLK/(PREDIV_S+1),)。 使用两个预分频器时,推荐将异步预分频器配置为较高的值,以最大程度降低功耗。

二、cubemx配置

模式和时钟源的配置上面已经展示,在此不作展示

  • 配置12小时制还是24小时制
  • 配置异步预分频器APRE和15位的同步预分频器SPRE
  • 配置日历

如有需要自习配置闹钟功能,在闹钟中断服务回调函数里进行代码编写。

// 启动闹钟中断事件
    HAL_RTC_SetAlarm_IT(&hrtc, &sAlarm, RTC_FORMAT_BIN);

 三、RTC时钟实验

int main(void)
{

  /* USER CODE BEGIN 1 */

	RTC_TimeTypeDef S_F_M;
	RTC_DateTypeDef N_Y_R;

  /* USER CODE END 1 */

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_TIM3_Init();
  MX_TIM6_Init();
  MX_TIM17_Init();
  MX_RTC_Init();
  /* USER CODE BEGIN 2 */
  display_init();
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  HAL_TIM_Base_Start_IT(&htim6);  
  while (1)
  {
    HAL_RTC_GetTime(&hrtc,&S_F_M,RTC_FORMAT_BIN);
    HAL_RTC_GetDate(&hrtc,&N_Y_R,RTC_FORMAT_BIN);
    char text[30] ;
    sprintf(text,"  %d.%d.%d",S_F_M.Hours,S_F_M.Minutes,S_F_M.Seconds);//时间
    LCD_DisplayStringLine(Line2,(u8*)text);
    sprintf(text,"  %d.%d.%d",N_Y_R.Year,N_Y_R.Month,N_Y_R.Date);//日期
    LCD_DisplayStringLine(Line3,(u8*)text);
    sprintf(text,"  %d",N_Y_R.WeekDay);//星期几
    LCD_DisplayStringLine(Line4,(u8*)text);

    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */
}

关键处:①两个结构体

	RTC_TimeTypeDef S_F_M;
	RTC_DateTypeDef N_Y_R;

 ②获取时间和日期(两个函数必须同时使用)

    HAL_RTC_GetTime(&hrtc,&S_F_M,RTC_FORMAT_BIN);
    HAL_RTC_GetDate(&hrtc,&N_Y_R,RTC_FORMAT_BIN);

四、实验现象

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1574113.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【OpenCV】图像算术操作

1 前言 介绍图像算术操作,以及其可以实现的图像亮度、对比度调整效果。相关API: add() subtract() multiply() divide() addWeighted() 2 代码及内容 #include "iostream" #include "opencv2/opencv.hpp"using namespace std…

成都源聚达:抖音小店押金收费标准

在数字浪潮中,抖音小店如星辰般熠熠生辉,吸引了无数商家和创业者。然而,想要在这片星海中畅游,首先得了解其押金的收费标准。正如古人言:“无规矩不成方圆”,明确规则是成功的关键一步。 抖音小店的押金制度…

java爬虫入门程序

<!--爬虫仅支持1.8版本的jdk--> <!-- 爬虫需要的依赖--> <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.2</version> </dependency><!-- 爬虫需…

vue2+element-ui 实现OSS分片上传+取消上传

遇到问题&#xff1a;项目中需要上传500MB以上的视频。一开始使用上传组件el-upload&#xff0c;调用后台接口&#xff0c;但是出现了onprogress显示百分百后接口一直pending&#xff0c;过了很多秒后接口才通&#xff0c;如果遇到大文件的话&#xff0c;接口就会报超时。 解决…

批量复制空白文件夹,轻松管理文件,高效办公新选择

在繁忙的办公环境中&#xff0c;文件管理是提升工作效率的关键。想象一下&#xff0c;你需要为每一个新项目、新任务或新客户创建一个新的文件夹来整理和存储相关文件。手动一个一个地创建文件夹不仅耗时&#xff0c;而且容易出错。现在&#xff0c;我们为你带来一个全新的解决…

R语言中的常用数据结构

目录 R对象的基本类型 R对象的属性 R的数据结构 向量 矩阵 数组 列表 因子 缺失值NA 数据框 R的数据结构总结 R语言可以进行探索性数据分析&#xff0c;统计推断&#xff0c;回归分析&#xff0c;机器学习&#xff0c;数据产品开发 R对象的基本类型 R语言对象有五…

[leetcode] 25. K 个一组翻转链表

给你链表的头节点 head &#xff0c;每 k 个节点一组进行翻转&#xff0c;请你返回修改后的链表。 k 是一个正整数&#xff0c;它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍&#xff0c;那么请将最后剩余的节点保持原有顺序。 你不能只是单纯的改变节点内部的值…

老板们注意了,AI可能在悄悄威胁你的工作

前天,科技新闻大佬The Register发了一篇文章,说的是AI在科研领域的管理角色越来越大,可能会让管理岗位变得过时,听起来是不是有点儿疯狂? ESMT Berlin的研究小伙伴们发现,AI能够以更大的规模和效率来管理研究项目,比如审查科学文献和预测创新化合物等等,而不是取代人类…

【Frida】【Android】 工具篇:ProxyPin抓包详解

&#x1f6eb; 系列文章导航 【Frida】【Android】01_手把手教你环境搭建 https://blog.csdn.net/kinghzking/article/details/136986950【Frida】【Android】02_JAVA层HOOK https://blog.csdn.net/kinghzking/article/details/137008446【Frida】【Android】03_RPC https://bl…

【JVM】JVM简介

文章目录 &#x1f334;简介&#x1f332;JVM发展史&#x1f338;Sun Classic VM&#x1f338;Exact VM&#x1f338;HotSpot VM&#x1f338;JRockit&#x1f338;J9 JVMTaobao JVM&#xff08;国产研发&#xff09; &#x1f333;JVM 运行流程⭕总结 &#x1f334;简介 JVM …

【项目启动执行指定代码】⭐️通过案例测试下常用的实现方式

目录 前言 1、监听 ApplicationContext事件 2、实现CommandLineRunner接口 3、实现ApplicationRunner接口 4、使用PostConstruct注解 章末 前言 为了保证程序在启动后的稳定性&#xff0c;需要执行初始化操作&#xff0c;像加载配置&#xff0c;建立数据库连接可以在项目启…

(2024)Ubuntu源码安装多个版本的opencv并切换使用

本人工作会用到x86_64的opencv和aarch64的opencv&#xff0c;所以写下来备忘自用 一、源码编译安装 依赖库安装&#xff1a; sudo apt-get install build-essential libgtk2.0-dev libgtk-3-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev o…

简单介绍css及其代码样式

css简介 css用于前端开发&#xff0c;负责对界面进行美化。让页面更美观。 他可以改变html代码的样式&#xff0c;让html代码的网页不那么死板。 css代码格式 选择器 {属性:值; 属性:值&#xff1b;} css的模版架构 css代码放到<style>标签中。 而<style>通常是…

在单交换机局域网中,不同网段的主机通信探秘

在理解局域网中不同网段主机之间的通信之前&#xff0c;我们首先要明白网络的基本组成和工作原理。局域网&#xff08;LAN&#xff09;是一个封闭的网络环境&#xff0c;通常由交换机&#xff08;Switch&#xff09;作为核心设备连接网络中的各个主机。当我们谈论不同网段的主机…

【C#】yield使用

&#x1f4bb;代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks;namespace ConsoleApp15 {internal class Program{static void Main(string[] args){IEnumerable<int&…

如何回答孩子“为什么要过清明?”

清明&#xff0c;是中国人寻根问祖的时节。 为什么要过清明节&#xff1f; 不知道你是否认真想过&#xff0c;我们为什么要过清明节呢&#xff1f; 如果当孩子问起时&#xff0c;你又该如何作答呢&#xff1f; 也许&#xff0c;以下的总结可供你参考。 清明&#xff0c;让…

[蓝桥杯 2019 国 C] 数正方形

[蓝桥杯 2019 国 C] 数正方形 题目描述 在一个 N N N \times N NN 的点阵上&#xff0c;取其中 4 4 4 个点恰好组成一个正方形的 4 4 4 个顶点&#xff0c;一共有多少种不同的取法&#xff1f; 由于结果可能非常大&#xff0c;你只需要输出模 1 0 9 7 10^9 7 1097 的…

DasViewer中,像下图山坡是选择拟合平面还是自定义平面?还是其他的基准面?

问题如图 如若山坡是计算斜面的土方&#xff0c;可以选择用拟合平面模式&#xff0c;该模式适用斜坡。 DasViewer是由大势智慧自主研发的免费的实景三维模型浏览器,采用多细节层次模型逐步自适应加载技术,让用户在极低的电脑配置下,也能流畅的加载较大规模实景三维模型,提供方…

广州到菲律宾海运双清到门,菲律宾双清到门一站式物流

洗衣液出口菲律宾全程海运双清包税到门物流操作流程 为了便于中国的洗衣液产品出口至菲律宾&#xff0c;并实现海运双清包税到门的服务&#xff0c;我们提供一站式的中菲物流解决方案。我们的目标是在保证货物安全的前提下&#xff0c;为您完成从中国起运到菲律宾指定地址的所有…

Java基于微信小程序高校体育场管理小程序

博主介绍&#xff1a;✌IT徐师兄、7年大厂程序员经历。全网粉丝15W、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;&#x1f3…