[아두이노 기초] 전체 글 목록

2017/07/27 - [분류 전체보기] - [아두이노 기초] 전 과정 목록

이번시간에는 아날로그 입력에 대해서 알아보겠습니다.
아날로그입력은 ADC(Analog Digital Converter)라는 기능으 이용합니다. ADC란 연속적인 신호인 아날로그 신호를 부호화된 디지털신호로 변환하는 장치로 온도,압력,음성,영상신호,전압등을 연속적인 아날로그 신호로 측정하여 그 신호를 컴퓨터로 입력하고 디지털로 변환하는 것입니다.(아날로그->디지털)

아두이노에는 ADC모듈이 자체적으로 달려있으므로 바로 이기능을 사용할수 있습니다. 오늘 배울 것은 ADC를 활용한 함수인 analogRead(pin번호)입니다.


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

가변저항은 저항의 값을 임의의 저항값으로변경가능한 저항입니다. 회로구성을 보도록 하죠.

가변저항을 돌리게되면 A0(아날로그 입력핀)에서 저항값을 읽습니다. 그뒤 그저항값에 따라 D9(아날로그 출력)에서 LED로 아날로그 출력을 줘서 LED밝기를 조절하는 구조 입니다.

int sensorPin = A0; // select the input pin for the potentiometer

int led = 9; // the pin that the LED is attached to

 

void setup()

{

pinMode(led, OUTPUT);

Serial.begin(9600);

}

 

void loop()

{

int sensorValue = 0;

 

sensorValue = analogRead(sensorPin);

analogWrite(led, sensorValue);

Serial.println(sensorValue);

 

delay(10);

}

새로운 함수가 나왔습니다. analogRead(pin번호)는 pin번호에 연결된 장치의 값을 읽어 아날로그 값으로 변환후 int값으로 반환해주는 함수입니다. analogRead는 입력된 잔압을(0v~5v) 0~1023까지의 숫자로 변환해 줍니다.

전체 코드의 내용은 analogRead로 받은 가변저항의 값을 전시간에 배웠던 analogWrite함수로 출력한뒤 시리얼로 가변저항의 값을 출력해주는 것입니다. 펌웨어 업로드후 실행하여 보면 가변저항을 돌리는 것에 따라 led의 밝기가 변하는 것을 확인할 수 있습니다.

이것으로 아날로그 읽기, 쓰기에 대해 모두 알아 보았습니다. 다음시간에는 LCD모니터를 활용하는 것에대해 알아 보도록 하겠습니다.

+ Recent posts