pulseInNanoseconds()
説明
pulseIn() と同じく機能がありますが、パルスタイム(単位:ns、測定可能最大時間は4.2秒)
注意:pulseIn()がPWMモードにしか使えないですが、Encoder のattachInterrupt()(ISRとの連携)との共用することができません。
語法
Enc0.pulseInNanoseconds(pin, state)
Enc0.pulseInNanoseconds(pin, state, timeout)
Enc1.pulseInNanoseconds(pin, state)
Enc1.pulseInNanoseconds(pin, state, timeout)
Enc2.pulseInNanoseconds(pin, state)
Enc2.pulseInNanoseconds(pin, state, timeout)
Enc3.pulseInNanoseconds(pin, state)
Enc3.pulseInNanoseconds(pin, state, timeout)
変数
Enc0、Enc1、Enc2、Enc3ENC0、ENC1、ENC2、ENC3のコーディング インターフェースにマッピングします。
pin:パスルを読み込まれるピンを指定します。0 –>ピンAを指定します。、1—> ピン Bを指定します。2 ピン Zを指定します。
state:パスルの読込む形式( HIGH 或いはLOW)を指定します。
timeout:パスル開始時間を指定して待ってて、入力ずにや0を入力すれば、パスルが来る前にずっと待ちます。(unsigned long 形式,単位:us)
フィードバック
パルスタイムの長さ(単位:μs)
例
#include <Encoder.h>
void setup() {
Serial.begin(9600);
Enc0.begin(MODE_CAPTURE);
}
void loop() {
Serial.println(Enc0.pulseInNanoseconds(0, HIGH, 1000L));
delay(100);
}
See also
- pulseIn()
The text of the 86Duino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.
