[Arduino] 아두이노 LED 밝기 조절하기
아두이노 LED 밝기 조절하기
LED는 밝기 조절을 하기 위해서는 analogWrite를 사용해야 한다. digitalWrite를 사용하면 밝기 조절을 할 수가 없다.
ex)
digitalWrite(LEDPIN, HIGH); : LED 껐다 켰다하기(밝기 조절 X)
analogWrite(LEDPIN, 0 ~ 255); : LED 밝기 조절(0~255)
회로도 연결 방법과 소스 코드를 작성했다. 주의할 점과 함께보자.
펄스 폭 변조(PWM)
밝기 조절은 0 에서 255까지 아날로그 값으로 표현 해야 한다. 하지만 디지털 핀은 아날로그의 값을 표현 할 수 없다. 이때 디지털 핀을 아날로그 신호로 동작 할 수 있는 PWM을 지원하는 디지털 핀을 사용하면 아날로그 값을 나타낼 수 있다. '~' 가 붙은 핀 번호를 사용하면 된다.
아래 그림처럼 빨간색 네모가 되어있는 핀만 아날로그 값을 사용할 수 있다.
회로도
저항은 220옴을 사용 하면된다.
PWM을 지원하는 ~9 번 핀에 연결 했다.
코드 구현
LED 값 이 0 ~ 255까지 점차 밝아지는 것을 확인 할 수 있다. (높을 수록 밝음)
#define LEDPIN 9
void setup()
{
pinMode(LEDPIN, OUTPUT );
}
void loop()
{
for(int i = 0 ; i <= 255 ; i++) //0 ~ 255 값 출력
{
analogWrite(LEDPIN, i);
delay(5);
}
}
댓글
댓글 쓰기