Study/Coding
ADC 최소값 최대값 출력
LovEnable
2016. 1. 19. 22:27
ADC 최소값 최대값 출력
센서를 사용하다보면 센서를 센서의 최소값과 최대값이 필요한 경우가 생긴다.
즉, peak 값이 필요한 경우인데, 소리를 감지하는 경우에 사용하게 된다. (박수소리 감지 등등...)
아두이노 기본 함수에는
min() 과 max() 라는 함수가 있어서 이를 이용하면 쉽게 최대값과 최소값을 나타낼 수 있다.
min()은 인자로 쓰인 두개의 숫자를 비교해서 더 작은 값을 반환해주고,
max()의 경우에는 마찬가지지만 더 큰 숫자를 반환한다.
아래의 예제에는 아날로그 센서값을 for문을 사용해 일정 횟수 체크해서 그사이의 최대값과 최소값을 구한 뒤에
시리얼 통신으로 화면에 출력하는 예제이다.
void setup() {
Serial.begin(9600);
}
void loop() {
int min0 = 0;
int max0 = 0;
min0 = analogRead(A0);
for (int i = 0; i < 1000; ++i)
{
int val = analogRead(A0);
min0 = min(min0, val);
max0 = max(max0, val);
}
Serial.print(min0);
Serial.print(" : ");
Serial.println(max0);
}