完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1、RTC处于后备区,系统的复位或重启对RTC没有影响。在系统复位后,禁止对后备寄存器和RTC的访问。如果需要对RTC进行访问:(1)设置寄存器RCC_APB1ENR的PWREN和BKPEN位,使能电源和后备接口时钟 (2)设置寄存器PWR_CR的DBP位,使能对后备寄存器和RTC的访问;2、RTC的时钟 RTCCLK 有专门的精确的时钟源LSI Osc,RTCCLK经过RTC_DIV分频器产生一个最长周期为1s的时钟信号至计数器RTC_CNT;
3、RTC一共存在5个寄存器:RTC_PRL(20位)、RTC_DIV(20位)、RTC_CNT(36位)、RTC_ALR(36位)(这四个寄存器位于后备区)和RTC_CR (1)RTC_PRL用来保存RTC预分频器的周期计数值。它们受RTC_CR寄存器的RTOFF位保护,仅当RTOFF为’1’时 允许进行写操作。 (2)RTC_PRL与RTC_DIV(只读)的关系: 在TR_CLK的每个周期里, RTC预分频器计数器RTC_DIV中的值都会被重新设置为RTC_PRL寄存器的值。用户可 通过读取RTC_DIV寄存器,以获得预分频计数器的当前值,而不停止分频计数器的工作,从而获得精确的时间 测量。RTC_DIV是只读寄存器,其值在RTC_PRL或RTC_CNT寄存器中的值发生改变后,由硬件重新装载。 RTC_DIV每输出TR_CLK都会产生一个秒中断 (3)RTC_ALR:当RTC_CNT的值与RTC_ALR中的值相等时,即触发一个闹钟事件,并且产生RTC闹钟中断。此寄存 器受RTC_CR寄存器里的RTOFF位写保护,仅当RTOFF值为’1’时,允许写操作。 (4)RTC_CNT: RTC核的一个32位可编程的计数器,可通过两个16位的寄存器访问。计数器以预分频器产生的TR_CLK时间基准为参考进行计数。 RTC_CNT寄存器用来存放计数器的计数值。他们受RTC_CR 的 位 RTOFF 写 保 护 , 仅 当 RTOFF 值 为 '1' 时 , 允 许 写 操 作 。当进行读操作时,直接返回计数器内的计数值(系统时间)。RTC_CNT的每一次溢出都会产生一个溢出中断信号。 4、RTC有两个模式:配置模式和工作模式,只有在配置模式下才可以对RTC寄存器进行配置 配置过程: (1)、查询RTOFF位(只读位),直到RTOFF变为‘1’ (2)、置CNF值为1,进入配置模式 (3)、对RTC_PRL、RTC_DIV、RTC_ALR、RTC_CNT进行写操作 (4)、清除CNF标志位,退出配置模式 (5)、查询RTOFF位(只读位),直到RTOFF变为‘1’以确认写操作已经完成 注:RTC模块利用这位来指示对其寄存器进行的最后一次操作的状态,指示操作是否完成。若此位 为’0’,则表示无法对任何的RTC寄存器进行写操作。此位为只读位。 0:上一次对RTC寄存器的写操作仍在进行; 1:上一次对RTC寄存器的写操作已经完成。
|
|
相关推荐
|
|
wao o asd ad
|
|
|
|
|
|
1129 浏览 0 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
1075 浏览 2 评论
2175 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
1269 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
1693 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-26 16:53 , Processed in 0.469244 second(s), Total 45, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号