2013. 5. 7. 14:37

가변저항은 간단하게 컴퓨터로 보낸 값을 체크할때 좋은 부품입니다.

이걸 이용해서 테스트한 다음 다른 센서를 붙여보면 디버깅하기가 좋죠.

 

 

1.보드 구성하기

보드를 구성하기전에 가변저항의 구조를 보도록 하겠습니다.

 

다행히 쓰여있는 데로 꼽으시면 됩니다 ㅎㅎ

 

 

LED는 평상시처럼 13번 핀에 꼽았습니다.

전 그라운드(GND)는 하얀색으로 꼽습니다.

가변저항은 돌리기 쉬운 곳에 꼽아서 테스트 합시다 ㅎㅎㅎ

 

완성

 

 

 

2.펌웨어 작성하기

가변저항의 값을 받기위해 'A0'의 값을 읽어야 하는데 아날로그 입력을 받을때 사용하는 함수가 'analogRead([읽을 포트])' 입니다.

 

#define LED 13
#define ANALOG A0

//가변저항값
int nA0_Value = 0;

void setup()
{
  pinMode(LED, OUTPUT);
  Serial.begin(9600);
}

void loop()
{
  nA0_Value = analogRead(ANALOG);
  
  analogWrite(LED, nA0_Value / 4);

  //컴퓨터에 신호를 준다.
  Serial.println(nA0_Value);
  delay(10);
}

 

시리얼포트로 값을 넘기기 위해 'Serial.println([넘길 값])'을 사용했는데 시리얼 포트를 확인하여 가변저항값을 보려고 넣은 코드입니다.

LED에 값을 줄때 나누기4를 한건 가변저항의 값은 1024까지인데 LED의 밝기값은 256까지다보니 LED의 밝기가 꺼젔다 켜졌다 하는것 처럼 보여서 입니다.

이 값을 4로 나누면 천천이 밝아지는 효과도 있습니다.

 

3.테스트 하기

가변저항을 돌려 봅시다.

만약 LED는 켜지는데 밝기조절이 안된다면 PWM포트에 LED를 연결해야 합니다.

(3,5,6,9,10,11번 포트가 PWM포트입니다.)

 

 

 

  1. Favicon of https://www.deok.me BlogIcon Deok.ME 2013.05.07 15:06 신고  Address  Edit/Delete  Reply

    오.. 재밋는걸 하시내요 ㅋ 아두이노

  2. 깜씨 2013.08.13 17:27  Address  Edit/Delete  Reply

    이해하기 쉽고 아주 좋은 내용을 올려주신 것 같습니다.

    아두이노라는 녀석은 전원 공급도 하고 아날로그 값도 받아오는 역할을 하나요??

    그리고 코드에 메인함수가 없는데도 저렇게 잘 작동하나요??

    초보자의 질문입니다ㅠㅠ

    • Favicon of https://blog.danggun.net BlogIcon 당근천국 2013.08.14 10:17 신고  Address  Edit/Delete

      5볼트까지는 공급이 가능합니다.
      led같이 저전력 제품은 따로 전원공급이 필요 없습니다.

      아두이노의 경우 메인이 숨겨저 있습니다.
      실제로는 메인안에서 'setup()'을 호출한후 'loop()'를 반복적으로 호출하는 구조로 되어 있습니다.

  3. shinraynor 2013.10.16 22:52  Address  Edit/Delete  Reply

    안녕하세요 잘보고 따라해서 잘진행이 되네요 ㅎㅎ

    가변저항값대로 led가 변화되는거처럼 시리얼포트로 값을 주면 엘이디 밝기를 조절해보고싶은데

    어느쪽을 건드리면 될까요?

댓글 작성

이름
패스워드
홈페이지
비밀글