微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 求助一个关于STM32F1xx固件库函数的问题

求助一个关于STM32F1xx固件库函数的问题

时间:10-02 整理:3721RD 点击:
在system_stm32f10x.c的558行代码
RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_SW));
这里为什么使用了两次强制类型转换?而且在RCC_CFGR_SW的宏定义里
#define  RCC_CFGR_SW                         ((uint32_t)0x00000003)
已经将RCC_CFGR_SW配置成uint32_t格式了呀?
求讲解,谢谢了!

估计是为了严谨吧。
~运算后进行转换一次。再对所有的运算完成后再转换一次。

因为里头含有运算,多次加这个东西的原因在于防止运算后出现一些极端数据而造成不可预料的后果吧。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top