pulseIn(pin, value, timeout)原文ピンに入力されるパルスを検出します。たとえば、パルスの種類(value)をHIGHに指定した場合、pulseIn関数は入力がHIGHに変わると同時に時間の計測を始め、またLOWに戻ったら、そこまでの時間(つまりパルスの長さ)をマイクロ秒単位で返します。タイムアウトを指定した場合は、その時間を超えた時点で0を返します。 この関数で計測可能な時間は、経験上、10マイクロ秒から3分です。あまりに長いパルスに対してはエラーとなる可能性があります。長いパルスを正確に測定したいときは、pulseInLong()の使用を検討してください。 【パラメータ】 pin: パルスを入力するピンの番号 value: 測定するパルスの種類。HIGHまたはLOW timeout(省略可): タイムアウトまでの時間(単位・マイクロ秒)。デフォルトは1秒 (unsigned long) 【戻り値】 パルスの長さ(マイクロ秒)。パルスがスタートする前にタイムアウトとなった場合は0 (unsigned long)。 【例】 パルスがHIGHになっている時間(duration)を調べます。 int pin = 7; unsigned long duration; void setup() { pinMode(pin, INPUT); } void loop() { duration = pulseIn(pin, HIGH); } [目次へ戻る] |
Creative Commons Attribution-ShareAlike 3.0 License.
このドキュメントはArduino Teamにより執筆され、Takumi Funadaが翻訳し、一部加筆修正したものです
ご意見はtf at musashinodenpa.comまでお送りください [Arduino wiki]