【STM32】RTC备份寄存器无法写入问题的解决方法

作者在学习STM32CubeMX教程时遇到RTC备份寄存器无法写入的问题,通过查阅F407中文参考手册发现,入侵检测后需要手动软件复位寄存器。操作寄存器解决了该问题,强调了参考手册在解决问题中的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

笔者在学习《STM32CubeMX高效开发教程》这本书的第11章RTC时,完成第三个示例项目后(经过入侵检测),重新运行第二个示例项目,发现已经无法正常工作了,其核心问题就在于RTC备份寄存器无法写入。在探索了很久以后,发现了解决方法。

查阅参考手册

 在F407中文参考手册的第604页讲到,发生入侵检测事件以后,TAMPxF被置位,如果没有复位,那么该寄存器就一直保持复位。而这里的“该寄存器”正是复位寄存器。

出现这个问题,同时也是因为TAMPxF不会因为按下复位键,或断电等硬件方式复位,而必须经过手动软件复位,这就涉及到了寄存器的操作。

操作寄存器

操作寄存器的关键就在两个:一、找到要操作的寄存器的位的地址;二、赋予期望的值(0或1)

在参考手册《存储器映射》这一节中,可以根据左边界地址得到基地址,即0x4000 2800

点击蓝色字体,就可以跳转到《RTC寄存器映射这一小节》,可得到偏移地址,即0x0C

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bahair_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值