历史上的今天
返回首页

历史上的今天

今天是:2024年09月09日(星期一)

正在发生

2019年09月09日 | [正点原子]STM32开发板F103 第41讲 RTC实时时钟备份区域BKP原理

2019-09-09 来源:eefocus

RTC模块与 时钟配置系统在后备区域,在复位时候不会被清除(框图: 中文参考手册)


如何使用RTC实现时钟?RTCCLK


RTC的时钟有几个来源有三种  32.768khz  8Mhz  40khz


RTC_PRL是自动重装载寄存器


RTC_DIV 预分频余数寄存器 RTC_DIV的作用就是  可以提供一个更加精确的时钟,


时钟开启之后会给RTC_PRL写一个值(比如100),那么RTCCLK就会被 /100 之后得到 TR_CLK。 TR_CLK的一个周期有100个  RTCCLK ,RTC_DIV在你装载之后它的值就是100,他在 RTCCLK的控制下每一个时钟  减一,


假如RTCCLK=100hz,那么 RTCCLK/RTC_PRL=100/100=1HZ=TR_CLK


RTC_DIV就是从100往下减, 那么需要RTCCLK的一百个周期,RTC_DIV(向下计数器)就会溢出,那么就是每一个RTCCLK周期RTC_DIV就减一。RTC_DIV 比TR_CLK更精确,那么,由以上公式可知,TR_CLK就是1hz也就是1s。


 后面有一个 RTC_CNT 32位可编程计数器(向上计数),


每一个TR_CLK就会加一,一直到overflow(溢出)就会产生中断,


还有一个秒中断 RTC_Second,(一秒钟产生一次中断)


还有一个 RTC_ALR 闹钟中断,当 RTC_ALR=RTC_CNT 的时候就会产生闹钟中断。


BKP备份寄存器的访问,

RTC相关寄存器

RTC 相关的寄存器定义在stm32f10x.h里面有一个结构体。


寄存器的介绍在《中文参考手册》


上图中的 RTC_CRH  控制寄存器主要是一些中断的使能位,如果要开启中断就将相应位使能。

OWF   是溢出标志


ALRF  闹钟标志 


SECF  秒标志


位3   RSF 寄存器同步标志,在需要改寄存器之前先要确定RSF寄存器已经同步


位4  CNF位  配置标志 ,如果要修改CRH/CRL 等寄存器的时候,先要将该位置 1,进入配置模式,配置完之后要将他配置为0,退出配置模式。


RTCOFF 在对RTC寄存器进行写操作之前必须先判断上一次写操作已经结束,也就是判断上一次写操作是否置位。


RTC_PRLH 与RTC_PRLL 就是预分频装载寄存器的高位和低位

RTC_DIV 是以RTC_CLK为时钟所以他比TR_CLK要精确


 

表示当前时间的寄存器,通常会配置为1秒钟加一

以上为闹钟寄存器,也是两个16位的,一共32位,它与计数器寄存器基本上是一样的,因为他要与计数器寄存器相比较相等就会产生中断。

1.先要查询RTOFF位,等待他为 1 表明上一次操作已经完成了。


2设置CNF位为1,进入配置模式


3操作寄存器


4清除CNF位,退出配置模式。


5 查询RTOFF位,直到它为“1”,表明写操作已经完成。

下面就看他的库函数。


时钟源选择函数  时钟使能  在RCC文件当中。


使能电源后备区域的时钟。


使能后备区域的寄存器访问。


推荐阅读

史海拾趣

High Voltage Power Solutions Inc公司的发展小趣事

机顶盒,全称为数字视频变换盒,是连接电视机与外部信号源的关键设备,其专业性与科普性并重。作为现代家庭娱乐的重要组成部分,机顶盒不仅实现了从模拟信号到数字信号的转换,还极大地丰富了电视节目的选择与观看体验。

从广义上讲,机顶盒涵盖了各种与电视机连接的网络终端设备,包括早期的模拟频道增补器、上网机顶盒,以及当前广泛应用的数字卫星机顶盒、有线电视数字机顶盒和IPTV机顶盒等。这些设备通过接收、解码和显示三个主要步骤,将来自不同传输介质的数字信号转换为适合电视机播放的格式。

从技术层面看,机顶盒集成了高性能的解调器、解码器和处理器,能够接收并处理来自有线电缆、卫星天线、宽带网络及地面广播的高清、甚至超高清视频信号,为用户带来细腻的画面与震撼的音效。同时,机顶盒还具备网络交互功能,支持在线购物、网页浏览、视频点播等多元化服务,使电视机从单向接收信息的设备转变为智能终端。

