|
呼吸燈,肯定很多人都寫過,這里是一個簡短的呼吸燈程序。
不占用定時器,不需要用延時函數,僅僅占用一點點計算資源,將它丟到loop里面即可。
需要說明的是這個不太適合高速的微處理器。 否則你將看不到呼吸燈效果,比較適合低速的AVR 51 STM8等片子使用。
uint16_t LLEDPulse;
void Func_LED_Flash(void)
{
LLEDPulse++;
uint8_t p = LLEDPulse >> 8;
if (p > 127)
p = 254-p;
p += p;
if (((uint8_t)LLEDPulse) > p)
GPIO_WriteHigh(LED_PORT,LED_PIN);
else
GPIO_WriteLow(LED_PORT,LED_PIN);
}
|
|