가변저항 이용하여 LED밝기 조절하기

아두이노

가변저항 이용하여 LED밝기 조절하기

원장샘 0 2,101 2017.04.08 00:11
thumb-2009513293_RxvAOuFP_bd295dacda931354f3e06be3756fc2523ffe59d6_600x485.jpg
가변저항 이용하여 LED조명 밝기조절
가변저항이란 저항 값이 고정되지 않는 것을 의미한다. 즉, 사용자의 편의에 따라 저항값을 줄이고 늘리면서 소리의 크기나 밝기 조절 등을 할 수 있는 것을 가변저항이라 한다.
가변저항은 크게 드라이버를 사용하여 바꿔주거나 손으로 직접 돌려서 바꿀 수 있는 가변저항이 있다. 드라이버를 사용하는 가변저항은 저항값을 자주 바꿀일이 없을 때 많이 사용하며(내부적인 부품 등..) 손으로 직접 제어하는 가변 저항은 저항 값을 자주 바꿀 때 사용한다( 라디오나 밝기를 조절하는 전등같은 경우)

analogWrite(), analogRead()
analog값은 digital값과 다르게 HIGH, LOW가 아니라 조금 더 상세한 값을 지정할 수 있다. digital값은 5V(HIGH), oV(LOW)값 밖에 표현을 할 수 없기 때문에 0V와 5V 사이의 값은 analog값으로 표현을 해 주어야 한다.
anslogWrite()값은 0~255로 표현이 가능하고 analogRead()값은 0~1023까지 표현할 수 있다. 그러므로 analogRead()를 통해 입력받은 값을 1/4하면 analogWrite()로 출력하여 0~5V까지 표현을 할 수 있다.
digital값의 LOW(0V)는 analog 값으로 0, digital값의 HIGH(5V)는 analog값으로 255로 변환할 수 있다. 즉, 2.5V를 표현하고자 한다면 analog값으로 255/2를 하면 대락 127로 표현할 수 있다.
analogWrite()함수를 사용하려면 PWM으로 지정된 핀에서만 가능하다.(3,5,6,9,10,11)

예제 1

int led = 11;


void setup() {


}


void loop() {

  for(int i=0; i<256; i++)

  {

    analogWrite(led, i);

    delay(50);

  }

}



예제 2

int led = 11;


void setup() {


}


void loop() {

  int a = analogRead(A1);

  analogWrite(led, a/4);

}

Comments

Category
State
  • 현재 접속자 3 명
  • 오늘 방문자 29 명
  • 어제 방문자 241 명
  • 최대 방문자 394 명
  • 전체 방문자 320,329 명
  • 전체 게시물 2,591 개
  • 전체 댓글수 105 개
  • 전체 회원수 85 명
Facebook Twitter GooglePlus KakaoStory NaverBand