物联网ARM开发-STM32之RTC浅谈

news2024/11/24 16:19:46

RTC

一.RTC简单介绍

  RTC好比我们用来记录时间的一个钟表,他里面有年月日,还可以记录星期,小时,分钟等。是Real Time Clock的缩写,译为实时时钟,本质上是一个独立的定时器。

1. 1 与通用定时器的区别

  1. 可以在后备电源下工作,主电源掉电以后,单片机内部电源还会继续给RTC提供电源,保持其正常运行。
  2. 计数器符合年、月、日、星期、时、分、秒、等日期的时间技术规则,例如它可以区分是不是闰年还有大小月份。
  3. 不受复位信号影响,例如主电源上电过程会有一个复位效果,但是RTC不会受其影响。
  4. 低功耗计时,通常电流是uA。最典型的就是我们电脑主板内部的RTC。

1.2 常见的独立RTC芯片

  1. PCF8563,NXP公司的,I2C接口
  2. DS1302,MAX公司的,两线串行接口
  3. DS3231, MAX公司的,I2C接口,内置高精度时钟信号源,常温范围内5ppm(百万分之一)精度,普通柱状晶体是20ppm,且容易受温度影响。

1.3 RTC在实际项目中的应用

  1. 为用户提供时间,日期
  2. 实现时间记录功能,比如安全监控项目
  3. 实现按时间要求的相关任务,比如按约定时间控制相关水闸等
  4. 实现周期性的唤醒,执行相关的周期性任务

2. STM32F407上的RTC

2.1 主要特点

  先列一张RTC的部分结构框图,再结合框图进行分析。
在这里插入图片描述

图1 RTC的部分结构框图

  1. 是一个独立的BCD(二进制转换成十进制)定时器,例如今天是30号,读出来的数据是0x30,但是转成16进制就是0x1E。
  2. 此外还可以提供亚秒,系统自动将月份补偿为28、29(闰年)、30和31天
  3. 软件可编程夏令时补偿(高纬度地方,夏天天亮的早,人为的加快一个小时)
  4. 两个具有中断功能的可编程闹钟,可以通过任意日历字段的组合驱动闹钟
  5. 自动唤醒单元,可周期性地生成标志以触发自动唤醒中断
  6. 参考时钟检测:可使用更加精确的第二时钟源来提高精度
  7. 利用亚秒级移位特性与外部时钟实现精确同步
  8. 用于事件保存的时间戳功能,指的是单片机上的一个IO口检测到电平的变化的时候,会将这个变化时间记录
  9. 入侵检测:2个带可配置过滤器和内部上拉的入侵事件,出于对产品数据的保密,敏感数据可以保存在ram里面,由备用电源供电,给这个产品放一个壳,一旦拆开这个壳,就会被检测到,然后自动清除ram数据。
    10.可屏蔽中断或事件:闹钟A、闹钟B、唤醒中断、时间戳、入侵检测
  10. 数字校准电路:粗调(5ppm),细调(0.95ppm)
  11. 20个备份寄存器(80字节)。
  12. 复用功能输出:1.512Hz或1Hz时钟输出(LSE频率为32.768KHz),2. RTC_ALARM(闹钟A、闹钟B或唤醒)
  13. 复用功能输入:1.RTC_TS:时间戳事件检测,2.RTC_TAMP1:TAMPER1事件检测,3.RTC_TAMP2:TAMPER2事件检测,4.RTC_REFIN:参考时钟源输入

2.2后备电源

   纽扣电池经过一个二极管,防止主电源给电池充电,同时还要经过一个二极管,防止电池给整个单片机供电。示意图如下:
在这里插入图片描述

图2 RTC后备电源示意图

2.3 时钟和预分频器

  看图可以发现有两个额外的脚PC14,PC15,这两个脚如果先用我们的RTC,最好接一个片外的石英晶体(32.768KHz),为什么是32.768,因为它是2的15次方,通过分配可以精确到1Hz。,在看,到RTC有三条路,一条是32KHz,不好的地方是误差大。第二个是正道,还一个是歪道(系统时钟分配过来的)。示意图如下:
