OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3452|回复: 1

关于stm32RTC实验中通过库函数实现“取消备份区写保护”的疑问

[复制链接]

3

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
126
金钱
126
注册时间
2016-2-18
在线时间
36 小时
发表于 2016-2-25 23:30:03 | 显示全部楼层 |阅读模式
3金钱
stm32RTC实验中,原子哥的寄存器版本的函数取消备份区写保护是通过PWR->CR|=1<<8;来实现的,而在函数库版本的程序中发现确实通过下面这种方法实现的, *(__IO uint32_t *) CR_DBP_BB = (uint32_t)NewState;
#define CR_DBP_BB                (PERIPH_BB_BASE + (CR_OFFSET * 32) + (DBP_BitNumber * 4))
#define PERIPH_BB_BASE        ((uint32_t)0x42000000)
#define DBP_BitNumber            0x08
然后就看不懂是怎么实现置1操作的,求各位大神解释。

最佳答案

查看完整内容[请看2#楼]

这里用的位带操作了。没必要搞得那么纠结,用寄存器非常方便。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-2-25 23:30:04 | 显示全部楼层
这里用的位带操作了。没必要搞得那么纠结,用寄存器非常方便。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-21 02:52

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表