对寄存器操作的问题

2019-07-21 03:32发布

#define SCCB_SDA_IN()  {GPIOD->MODER&=~(3<<(7*2));GPIOD->MODER|=0<<7*2;} //PD7 输入
#define SCCB_SDA_OUT() {GPIOD->MODER&=~(3<<(7*2));GPIOD->MODER|=1<<7*2;} //PD7 输出

求高手说详细一点,现在可以理解到是对GPIOD的MODER寄存器进行操作,将3左移7*2位,即对pin7进行操作,再向后就不明白了,望高手们指导!!!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。