当前位置: 代码迷 >> 单片机 >> stm32单片机 怎么直接操作寄存器
  详细解决方案

stm32单片机 怎么直接操作寄存器

热度:150   发布时间:2016-04-28 14:44:50.0
stm32单片机 如何直接操作寄存器
例如直接将电平翻转函数,小弟看不懂,还请大神帮忙解释下(我还是习惯直接写成函数的形式~~~),感谢了
#define digitalToggle(p,i)		{p->ODR ^=i;}//如何理解这里的p,i???
#define LED1_TOGGLE        digitalToggle(GPIOB,GPIO_Pin_0)


------解决思路----------------------
先理解
0^0=0
1^0=1
0^1=1
1^1=0

可见,i如果指定为1位,经过p->ODR ^=i这样运算后,其位必然和运算前相反
红色那个P是一个指针,ODR是结构体的一个成员变量