3.05 RGB LED七彩跳变
实现现象
本实验使用 UNO 驱动一颗 RGB 三基色 LED 产生七色光的变化。 备注:引脚最长的为共阳的正极,剩下 3 个分别为红色、绿色、蓝色。
理论学习
三基色组合七色光原理:
大家明白了三基色的原理就很容易的去编写这个例程了。我们想让哪个颜色 LED 点亮就把对应 控制引脚的 IO 设置为 LOW 就可以了。(因为这个 LED 是共阳极的哦!)
enum{Color_R,Color_G,Color_B,Color_RG,Color_RB,Color_GB,Color_RGB}; 枚举所有颜色
红,绿,蓝,黄,紫,青,白
void Change_Color(unsigned char data_color) 选择颜色函数
{
switch(data_color)
{
case Color_R: 红色
digitalWrite(LED_R,LOW);
digitalWrite(LED_G,HIGH);
digitalWrite(LED_B,HIGH);
break;
case Color_G: 绿色
digitalWrite(LED_R,HIGH);
digitalWrite(LED_G,LOW);
digitalWrite(LED_B,HIGH);
break
case Color_B: 蓝色
digitalWrite(LED_R,HIGH);
digitalWrite(LED_G,HIGH);
digitalWrite(LED_B,LOW);
break;
case Color_RG: 黄色
digitalWrite(LED_R,LOW);
digitalWrite(LED_G,LOW);
digitalWrite(LED_B,HIGH);
break;
case Color_RB: 紫色
digitalWrite(LED_R,LOW);
digitalWrite(LED_G,HIGH);
digitalWrite(LED_B,LOW);
break;
case Color_GB: 青色
digitalWrite(LED_R,HIGH);
digitalWrite(LED_G,LOW);
digitalWrite(LED_B,LOW);
break;
case Color_RGB: 白色
digitalWrite(LED_R,LOW);
digitalWrite(LED_G,LOW);
digitalWrite(LED_B,LOW);
break;
default:
break;
}
}
3.5.2 实际效果图(七彩跳变)
3.5.3 实际效果图(七彩跳变)