新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 自制“心形”单片机呼吸灯

自制“心形”单片机呼吸灯

作者:时间:2017-01-06来源:网络

  所谓的“呼吸灯”,就是通过程序控制灯的闪烁过程,像呼吸一样有节奏。有亮度渐变的过程。

本文引用地址:http://www.eepw.com.cn/article/201701/342565.htm

  先来张效果图:

    

 

  这图片有点大。。。。

  这是未加修饰的样子,不过进行了简单的装饰后,就变身超级有爱的东西了

    

 

  制作过程:

  1 //******************************

  2 // 51模拟呼吸灯

  3 // 2012.9.23

  4 // menglei

  5 // p0.0接一个LED灯,状态0为亮

  6 //******************************

  7

  8

  9 #include

  10 #define N 2 //亮暗的速率

  11 #define T 800 //PWM的周期

  12 #define T1 1400

  13 #define T2 900

  14 //sbit 0=P0^0;

  15 //======================

  16 void pwm(int x)

  17 {

  18 while(x--);

  19 }

  20 //======================

  21

  22 void flash1(void){

  23 int t = 0;

  24 char f = 0;

  25 int count = 5;//5次,每个函数执行的次数

  26 while(1){

  27 P0 = 0x00;

  28 pwm(t); //Toff,亮的时间

  29 //0=1;

  30 P0 = 0xff;

  31 pwm(T-t+100);//Ton,暗的时间

  32 if(!f) t+=N+1;//亮速率较快,模拟呼吸

  33 else t-=N;//暗速率较慢

  34 if(t>T) {f=1;t=T;}//超过最大值时,返回最大值,标志为暗

  35 if(t<0) {f=0;t=0;}//超过最小值时,返回最小值,标志为亮

  36 // count--;

  37 }

  38 }

  39 void main()

  40 {

  41

  42 while(1)

  43 {

  44 flash1();

  45 }

  46 }

  程序不多,但是电路的制作的确很费时间和脑子,因为要考虑每条线的走线,还不能让线太过于繁琐

  这是中间的一部分,像那个显像管电视的样子 哈哈哈

    

 

  正面:

    

 

  调试时的走线:(不堪入目啊)

    

 

  最后的制作:

    

 



关键词: 单片机 led

评论

技术专区

关闭