呼吸燈大家應該都知道,就是一盞燈慢慢的亮起來又慢慢的滅下去形成一個類似呼吸的效果。現在大家的手機上應該都有這個燈。
那麼呼吸燈到底是怎麼實現的呢原理又是什麼?
其實就是控制一盞燈的通電時間來決定的,慢慢亮起來的時候就讓通電時間慢慢邊長,反之滅下去的時候就變短,這個功能通常會使用PWM(脈衝調製)來實現。但是對於我們初學者來說這東西太複雜了。下面我將教大家用延時寫一個超簡單的呼吸燈程式
void delayed(unsigned int k)
{//延時函式
unsigned char i,j;
for (i = 0; i < k;i++)
for (j = 0; j < 50; j++);
}
int main()
{
unsigned int i;
while(1)
{
for (i = 0; i < 200; i++)
{
P0 = 0xfe;
delayed(i);//LED燈慢慢的亮起來
P0 = 1;
delayed(200 - i);
}
delayed(500);
for (i = 0; i < 200; i++)
{
P0 = 1;
delayed(i);//LED燈慢慢的滅
P0 = 0xfe;
delayed(200 - i);
}
delayed(500);
}