看到不少做普通LED呼吸灯的例子, 改良了一下, 做成RGB LED版本

2015-07-231.6万
AI 快速预览详细 收起
这是一个使用Arduino控制RGB LED实现呼吸灯效果的项目。通过2秒/次的呼吸频率和0-249的色相变化,实现更丰富的视觉效果。项目所需的设备是RGB LED,接线说明为10-11号数字针脚。代码中通过递增色相并重置来实现颜色的周而复始变化。这个项目适合初学者,无需复杂前置技能即可完成。
直接发代码, 有RGB LED的可以直接试

  1. /**
  2. * 呼吸的RGB LED灯
  3. *
  4. *    功能点:
  5. *        - 按呼吸频率(2秒/次)变化
  6. *        - 色相(0-249)每次都变化,周而复始
  7. *    设备要求:
  8. *        - RGB LED
  9. *    接线说明:
  10. *        - 10-11号数字针脚, RGB灯
  11. */
  12. #include <ChainableLED.h>
  13. ChainableLED leds(10, 11, 1);
  14. int _HSB_H = 0;     //0-349
  15. void setup() {
  16.   leds.init();
  17.   Serial.begin(9600);
  18.   Serial.println("serial is ready.");
  19. }
  20. void loop() {
  21.   Serial.print("HSB.H:");Serial.println(_HSB_H);
  22.   for(int a=0;a<=100;a++){
  23.     float b = (float)a/100;
  24.     leds.setColorHSB(0, _HSB_H, 1.0, b);
  25.     delay(20);
  26.   }
  27.   
  28.   for(int a=100;a>=0;a--){
  29.     float b = (float)a/100;
  30.     leds.setColorHSB(0, _HSB_H, 1.0, b);
  31.     delay(20);
  32.   }
  33.   //变化色相
  34.   _HSB_H++;
  35.   if(_HSB_H>249)_HSB_H=0;
  36.   
  37.   delay(300);
  38.   
  39. }
复制代码



创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(4)
20060606
20060606
怎么接线呢?
20060606
20060606
怎么接线呢?
luna
luna
没有看懂,最后是怎么样的效果啊?
hnyzcj
hnyzcj
怎么没有介绍呀!
- 没有更多了 -