当前位置:文档之家› 51单片机 呼吸灯程序

51单片机 呼吸灯程序

//呼吸灯
//author:Hawking
//date:2013.09.13

#include
sbit led=P0^0;

void delay(int x) //延时函数,要足够快,否则灯会闪烁,而不是慢慢变化。
{ int i,j;
for(i=x;i>0;i--);
}

void main()

{ int ledlx,cycle=400;
while(1) //由暗到亮,由亮到暗,不断循环
{
for(ledlx=0;ledlx{
led=0;
delay(ledlx); //延时逐渐加大,led=0(亮)保持的时间越来越长,亮度随之变大。
led=1;
delay(cycle-ledlx); //延时减短,led=1(灭)保持的时间越来越短,结合上一句,整体亮度变大
}

for(ledlx=cycle;ledlx>0;ledlx--)//有亮到暗
{
led=0;
delay(ledlx); //延时逐渐减短,led=0(亮)保持的时间越来越短,亮度随之变小。
led=1;
delay(cycle-ledlx); //延时增长,led=1(灭)保持的时间越来越长,结合上一句,整体亮度变小
}

}


}

相关主题
文本预览
相关文档 最新文档