展望未来,随着高清、超高清技术的普及以及人工智能、云计算等技术的融入,机顶盒将向智能化、多功能化方向发展,为用户提供更加便捷、个性化的观看体验。在智能电视普及的背景下,机顶盒作为有效补充和扩展,将继续在特定应用场景下发挥不可替代的作用,推动家庭娱乐的多元化发展。

Dielectric Laboratories公司的发展小趣事

作为一家在电子行业中具有重要地位的企业,DLI始终将创新作为公司的核心竞争力。公司不断投入研发资金,探索新的技术领域,推出具有领先性的产品。例如,在电容器领域,DLI研发了StackiCapTM技术,使得高CV电容器得到进一步发展。这一技术的推出不仅提升了DLI的产品竞争力,也为整个电子行业的发展注入了新的活力。同时,DLI还积极参与国际交流和合作,与全球知名的电子企业建立合作关系,共同推动电子行业的发展。

以上五个故事简要概述了Dielectric Laboratories(DLI)公司在电子行业中的发展历程和成就。通过这些故事,我们可以看到DLI在不断创新、追求卓越的过程中,逐渐成为了电子行业中具有重要影响力的企业。

GSI Technology公司的发展小趣事

GSI Technology公司成立于1995年3月,总部位于加利福尼亚州的圣何塞(硅谷),自创立之初便专注于提供领先的电信和网络解决方案。公司采用先进的CMOS工艺技术,如0.25、0.15和0.13微米等,致力于开发低功耗、全功能、高性能的SRAM产品。通过不断的技术创新和产品优化,GSI Technology逐渐在高性能存储器市场占据了一席之地,为后续的快速发展奠定了坚实的基础。

CT Micro公司的发展小趣事
  1. 创业初期与技术创新

CT Micro公司最初由几位电子工程领域的专家创立,他们看到了微型计算机断层扫描(Micro-CT)技术在电子行业中的巨大潜力。初期,公司面临着资金短缺和技术难题,但他们通过不断研发和创新,成功开发出了一款具有高性价比的Micro-CT设备,迅速获得了市场的认可。

  1. 市场拓展与合作伙伴关系

随着产品的成熟,CT Micro开始积极寻求市场拓展。他们与多家电子制造企业建立了合作关系,为这些企业提供Micro-CT设备的定制服务。通过与这些企业的合作,CT Micro不仅扩大了市场份额,还进一步提升了产品的技术水平和应用范围。

  1. 研发升级与产品迭代

面对日益激烈的市场竞争,CT Micro不断投入研发力量,对Micro-CT设备进行升级和迭代。他们成功推出了多款新型设备,具有更高的分辨率、更快的扫描速度和更低的辐射剂量。这些新产品的推出,进一步巩固了CT Micro在电子行业中的领先地位。

  1. 国际化战略与市场拓展

随着国内市场的饱和,CT Micro开始实施国际化战略。他们积极参与国际展览和研讨会,展示自己的产品和技术实力。同时,他们还在海外设立了销售和服务中心,为国际客户提供更加便捷的服务。通过这些努力,CT Micro成功打开了国际市场的大门。

  1. 社会责任与可持续发展

在快速发展的同时,CT Micro也积极履行社会责任。他们注重环保和可持续发展,采用环保材料和节能技术生产产品。此外,他们还积极参与公益事业,为贫困地区的教育和医疗事业贡献力量。这些举措不仅提升了公司的社会形象,也为其可持续发展奠定了坚实基础。

请注意,这些故事框架是虚构的,并不代表CT Micro公司的实际发展情况。如果您需要了解CT Micro公司或类似公司的真实故事,建议您查阅相关公司的官方网站、新闻报道或行业分析报告。

Arima Lasers Corp公司的发展小趣事

Arima Lasers Corp的初期,是一个典型的初创企业,面临着资金短缺和技术难题的双重压力。然而,公司的研发团队在激光技术方面取得了重大突破,成功开发出一种新型的激光发射器,具有更高的功率和更稳定的性能。这一技术突破不仅吸引了投资者的关注,也为公司在市场上赢得了初步的声誉。随着产品的不断迭代和优化,Arima Lasers Corp逐渐在激光行业中占据了一席之地。

宇阳科技(EYANG)公司的发展小趣事

