#define digitalHi(p,i) {p->BSRR=i;} //设置为高电平
#define digitalLo(p,i) {p->BRR=i;} //输出低电平
#define digitalToggle(p,i) {p->ODR ^=i;} //输出反转状态
/* 定义控制IO的宏 */
#define LED1_TOGGLE digitalToggle(GPIOB,GPIO_Pin_0)
#define LED1_OFF digitalHi(GPIOB,GPIO_Pin_0)
#define LED1_ON digitalLo(GPIOB,GPIO_Pin_0)
#define LED2_TOGGLE digitalToggle(GPIOC,GPIO_Pin_4)
#define LED2_OFF digitalHi(GPIOC,GPIO_Pin_4)
#define LED2_ON digitalLo(GPIOC,GPIO_Pin_4)
#define LED3_TOGGLE digitalToggle(GPIOC,GPIO_Pin_3)
#define LED3_OFF digitalHi(GPIOC,GPIO_Pin_3)
#define LED3_ON digitalLo(GPIOC,GPIO_Pin_3)
为什么这#define digitalToggle(p,i) {p->ODR ^=i;} //输出反转状态就可以实现反转?谢谢
|
|