반응형

준비물

----------------------------------------------------------

아두이노 우노, 3색 RGB모듈

회로도

----------------------------------------------------------

소스코드(디지털)

----------------------------------------------------------

int RED_PIN = 5;
int GREEN_PIN = 6;
int BLUE_PIN = 7;

void setup()
{
  pinMode(RED_PIN, OUTPUT);
  pinMode(GREEN_PIN, OUTPUT);
  pinMode(BLUE_PIN, OUTPUT);
}

void loop()
{

//빨간색 켜기
digitalWrite(RED_PIN,HIGH); //LED ON 
delay(500); // 0.5초 대기
digitalWrite(RED_PIN,LOW); //LED OFF
delay(500); // 0.5초 대기 

//초록색 켜기
digitalWrite(GREEN_PIN,HIGH); //LED ON 
delay(500); // 0.5초 대기
digitalWrite(GREEN_PIN,LOW); //LED OFF
delay(500); // 0.5초 대기 

//파란색 켜기
digitalWrite(BLUE_PIN,HIGH); //LED ON 
delay(500); // 0.5초 대기
digitalWrite(BLUE_PIN,LOW); //LED OFF
delay(500); // 0.5초 대기 
}

결과영상(디지털)

----------------------------------------------------------

 

 

 

디지털핀의 PWM 핀(디지털 ~표시있는 핀번호 / 3,5,6,9,10,11) 기능을 이용하여 스무스 하게 변하는 LED RGB센서.

소스코드(아날로그)

----------------------------------------------------------

int RED_PIN = 5;
int GREEN_PIN = 6;
int BLUE_PIN = 9;

void setup()
{
  pinMode(RED_PIN, OUTPUT);
  pinMode(GREEN_PIN, OUTPUT);
  pinMode(BLUE_PIN, OUTPUT);
}

void loop()
{
    for(int i =0; i<=255; i++)
  {
    analogWrite(RED_PIN,i); 
    delay(5);
  }

    for(int i =0; i<=255; i++)
  {
    analogWrite(RED_PIN,255-i); 
    delay(5);
  }
  
    for(int i =0; i<=255; i++)
  {
    analogWrite(GREEN_PIN,i); 
    delay(5);
  }

    for(int i =0; i<=255; i++)
  {
    analogWrite(GREEN_PIN,255-i); 
    delay(5);
  }

    for(int i =0; i<=255; i++)
  {
    analogWrite(BLUE_PIN,i); 
    delay(5);
  }

    for(int i =0; i<=255; i++)
  {
    analogWrite(BLUE_PIN,255-i); 
    delay(5);
  }
}

결과영상(아날로그)

----------------------------------------------------------

 

 

 

첫번째 영상에는 BLUE 핀을 7번으로 잡고 이 영상은 BLUE 핀을 9번(PWM기능이 있는) 으로 잡았습니다. 헷갈리지않게 주의해주세요.

그리고 이런식으로 저 소스코드에서 조금만 손본다면 무지개 또한 표현할 수 있겠죠?? ㅎㅎ

궁금하신분은 직접해보시고 막힐 시 댓글 달아주세요.

반응형

+ Recent posts