Arduino map() 함수

이 튜토리얼에서는 Arduino에서 map() 함수를 사용하여 한 범위에서 다른 범위로 숫자를 매핑하는 방법을 설명합니다.

Arduino의map()함수를 사용하여 한 범위에서 다른 범위로 숫자 매핑

한 범위에서 다른 범위로 숫자를 매핑하려면 Arduino에서map()함수를 사용할 수 있습니다. 예를 들어 1-1000 범위의 숫자를 1-10 범위에 매핑하려는 경우map()함수를 사용하여 쉽게 수행 할 수 있습니다.

이 함수는int유형의 5 개 변수를 입력 매개 변수로 사용합니다.

  1. 첫 번째 매개 변수는 범위를 변환하려는 변수입니다.
  2. 두 번째 매개 변수는 변수 범위의 원래 최소값입니다.
  3. 세 번째 매개 변수는 변수 범위의 원래 최대 값입니다.
  4. 네 번째 매개 변수는 변수의 새 범위의 최소값입니다.
  5. 다섯 번째 매개 변수는 변수의 새 범위의 최대 값입니다.

예를 들어 아날로그 값을 6 비트로 매핑 해 보겠습니다. 아래 코드를 확인하십시오.

void loop() {
  int myValue = analogRead(0);
  myValue = map(myVal, 0, 1023, 0, 64);
}

위의 코드에서 analogRead() 함수를 사용하여 아날로그 핀0에서 데이터를 읽습니다. analogRead()함수는 범위가 0 ~ 1023 인 값을 반환합니다. 값의 범위를 새 범위 인 0 ~ 64로 변환합니다. 주어진 값에 따라 새 범위를 변경할 수 있습니다. 이 함수는 정수 값에 대해서만 작동합니다. 분수를 매핑하려면이 함수를 사용하지 말고 자신 만의 변환 함수를 만들어야합니다.