3색 LED SMD 모듈(KY-009)
Red, Blue, Green 3원색을 0 ~ 255 값으로 컨트롤 하는 LED 모듈입니다.
3색 LED와 유사한 모델입니다.
사양
- 작동전압 : 5V
- 작동전류 : 20mA ~ 30mA
예제 사용 하드웨어(케이블, 브레드보드 제외)
연결
아날로그 출력을 위해 PWM 출력이 가능한 핀인 D9, D10, D11 핀을 사용합니다.
아두이노 나노 | 3색 LED SMD 모듈 | PUSH 버튼 |
GND | - | 연결 |
D12 | 연결 | |
D11 | R | |
D10 | G | |
D9 | B |
예제 코드
버튼을 누를 때마다 LED 색상이 변경되는 예제입니다.
#define btn1 12
#define red 11
#define green 10
#define blue 9
int btnFlg1 = 0;
int btn1Chk() {
if (digitalRead(btn1) == 0) {
btnFlg1 = 1;
return 0;
}
if (btnFlg1 == 1) {
btnFlg1 = 0;
return 1;
}
return 0;
}
int state = 0;
void setup() {
pinMode(btn1, INPUT_PULLUP);
}
void loop() {
if (btn1Chk()) {
switch (state) {
case 0:
analogWrite(red, 255);
break;
case 1:
analogWrite(red, 0);
analogWrite(green, 255);
break;
case 2:
analogWrite(green, 0);
analogWrite(blue, 255);
break;
case 3:
analogWrite(red, 255);
analogWrite(green, 255);
analogWrite(blue, 0);
break;
case 4:
analogWrite(red, 255);
analogWrite(green, 0);
analogWrite(blue, 255);
break;
case 5:
analogWrite(red, 0);
analogWrite(green, 255);
analogWrite(blue, 255);
break;
case 6:
analogWrite(red, 255);
analogWrite(green, 255);
analogWrite(blue, 255);
break;
case 7:
analogWrite(red, 0);
analogWrite(green, 0);
analogWrite(blue, 0);
break;
default:
break;
}
state++;
if (state > 7) state = 0;
}
delay(10);
}
실행 결과