作为电子行业的领军企业之一,宇阳科技始终坚持以创新为驱动的发展战略。公司不断投入研发资金,加强技术团队建设,积极引进先进技术和管理经验。通过持续创新和技术升级,宇阳科技成功推出了多款具有自主知识产权的新型电子元器件产品,并引领了行业潮流。同时,公司还积极参与行业标准制定和技术交流合作等活动,为推动电子行业的发展做出了积极贡献。

以上五个故事梗概概述了宇阳科技在电子行业中的发展历程和主要成就。这些故事不仅展现了公司的技术实力和市场地位,也体现了公司不断创新、追求卓越的发展理念。

问答坊 | AI 解惑

28335控制板ADDA的奇怪问题

最近一直都在调试我的控制板上外扩的ADDA,但是遇到了一个非常让人不爽的问题:同一个程序在不同的电脑上现象不同,在我的笔记本上ADDA都能调通,但是在实验室的电脑死活不行。前一段时间CCS3.3不知道为什么老出问题,我卸了好几次,昨天重装了一遍 ...…

查看全部问答>

关于uboot里norflash的驱动问题

U-Boot 1.1.1 (Development build, svnversion: u-boot:已导出 , exec:已导出 ) (Build time: Jan 18 2010 - 21:30:42) BBBdr_hertz=333000000, ddr_ref_hertz=50000000, ddr_config_valid_mask=1 BBBdr_interface_mask=1, ddr_config_valid_mask ...…

查看全部问答>

关于扫描无线网络channel的问题

利用WINCE开发一个无线网络监控程序,希望能扫描得到当前可用的无线资源(这已实现)。 有个问题是,能不能指定扫描的channel呢?就是说,假设有11个CHANNEL可以用,但是我在扫描的时候只想扫描1、3、6号channel,如何在程序中设置呢? 哪位大侠能 ...…

查看全部问答>

SOPC工程顶层例化问题

用SOPC的IP核生成了一个工程文件(暂时把这个顶层叫vip吧)之后,想要将vip模块作为我一个子模块例化一下。可是这样做了之后编译不能通过,报错如下:Error (10613): VHDL syntax error at video_conver_top.vhd(153): experienced unexpected end- ...…

查看全部问答>

我的LED应急灯制作过程(5)-我制作的第二套LED应急灯

第一套应急灯我做的是3W功率的LED,这个是我独立设计并制作完成的。第二套LED应急灯是灰太狼设计的、我组装的采用MAX16804的应急灯。再次谢谢SOSO 琳子姐姐,还有灰太狼!有机会请你们吃饭!!  下面也是图片展示制作过程:…

查看全部问答>

C的一些问题

 1、C语言缺少显式的字符串数据类型,这是一个优点还是一个缺点?2、具有空函数可以作为存根使用,你如何对这类函数进行修改,使其更加有用?3、如果一个值的类型无法简单地通过观察它的位模式来判断,那么机器是如何知道应该怎样对这个值进行 ...…

查看全部问答>

[诚寻] DSP开发 DSP测试 RF测试工程师 上海 15-22万 非诚勿扰

请自荐或是推荐的朋友发送简历到以下邮箱: Jerome.zhang@focu-search.com   QQ:727190736 申请职位请务必在邮件中注明所申请职位的名称、目前的薪酬大致情况和期望、您目前的工作地点。 谢谢! 统招本科 硕士优先(本科3年左右 硕士2 ...…

查看全部问答>

脉冲序列

如何产生这样的脉冲组,它有高电平时间,低电平时间,脉冲组间隔,循环次数。这组脉冲的四个量均为上位机输入,且多个这样的脉冲组串联,间隔有可能为0。该时序为产品工作时序,实际最长时间为8000秒(单脉冲)整个脉冲组有可能到10000小时。Fpga新手,望回复 ...…

查看全部问答>

STM32F4双ADC采样ADC2无数据

最近在调STM32F439的板子,想用双ADC同时采样,发现ADC1数据正常,ADC2无数据,求大神指点。 下边是程序代码: uint16_t ADC_Value[8]; #define ADC1_DR_ADDR  0x4001204C      //ADC1_DR 地址 static void Init ...…

查看全部问答>

基于串口的数字万用表创意进度帖+RL78G14开发环境的安装

有朋友问我怎么安装开发环境,过程中遇到了一些问题,特别是注册那个激活码。 我这里重新搞一遍,与大家分享一下经验 如图,建议把所带光盘使用UltraISO软碟通将光盘制作成ISO文件,然后加载到虚拟光驱,这样运行速度更快.安装更省时. 然后运行根目 ...…

查看全部问答>