RTC: Real time clock

相比较而言,STM32F407的RTC比STM32F1的更加容易配置。当然,F4的资源相对也就更加丰富很多了。具体的资源可查看官方参考手册,通过下面的图表也可以了解其大致功能

1、开始的时候对于 ALRAM A/B的功能没有怎么理解,后面再来看时发现其很简单,举个简单的例子,就比如,定的闹钟,当然,这个也是可以实现闹钟的功能。只是通过这个简单的例子来说明,ALARM A/B的用途或者功能吧

2、自动唤醒与时间戳及时间篡改事件,与1的差不多,细细体会就知道

3、RTC_AFO 与 RTC_AFI 就是对外输出及检测外部时间事件

4、 RTC的时钟源一般情况下,是使用LSE ,通过适当的分频产生一个1HZ的时钟,分频中有2个关键点,就是 异步分频因子(7bit)和同步分频因子(15bit),两者配置会影响功耗,官方建议配置异步分频因子为较高值,以减少功耗,这里采用最大值配置方式: SynchPrediv = 0xFF;  AsynchPrediv = 0x7F;这样时钟就配置OK了

5、下面看一下RTC的初始化和配置,个人认为只要这里搞懂了,RTC也就懂了,至于自动唤醒、ALARM等都是很容易配置,更何况ST库函数已经写好了,直接调用相关函数就可。

1) 首先要知道  RTC的寄存器是具有写保护功能的,因此在每次对其进行写操作前,就要先退出写保护,这里很直白的告诉我们,就是依照这个顺序操作,分别对RTC_WPR  写入 0xCA 和 0x53 就可解除写保护,注意顺序不可变。其下,还有一句话,写一个错键重新激活写保护,就是随便写一个与上面2个不同的,就可再次激活写保护功能

6、 对于具体如何设置具体值就不讲了,官方库中 RTC_SetTime() /RTC_SetDate() 等函数可以很容易的实现。

7、最后将一下 RTC的备份寄存器 ,备份寄存器的作用顾名思义就是备份,其总共有20个相关寄存器,举一个简单的例子就可以明白其作用,比如我们要初始化设置RTC的相关值,第一次的时候我设置了一次,当我复位MCU,RTC还在正常运行,我并不需要重新设置RTC,这时候,我们可以在要设置RTC的时候,添加一个判断条件,就是如果我选择的备份寄存器中填入一个值,如果我独到的值和我要写的值一致,我就不重新设置RTC,如果不一致我就重新设置。当然这个值是随意设置的。

如官方例程:    if (RTC_ReadBackupRegister(RTC_BKP_DR0) != 0x32F2)            //判读读到的值是否与设置的一致

。。。。

RTC_WriteBackupRegister(RTC_BKP_DR0, 0x32F2);    //设置完成后,给备份寄存器写入一个值

8、至此,介绍就结束了,主要还是看参考手册,当然,官方的库已经给大家省去了很多功能,但是从寄存器层面去了解如何操作的也是相当的必要。

STM32F407 RTC 配置理解与总结相关推荐

  1. druid 配置理解及监控界面参数理解

    druid 配置理解 官方文档中的很多配置,不是太理解或者貌似理解了,自己不实践一下,心里也不踏实,所以决定自己搞一个demo测试一下理解理解各个配置到底是什么意思 一,druidDataSource ...

  2. LMK04828时钟芯片配置——配置理解

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 LMK04828时钟芯片配置--配置理解 配置 PLL1 PLL2 SYNC/SYSREF 总结 配置 开发板例程的SPI指令可以im ...

  3. STM32 HAL RTC配置及优化

    STM32 HAL RTC配置及优化 STM32内部的RTC实时时钟模块,可以配置实现日历和时间的运转,并在外部备用电池的辅助下,可以在主电源关闭的情况下保持运行,且RTC备份寄存器也可以在电池供电状 ...

  4. RT-Thread ——RTC配置

    RT-Thread --RTC配置 STM32F103系列芯片的RTC功能存在一些缺陷. 一.显示时间戳 RTC(Real-Time Clock)译为实时时钟,因为它一般是集成电路,故也称为时钟芯片. ...

  5. c2000 汇编语言指令,C2000系CMD文件的配置理解

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区. 您需要 登录 才可以下载或查看,没有帐号?注册 x 推荐CMD的专业名称叫链接器配置文件,是存放链接器的配置信息的,我们简称为命令文件,其中比 ...

  6. SpringBoot约定大于配置理解

    约定大于配置是一种开发原则,就是减少人为的配置,直接用默认的配置就能获得我们想要的结果. SpringBoot的约定大于配置,按我的理解是:对比SpringMVC,需要在web.xml里面配置前端控制 ...

  7. 关于STM32F407 PWM的理解

    最近回头学习STM32F407单片机,以此文做为学习记录.若有哪位小伙伴有不同见解的,可以互相交流. 一.TIMx时钟不清楚如何计算 这里不得不提到STM32F407系列的时钟树,以及对应时钟树各参数 ...

  8. 代码编辑器CodeMirror使用总结-配置理解说明

    本文的选项是根据官网的配置环境进行的理解,有些选项没有使用到和没有理解的就没做说明,有理解不对的欢迎指出来,对没有说明的也欢迎用过的友友给出自己的理解 常用选项配置 value 编辑器的初始值 - [ ...

  9. HDFS HA介绍及配置理解

    1.HDFS HA介绍 相比于Hadoop1.0,Hadoop 2.0中的HDFS增加了两个重大特性,HA和Federaion.HA即为High Availability,用于解决NameNode单点 ...

最新文章

  1. 派生类构造函数和析构函数的执行顺序
  2. tcga数据下载_好东西丨零基础入门TCGA
  3. [Linux] undefined reference to `itoa'
  4. db设计专用excel_独家|自卸车如何实现侧板结构快速设计,减少重复工作?
  5. Stream操作Collection集合
  6. Java实训项目3:GUI学生信息管理系统 - 涉及知识点
  7. 从RCNN到SSD,深度学习目标检测算法盘点
  8. python简单的爬取网页上的图片
  9. C++查漏补缺之浮点数内存表示
  10. multism中ui和uo应该怎么表示_第310 这四个常考英语单词,到底表示时间还是地点?...
  11. 将强化学习应用到量化投资中实战篇(学习模块开发上)
  12. 把汇总报表页面生成 pdf文件方案!
  13. 吃透MIPI接口,你必须了解它这三种PHY规范的区别
  14. XP与Win7默认下时间分隔符不同
  15. 百度之星 大搬家 递推
  16. 微信支付密码设置html,微信支付页面怎么加密码锁屏(微信支付界面怎么上锁)...
  17. 【Oracle】6.JDBC
  18. 【53期】面试官:谈一下数据库分库分表之后,你是如何解决事务问题?
  19. Python 决策树的建树、剪枝与优化
  20. rapidcsv 写csv文件实例

热门文章

  1. 数组的指针、指针数组以及指向指针的指针
  2. Linux查看lib加载路径
  3. MySQL 的read_only 只读属性说明
  4. SpringCloud DataFlow — 0. 本地部署
  5. win10 html 无图标,win7系统html文件图标变成空白的处理方法
  6. 《南极测绘地理信息应用服务关键技术研究》在西安通过了专家组的验收
  7. 传统企业如何搭上互联网+的大船
  8. HTML5视频直播默认静音,HTML5教程 如何实现播放视频中暂停、关闭声音等操作
  9. 【工业机器人】两分钟读懂工业机器人的设计过程
  10. 高薪前端都应该具备的开发好习惯