학습/Arduino

아날로그/디지털 입출력 #1

juhyeon 2021. 9. 24. 01:59

#가변저항을 이용해 LED의 밝기 조절 / 시리얼 통신을 이용하여 변수의 값 확인

- map(value, from Low, from High, to Low, to High)와 constrain(value, min, max)

  map()함수를 이용해 아날로그 입력값을 n개의 구간으로 나누는 경우,

  to Low, to High 값을 0,n-1이 아닌 0,n으로 설정하고 constrain()함수에는 min=0, max=n-1

  이용해 구간의 범위를 묶어줘야한다.

    예를 들어 map(val, 0, 1023, 0, 4)의 경우 0~1구간, 1~2구간, 2~3구간, 3~4구간 총 4구간이 발생한다.

    하지만 map함수가 4로 맵핑하는 한가지 경우: 입력값이 1023인 경우가 있다. 이 경우를 배제하기 위해

    constrain(map_result_val, 0, 3)라는 코드를 추가하여야 한다.