Page 236 - 최강 아두이노 퍼스트 참고서
P. 236

위의 예제코드에서 사용된 map() 함수는 지정된 범위내의 입력된 값을 지정된 범위 의 비율
               로 변환하여 반환하는 함수입니다.

               >> map 함수 사용법 지정된 비율의 입력된 값을 다른 비율의 값으로 구할 때 사용되는 함수

               입니다.


                       MAP(VALUE, FROMLOW, FROMHIGH, TOLOW, TOHIGH)

               map 함수는 <Arduino.h> 파일에 정의 되어 있습니다.
               long map(long, long, long, long, long);

               map 함수 호출 시 사용되는 파라미터는 5개입니다. 각각의 파라미터의 의미는 아래와 같습니
               다.
               long MAP(VALUE, FROMLOW, FROMHIGH, TOLOW, TOHIGH);

               value: 변환에 사용되는 변수
               fromLow: 입력 되는 value 최소값 범위 지정

               fromHigh: 입력 되는 value 최대값 범위 지정.
               toLow: 변환되는 최소 범위
               toHigh: 변환되는 최대 범위

               아래의 예제는 analogRead(0) 0 번 포트의 값을 가져와서 0~255까지의 비율로 변환 하는 예
               제코드입니다. analogRead 함수의 반환값의 범위는 0~1023 입니다.

               void setup() {}

               void loop()
               {
                   int val = analogRead(0);     val = map(val, 0, 1023, 0, 255);     analogWrite(9, val);
               }

               스케치에서 사용되는 map 함수 본체입니다.
               long map(long x, long in_min, long in_max, long out_min, long out_max)
               {
                 return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
               }









                                                   236
   231   232   233   234   235   236   237   238   239   240   241