微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > STM32 里的 BITBAND 的 宏 公式 不明白啊,help!

STM32 里的 BITBAND 的 宏 公式 不明白啊,help!

时间:10-02 整理:3721RD 点击:
#define BITBAND(addr, bitnum)   ((addr & 0xF0000000)+0x2000000+((addr & 0xFFFFF)<<5)+(bitnum<<2))
((addr & 0xF0000000)+0x2000000+((addr & 0xFFFFF)<<5)+(bitnum<<2))后面这个公式到底是怎么回事?哪位大神可以帮解读下。

(1)STM32对bit-band的访问,是以32位的方式来访问,即一次读写32位(Bit),4个字节(STM32是32位的CPU,一次读32位长,速度快,存储空间比51大的多)。 (2)寄存器中的1个位,是使用bit-band中1个双字(32位)来表达的。

(1)STM32对bit-band的访问,是以32位的方式来访问,即一次读写32位(Bit),4个字节(STM32是32位的CPU,一次读32位长,速度快,存储空间比51大的多)。 (2)寄存器中的1个位,是使用bit-band中1个双字(32位)来表达的

我不明白它这个是怎么计算到对应的位上的,这个公式能一步一步举例说清楚吗?例如我要定义a1.5

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

网站地图

Top