在主函数的循环体中, 我们通过延时函数间隔的控制相关的 GPIO 输出电压,这样就可
以点量和熄灭各个 LED,造成闪烁的效果。 电压的控制是通过库函数 GPIO_SetBits()完成的;
void EvbLedControl(int index, int cmd)
{
switch (index)
{
case LED1:
{
if (cmd == LED_ON)
{
GPIO_SetBits(GPIOD,GPIO_PIN_11); /*µãÁÁLed1µÆ*/
}
else
{
GPIO_ResetBits(GPIOD,GPIO_PIN_11); /*ϨÃðLed1µÆ*/
}
break;
}
case LED2:
{
if (cmd == LED_ON)
{
GPIO_SetBits(GPIOD,GPIO_PIN_12);
}
else
{
GPIO_ResetBits(GPIOD,GPIO_PIN_12); /*ϨÃðLed2µÆ*/
}
break;
}
case LED3:
{
if (cmd == LED_ON)
{
GPIO_SetBits(GPIOD,GPIO_PIN_13); /*µãÁÁLed3µÆ*/
}
else
{
GPIO_ResetBits(GPIOD,GPIO_PIN_13); /*ϨÃðLed3µÆ*/
}
break;
}
default:
{
if (cmd == LED_ON)
{
GPIO_SetBits(GPIOD,GPIO_PIN_11|GPIO_PIN_12|GPIO_PIN_13);
/*µãÁÁËùÓеĵÆ*/
}
else
{
GPIO_ResetBits(GPIOD,GPIO_PIN_11|GPIO_PIN_12|GPIO_PIN_13);
/*ϨÃðËùÓеĵÆ*/
}
break;
}
}
}
|