반응형

3색 LED가 있다. 하나의 LED 부품 안에 3가지 색을 내는 LED가 들어있어 각각의 색을 따로 제어가 가능하다.


위와 같이 생긴 LED 이다. 핀은 4개가 있으며 우측부터 GND, BLUE, GREEN, RED 핀이다.



위와같이 연결하며 나의 경우는 저항이 포함되어 있는 LED 모듈이기 떄문에 아두이노에 저항 없이 바로 연결하면 된다. RGB LED만 가지고 있을 경우 위와 같이 저항을 같이 연결하여 LED가 타는 것을 막아준다. GND 이외의 핀은 취향대로 연결하면 된다. 나의 경우는 RED = 13, GREEN = 11, BLUE = 12번 핀에 연결하였다.




3가지 색의 LED를 따로 제어가 가능하므로 위의 그림(빛의 삼원색)을 참고하여 LED를 제어한다면 두 가지 이상의 색을 섞거나 밝기를 조절하여 새로운 색을 만들어 낼 수도 있다. 


##소스##

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 
//pin 연결 설정.
int redPin = 13;
int greenPin = 11;
int bluePin = 12;
 
void setup()
{
 pinMode(redPin, OUTPUT);
 pinMode(greenPin, OUTPUT);
 pinMode(bluePin, OUTPUT); 
}
 
void loop()
{
  //setColor 함수에 RGB 값을 넣어 RGB 또는 두 가지 색상을 섞는다.
  //밝기: 0~255
  setColor(25500); // red
  delay(2000);
  setColor(02550); // green
  delay(2000);
  setColor(00255); // blue
  delay(2000);
  setColor(2552550); // yellow
  delay(2000); 
  setColor(2550255); // purple
  delay(2000);
  setColor(0255255); // aqua
  delay(2000);
  setColor(255255255); // white
  delay(2000);
  setColor(000); // Off
  delay(2000);  
}
 
// RGB 값을 받아 analogWrite를 통해 각 핀에 연결된 LED에 전달 함수
void setColor(int red, int green, int blue)
{
  analogWrite(redPin, red);
  analogWrite(greenPin, green);
  analogWrite(bluePin, blue); 
}
 
cs



##결과##



추가내용 : 모듈제품이 아닌 3색 LED 제품의 모양 및 핀 아웃 등의 규격은 아래와 같다. 아두이노 우노에서 사용 시 저항은 330옴 정도 연결할 것을 권장한다.

 

반응형

+ Recent posts