설명
핀에서 펄스(HIGH 또는 LOW)를 읽습니다.
예를 들어, value 가 HIGH 이면, pulseIn()
은 핀이 HIGH 가 될 때까지 기다리고, 타이머를 시작하고, 핀이 LOW 가 될 때까지 기다리고 타이머를 멈춥니다.
펄스의 길이를 마이크로초 단위로 반환합니다. 정해진 timeout 안에 펄스가 시작되지 않으면 0을 반환합니다.
이 함수의 타이머는 경험적으로 결정되고, 긴 펄스에 대해 오류를 낼 수도 있습니다.
10 마이크로초부터 3분까지의 길이의 펄스에 대해 동작합니다.
함수가 호출됐을 때 핀이 이미 HIGH이면, 핀이 LOW가 됐다가 HIGH가 될 때까지 기다렸다가 카운팅을 시작하는 것에 주의하세요. 이 루틴은 인터럽트가 활성화됐을 때만 쓸 수 있습니다. 또한 긴 간격으로 가장 높은 해상도가 얻어집니다.
문법
pulseInLong(pin, value)
pulseInLong(pin, value, timeout)
매개변수
pin
: 펄스를 읽을 핀 번호. (int)
timeout
(옵션): 펄스 시작을 기다릴 시간 (마이크로초 단위). 기본값은 1초 (unsigned long)
반환
펄스의 길이 (마이크로초 단위) 또는 0 (timeout이 지날 때까지 펄스가 시작하지 않으면) (unsigned long)