在这里插入图片描述

图3 时钟示意图
在这里插入图片描述
图4 补充解释图

2.4 实时时钟和日历

  1. RTC日历时间和日期寄存器可通过与PCLK1(APB1时钟)同步的影子寄存器来访问,APB时钟频率必须至少为RTC时钟频率的7倍
  2. 时间和日期寄存器可以直接访问
  3. RTC_SSR对应与亚秒
  4. RTC_TR对应于时间
  5. RTC_DR对应于日期
  6. 每隔两个RTCCLK周期,便将当前日历值复制到影子寄存器里面去

2.5可编程闹钟

  1. 可通过将RTC_CR寄存器中的ALRAE和ALRBE位置1来使能可编程闹钟功能
  2. 如果日历亚秒、秒、分钟、小时、日期或日分别与闹钟寄存器中编程的值相匹配,则ALRAF,ALRBF标志就会变成1
  3. 闹钟A和闹钟B在使能后,可连接到RTC_ALARM输出,且输出极性可设
    差不多就到这里来了。

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

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

相关文章

操作系统笔记之内存映射

操作系统笔记之内存映射 —— 杭州 2024-02-04 code review! 文章目录 操作系统笔记之内存映射一.内存映射概念1. 文件映射到内存 (Memory-Mapped Files)2. 虚拟内存管理 (Virtual Memory Management)3. 内存映射I/O (Memory-Mapped I/O)4. 图形处理 (Graphics Processing)5.…

【AI】手把手教你用SSH与GitHub仓库建立连接

在使用原来的账户密码方式建立连接时,发现终端提示: remote: Support for password authentication was removed on August 13, 2021. remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#…

Spring框架——主流框架

文章目录 Spring(轻量级容器框架)Spring 学习的核心内容-一图胜千言IOC 控制反转 的开发模式Spring快速入门Spring容器剖析手动开发- 简单的 Spring 基于 XML 配置的程序课堂练习 Spring 管理 Bean-IOCSpring 配置/管理 bean 介绍Bean 管理包括两方面: Bean 配置方式基于 xml 文…

【深度学习理论】持续更新

文章目录 1.统计学习理论 1.统计学习理论 统计学习理论,一款适合零成本搞深度学习的大冤种的方向 从人类学习到机器学习的对比(学习的过程分为归纳和演绎 ),引出泛化和过拟合的概念。 如何表示归纳的函数规律呢?以监督…

基础数学问题整理

