Limetime's TimeLine
article thumbnail
반응형

삼원색 LED는 내부에 RGB 각각의 발광다이오드들이 모두 들어 있다. 그러므로 빛의 삼원색을 혼합하여 자연색을 구현할 수 있다.

제일 긴 다리가 GND이다.

1. 1. 3개의 색. 혼합 점멸

<cpp />
int LED_R = 11; int LED_G = 10; int LED_B = 9; void setup() { // put your setup code here, to run once: pinMode(LED_R, OUTPUT); pinMode(LED_G, OUTPUT); pinMode(LED_B, OUTPUT); } void loop() { // put your main code here, to run repeatedly: digitalWrite(LED_R, HIGH); delay(500); digitalWrite(LED_R, LOW); delay(500); digitalWrite(LED_G, HIGH); delay(500); digitalWrite(LED_G, LOW); delay(500); digitalWrite(LED_B, HIGH); delay(500); digitalWrite(LED_B, LOW); delay(500); digitalWrite(LED_R, HIGH); delay(500); digitalWrite(LED_G, HIGH); delay(500); digitalWrite(LED_B, HIGH); delay(500); digitalWrite(LED_R, LOW); delay(500); digitalWrite(LED_G, LOW); delay(500); digitalWrite(LED_B, LOW); delay(500); }

빨강 -> 초록 -> 파랑 -> 빨+초+파(흰색) 반복.

 

 

2. 2. 자동으로 색이 바뀌는 3원색 LED

Random함수를 사용하여 1초 마다 색이 무작위로 바뀌는 것을 구현해보자!

<cpp />
int LED_R = 11; int LED_G = 10; int LED_B = 9; void setup() { // put your setup code here, to run once: randomSeed(analogRead(0)); } void loop() { // put your main code here, to run repeatedly: analogWrite(LED_R, random(256)); analogWrite(LED_G, random(256)); analogWrite(LED_B, random(256)); delay(1000); }
  • randomSeed() : 난수 생성기 초기화
  • random() : 0 ~ 255 중 무작위 수 생성

 

 


LED 위에 손바닥이나 종이를 대보면, RGB를 확실하게 구분하여 볼 수 있다. 모두 섞여 있다는 사실을...

반응형
profile

Limetime's TimeLine

@Limetime

포스팅이 좋았다면 "공감❤️" 또는 "구독👍🏻" 해주세요!