아두이노 - ADC 변환
# ADC ( Analog to digital converter )
-> 연속적인 아날로그 전압을 이산적인 디지털 값으로 바꾸는 역할
-> 해상도가 높을 수록 디지털로 표현할 수 있는 값의 종류가 많아지고 정확해 진다.
-> 8bit ( 256 ), 10bit ( 1024 ), 12bit ( 4096 ) 등의 해상도를 갖는 제품이 있다.
# 정확도는 해상도에 의해 결정
-> 아날로그 값을 디지털 값으로 변환하기 위해 10bit 해상도의 ADC를 이용
- 10bit 해상도 : ADC 가 아날로그 신호를 2^10 개의 서로 다른 값으로 구분 가능
- 다시 말해, 입력되는 모든 값을 0 ~ 1023 사이의 값 ( 1024개 )중에 하나를 표시
# 기준 전압 관련
-> 해당 디지털 값 ( 입력할 수 있는 최대 전압을 결정하는데 이용 )
-> 디폴트 값으로는 5V 를 기준 전압으로 이용
- 5V 를 이용하게 되면, 0V -> 0, 2.5V -> 512, 5V -> 1023 의 값을 표시
# 값 연동
-> analogRead() : 아날로그 값을 읽어 들인다.
-> analogWrite() : 아날로그 값을 출력 시킨다.
-> digitalRead() : 디지털 값을 읽어 들인다.
-> digitalWrite() : 디지털 값을 출력 시킨다.
-> map() : 값의 범위를 특정 범위로 사상 시킨다.
-> constrain() : 값의 범위를 지정 ( noise 값을 제거하기 위함 )