最近刷了一些关于基础数学问题的题目,大致是关于组合数、分解质因数还有一些思维题,题目来自洛谷的【数学1】基础数学问题 - 题单 - 洛谷,很多思路还是之前没有见过的,都是简单到一般难度的题目(橙、题、绿题&#xff…

远程桌面时连接不上远程计算机是什么问题

在服务器上搭建网络程序时,我们经常会有需要远程连接上服务器进行相关操作,有些用户在远程桌面的时候,有时会有遇上无法连接到远程计算机的情况。 很多用户都曾遇到在远程桌面时出现“未启用对服务器的远程访问”、“远程计算机已关闭”、“…

AIGC技术讲解以及应用的落地

简介 近期,火爆的“AI绘画”、图片转AI图,智能聊天软件ChatGPT,引起了人们广泛关注。人工智能潜力再次被证明,而这三个概念均来自同一个领域:AIGC。AIGC到底是什么?为什么如此引人关注?AIGC能产…

代码生成器(新):mybatis-plus-generator使用指南

代码生成器(新)官网 后端代码:点击查看 LearnElementUiAndSpringBoot 提醒:LearnElementUiAndSpringBoot下载完后,在运行调试 Main.java里的main方法之前,除了utils包和Main.java文件,其他包需…

rac二节点实例redo故障无法启动修复

问题描述 节点二由于redo故障问题无法正常启动 目前节点二为mount状态,open报错。alter database open ERROR at line 1: ORA-00322: log 28 of thread 2 is not current copy ORA-00312 查询v$log视图发现节点二的redo log组没有状态为current的日志组。大概…

今年过年都有哪些方式?其中又有什么商机

古往今来,春节都是十分重要的节日,它承载着家庭团聚、祭祖祈福的重要意义,然而在今年,年轻人过年的方式不那么传统,今天媒介盒子就来和大家聊聊:今年过年都有哪些方式?其中又有什么商机。 一、 …

电商服务类指标分析(3)——用户反馈模块指标

前段时间做了一个电商服务类项目,与业务一起梳理了部分指标,这些指标便于了解电商服务,现在做一个整理和回顾。 电商服务类指标可以分为五大类,涵盖了服务从售前、履约、售后、用户反馈、监控预警这样一条链路的内容。 本篇文章来…

大数据知识图谱之深度学习——基于BERT+LSTM+CRF深度学习识别模型医疗知识图谱问答可视化系统

文章目录 大数据知识图谱之深度学习——基于BERTLSTMCRF深度学习识别模型医疗知识图谱问答可视化系统一、项目概述二、系统实现基本流程三、项目工具所用的版本号四、所需要软件的安装和使用五、开发技术简介Django技术介绍Neo4j数据库Bootstrap4框架Echarts简介Navicat Premiu…

实习日志13

1.早上试了一下社区里的东西 1.1.插件,可交互页面 垃圾插件,显示的html不支持我的html,js都加载不出来 1.2.插件,文件上传 硬件给的是用websocket交互的,没有文件下载接口 2.打算自己搞了,试试用cooki…

360,这次你真行:流氓耍到外国佬身上,凌晨1点让我笑岔气

天下,苦流氓软件久矣 在数字世界中,我们常常遭遇一些令人头疼的问题,其中尤以大厂软件的牛皮癣特性为甚。这些软件不仅捆绑安装广告推广,而且手段无所不用其极,让用户感到无可奈何。 在此,我不得不提及四…

Linux内存管理:(十二)Linux 5.0内核新增的反碎片优化

文章说明: Linux内核版本:5.0 架构:ARM64 参考资料及图片来源:《奔跑吧Linux内核》 Linux 5.0内核源码注释仓库地址: zhangzihengya/LinuxSourceCode_v5.0_study (github.com) 外碎片化发生时,页面分配…

2024年全球手机市场复苏 传音打响出海品牌进阶之战

2024年智能手机将迎来新一轮“增长季”。根据市场研究机构TechInsights的最新预测,2024年全球智能手机市场将恢复低个位数的增长。对广大手机厂商来说,这无疑是个好消息,但如何在逐渐回暖却竞争激烈的市场中站稳脚跟就需要他们“各显神通”了…

【Java EE】----Spring框架创建和使用

1.Spring框架创建 创建一个maven项目 添加Spring框架支持 <dependencies> 上下文<dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.2.3.RELEASE</version></depende…

云打印服务未启动是什么情况?云打印服务未启动怎么解决?

随着互联网技术的发展&#xff0c;很多“云概念”也开始火热起来。这其中&#xff0c;最适合办公人群和学生人群的“云打印”概念也受到了追捧。目前市场上提供的云打印服务有很多&#xff0c;但是最近出现了较多云打印服务的问题。那么今天小易就带大家来了解一下&#xff0c;…

机器视觉系统设计:视觉系统中的成像基准

开发视觉系统的一个重要活动是验证其部署是否符合工程规范。一个成功的视觉应用程序的两个特点是它无需工程师干涉情况下正常工作了多长时间&#xff0c;以及它的维护和复制部署是多么简易。实现所有如上所述目标的一个关键步骤是确定视觉系统的基准。 在这里使用的上下文中&a…

LeetCode_19_中等_删除链表的倒数第N个结点

文章目录 1. 题目2. 思路及代码实现&#xff08;Python&#xff09;2.1 计算链表长度2.2 栈 1. 题目 给你一个链表&#xff0c;删除链表的倒数第 n n n 个结点&#xff0c;并且返回链表的头结点。 示例 1&#xff1a; 输入&#xff1a; h e a d [ 1 , 2 , 3 , 4 , 5 ] , n…