蓝桥杯嵌入式LED灯——实现状态的反转

比赛用到板子上的led较普通的多了寄存器,pd.2。同时比赛中,led是必考的,通常要求对某一个或者几个灯定时开关。这里介绍一种常用的方法——利用GPIO_Write函数实现。

void LED_Disp(unsigned char ucLED)
{
GPIO_SetBits(GPIOD,GPIO_Pin_2);
GPIO_Write(GPIOC,~((ucLED)<<8));
GPIO_ResetBits(GPIOD,GPIO_Pin_2);

}

初始化ucLED=0;例如我们想开led1则利用ucLED|=0x01;关灯则可以用ucLED&=0xfe;实现。如果想要实现亮灭则ucLED^=1;当然也可以采用(Bitaction)  GPIO_WriteBit(GPIOC,GPIO_Pin_8,(BitAction)(1-GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_8)));

发布了61 篇原创文章 · 获赞 145 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/qqGHJ/article/details/105282988