很简单的一个arduino驱动RGB小玩意
时间:11-07 09:50 阅读:7755次
*温馨提示:点击图片可以放大观看高清大图
简介:RGB LED灯组合很多种灯光,这里做了一个小玩意,其实大家也可以自己尝试更改参数,肯定有不同的新发现。下面我做了一个通过按键来控制RGB显示颜色。
一、准备材料
RGB 1个,杜邦线若干,按键3个,电阻470K 3个。面包板和arduino UNO.
二、
RGB(红绿蓝)LED看起来就像普通的LED,但是,和一般LED不同的是RGB LED封装内,有三个LED,一个红色,一个绿色的,一个蓝色的。通过控制各个LED的亮度,你可以混合出几乎任何你想要的颜色。
共阳RGB LED共有4个引脚,常见的正极是第二管脚,也是最长的那个引线。此管脚将被连接到+5V。其余的每个LED的需要串联220Ω的电阻,以防止太大的电流流过烧毁。三个正管脚的LED(一个红色,一个绿色以及一个蓝色)连接到电阻然后连接到Arduino的PWM输出引脚,这里我们用到了D9、D10、D11号管脚。 (电阻直接串联)
三、RGB连接
四、demon。
const int buttonPin1 = 3; const int buttonPin2 = 4;
const int buttonPin3 = 5;
const int ledPin1 =8;
const int ledPin2 =9;
const int ledPin3 =10;
int buttonState1 = 0;
int ledState1 = 0;
int buttonState2 = 0;
int ledState2 = 0;
int buttonState3 = 0;
int ledState3 = 0;
void setup() {
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
pinMode(buttonPin1, INPUT);
pinMode(buttonPin2, INPUT);
pinMode(buttonPin3, INPUT);
}
void loop()
{
buttonState1 = digitalRead(buttonPin1);
buttonState2 = digitalRead(buttonPin2);
buttonState3 = digitalRead(buttonPin3);
if (buttonState1 == HIGH)
{
delay(300);
ledState1 = 1 - ledState1;
}
digitalWrite(ledPin1, ledState1);
if (buttonState2 == HIGH)
{
delay(300);
ledState2 = 1 - ledState2;
}
digitalWrite(ledPin2, ledState2);
if (buttonState3 == HIGH)
{
delay(300);
ledState3 = 1 - ledState3;
}
digitalWrite(ledPin3, ledState3);
}
下面是成功之后一些图片。我用三星GT-N7100拍的,不知道为什么成像不怎么好。