he0528 发表于 2018-10-9 15:11:33

请教LED_ON、LED_OFF定义问题

#define LEDS_OFF(leds_mask) do {NRF_GPIO->OUTSET = (leds_mask) & (LEDS_MASK & LEDS_INV_MASK); \
                            NRF_GPIO->OUTCLR = (leds_mask) & (LEDS_MASK & ~LEDS_INV_MASK); } while (0)
请教一下大家,NRF_GPIO->OUTCLR = (leds_mask) & (LEDS_MASK & ~LEDS_INV_MASK);这句是什么意义呢?(leds_mask) & (LEDS_MASK & ~LEDS_INV_MASK);这个结果不是始终是0吗?给OUTCLR寄存器赋值0是没有意义的啊?谢谢!


admin 发表于 2018-10-12 08:20:03

{NRF_GPIO->OUTSET = (leds_mask) & (LEDS_MASK & LEDS_INV_MASK); \
                            NRF_GPIO->OUTCLR = (leds_mask) & (LEDS_MASK & ~LEDS_INV_MASK); }这两句是一起的,一个是判断无效,一个是赋值
页: [1]
查看完整版本: 请教LED_ON、LED_OFF定义问题