Deskripsi
Fungsi untuk membaca pulsa HIGH atau LOW pada pin. Contoh untuk nilai HIGH akan menunggu pulsa dari LOW ke HIGH, start timing dan menunggu untuk kembali ke LOW untuk stop timing. Nilai yang diperoleh di sini adalah lebar pulsa dalam microsecond atau nilai nol apabila tidak diperoleh pulsa hingga time out
Fungsi ini akan menampilkan error untuk pulsa yang lebih lebar. Hanya akan bekerja dalam nilai 10uS hingga 3 menit.
Syntax
pulseIn(pin, value)
pulseIn(pin, value, timeout)
Parameters
pin: Nomor pin Arduino Board di mana pulsa akan dibaca. Tipe data yang diijinkan int
value: tipe pulsa yang dibaca, HIGH atau LOW. Tipe data yang diijinkan int
timeout(optional): nilai dalam microsecond untuk menunggu pulsa dimulai, default dalam satu detik. Tipe data yang diijinkan unsigned long
Returns:
Lebar pulsa dalam microsecond atau nol apabila tidak ada pulsa hingga timeout. Tipe data yang diijinkan unsigned long
Contoh Program
Menampilkan durasi timing pada pin 7
int pin = 7; //nomor pin Arduino Board yang digunakan
unsigned long duration; //tipe data variabel duration unsigned
//long
void setup() {
Serial.begin(9600); //set baudrate serial 9600 bps
pinMode(pin, INPUT); //set mode pin pada pin 7 Arduino Board
//sebagai input
}
void loop() {
duration = pulseIn(pin, HIGH); //ambil nilai yang diperoleh dari
//fungsi pulseIn dengan tipe
//pulsa HIGH dan simpan di variabel
//duration
Serial.println(duration); //tampilkan isi variabel duration
//ke serial
}
Terjemahan dan edit dari
https://www.arduino.cc/reference/en/language/functions/advanced-io/pulsein/
DELTA ELECTRONIC
Paulus Andi Nalwan, ST