完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
大佬们,最近看LL库比较贴合寄存器编程,但是LL库清除某个标志位都是通过WRITE_REG(REG, VAL)这个来写整个寄存器,不应该通过CLEAR_BIT(REG, BIT)来实现清除某个位么,比如这个
|
|
相关推荐
2个回答
|
|
这个手册上有介绍,这个寄存器写0清零,写1没影响。 由该寄存器决定
|
|
|
|
STM32F103的LL库在清除某个标志位时使用WRITE_REG(REG, VAL)来写整个寄存器的原因可能有以下几点:
1. 兼容性:WRITE_REG(REG, VAL)函数是一个通用的写寄存器的函数,可以用于写入任意值到任意寄存器。使用该函数,可以在不同的芯片系列或不同版本的芯片中保持代码的一致性,提高代码的可移植性。 2. 简化代码:使用WRITE_REG(REG, VAL)函数可以直接写入寄存器的值,而不需要先读取寄存器的值然后再清除某个位。这样可以减少代码量,并且代码更清晰易懂。 3. 性能优化:由于使用WRITE_REG(REG, VAL)函数直接写入整个寄存器,可以避免读取寄存器的操作,从而减少了对外设的访问次数,提高了代码执行的效率。 综上所述,STM32F103的LL库使用WRITE_REG(REG, VAL)来清除某个标志位可能是为了提高代码的兼容性、可读性和执行效率。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1780 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1621 浏览 1 评论
1081 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
728 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1679 浏览 2 评论
1938浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
732浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
570浏览 3评论
596浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
557浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 07:51 , Processed in 0.899196 second(s), Total 84, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号