標(biāo)題: 用紅綠藍(lán)LED制作彩虹燈,可裝飾各種掛件,房間 [打印本頁(yè)]

作者: dagu    時(shí)間: 2015-4-5 22:20
標(biāo)題: 用紅綠藍(lán)LED制作彩虹燈,可裝飾各種掛件,房間

http://player.youku.com/player.php/sid/XNDA2MjM0MjY0/v.swf

通過(guò)調(diào)節(jié)紅綠藍(lán)的不同亮度可以得到很多的顏色組合,這里只是其中的一部分,僅供大家欣賞和交流。
做好這個(gè)燈,可以放在植物里裝飾,比如圣誕樹(shù)啊,吊蘭啊等等,也可以放在四個(gè)墻角邊設(shè)計(jì)不同顏色主題的浪漫房間。
   程序如下,(用ATMEGA8L芯片制作)
/*
  cai hong deng cheng xu.
*/
int i=0;
int j=0;
int k=0;
void fun1(int n)
{
  for(i=9;i<12;i++)
  {analogWrite(i, 240);
  delay(n);
  }
}
void fun2(int n)
{
  for(i=11;i>8;i--)
  {analogWrite(i, 240);
  delay(n);
  }
}
void mie(int n)
{ for(i=9;i<12;i++)
  {analogWrite(i, 0);}
  delay(n);}
  void bian1(int n)
  {
    for(i=0;i<255;i++)
  {
  analogWrite(9, i);
  analogWrite(10, i);
  analogWrite(11, i);
  delay(n);
  }  
  }
  void bian11(int n )
  {
    for(i=255;i>0;i--)
  {
  analogWrite(9, i);
  analogWrite(10, i);
  analogWrite(11, i);
  delay(n);
  }  
  }

void blue(int n)
{
  for(i=0;i<255;i++)
  {
     analogWrite(9,0);
  analogWrite(10, i);
  analogWrite(11, 255);
  delay(n);}
  for(i=0;i<255;i++)
    { analogWrite(9, i);
  analogWrite(10, 255);
  analogWrite(11, 255);
  delay(n);}
   for(i=0;i<255;i++)
    { analogWrite(9, i);
  analogWrite(10, i);
  analogWrite(11, 255);
  delay(n);}
  }
  void green(int n)
  {
     for(i=0;i<255;i++)
    { analogWrite(9, i);
  analogWrite(10, 255);
  analogWrite(11, i);
  delay(n);}
   for(i=0;i<255;i++)
    { analogWrite(9, 255-i);
  analogWrite(10, 255);
  analogWrite(11,255-i);
  delay(n);}
  for(i=50;i<200;i++)
  { analogWrite(9, i);
  analogWrite(10, 255);
  analogWrite(11,200-i);
  delay(n);}
   for(i=50;i<200;i++)
  { analogWrite(9, 200-i);
  analogWrite(10, 255);
  analogWrite(11,i);
  delay(n);}
  }
  void colour(int n)
  {
    for(i=0;i<255;i++)
  { analogWrite(9, i);
  analogWrite(10, i);
  analogWrite(11,i);
  delay(n);}
  for(j=0;j<120;j=j+10)
  {for(i=j;i<255-j;i++)
  
  { analogWrite(9, 255-i);
  analogWrite(10, i);
  analogWrite(11,255-i);
  delay(n+j/5);}
   for(i=j;i<255-j;i++)
  { analogWrite(9, i);
  analogWrite(10, 255-i);
  analogWrite(11,i);
  delay(n+j/5);}
  }
  
  }

   
  
void setup() {               

  
  pinMode(9, OUTPUT);
  pinMode(10,OUTPUT);
  pinMode(11,OUTPUT);  
}

void loop() {
  
fun1(1500);
mie(500);
fun2(1500);
mie(500);
fun1(1000);
mie(250);
fun2(1000);
mie(250);
bian1(20);
bian11(20);
bian1(10);
bian11(10);
blue(10);
green(10);
bian1(10);
bian11(10);
colour(10);


  
  
  
}







歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1