Fungsi pinMode(), digitalWrite() dan digitalRead() Digital I/O Arduino
pinMode(), digitalWrite() dan digitalRead() adalah fungsi untuk mengakses input dan output digital pada Arduino. Fungsi ini untuk menyederhanakan perintah yang berhubungan dengan pin I/O board Arduino.
pinMode()
Berfungsi untuk mengkonfigurasi pin tertentu agar berperilaku sebagai input atau output. Lihat deskripsi pin digital untuk rincianya.
Pada Arduino 1.0.1, dimungkinkan untuk mengaktifkan resistor pullup internal dengan mode INPUT_PULLUP. Selain itu, mode INPUT eksplisit menonaktifkan pullups intern.
Sintaksis
pinMode(pin, mode)
Parameter
pin: Pin yang ingin anda atur
Modus: INPUT , OUTPUT , atau INPUT_PULLUP
Contoh
int ledPin = 13; // LED terkoneksi dengan digital pin 13
void setup()
{
pinMode(ledPin, OUTPUT); // mengatur digital pin sebagai output
}
void loop()
{
digitalWrite(ledPin, HIGH); // mengatur LED agar menyala
delay(1000); // tunggu satu detik
digitalWrite(ledPin, LOW); // mengatur LED agar mati
delay(1000); // tunggu selama satu detik
}
digitalWrite()
Berfungsi untuk memberi nilai HIGH atau LOW ke pin digital. Jika pin telah dikonfigurasi sebagai OUTPUT dengan pinMode(), tegangan akan diatur ke nilai yang sesuai: 5V (atau 3.3V) untuk HIGH, 0V (ground) untuk LOW.
Jika pin dikonfigurasi sebagai INPUT, digitalWrite() akan mengaktifkan (HIGH) atau menonaktifkan (LOW) dengan pullup internal pada pin input. Disarankan dalam mengatur pinMode() INPUT_PULLUP untuk mengaktifkan resistor pull-up internal.
CATATAN: Jika Anda tidak mengatur pinMode() ke OUTPUT, dan menghubungkan LED ke pin, saat memanggil fungsi digitalWrite(HIGH), LED mungkin akan tampak redup.
Sintaksis
digitalWrite (pin, value)
Parameter
pin: nomor pin
Nilai: HIGH atau LOW
Contoh
int ledPin = 13; // LED terkoneksi dengan digital pin 13
void setup()
{
pinMode(ledPin, OUTPUT); // mengatur digital pin sebagai output
}
void loop()
{
digitalWrite(ledPin, HIGH); // mengatur LED agar menyala
delay(1000); // tunggu satu detik
digitalWrite(ledPin, LOW); // mengatur LED agar mati
delay(1000); // tunggu satu detik
}
digitalRead()
Membaca nilai dari pin digital tertentu, baik HIGH atau LOW.
Sintaksis
digitalRead(pin)
Parameter
pin: Nomor pin yang ingin dibaca (int)
Pengembalian data fungsi
HIGH atau LOW
Contoh
int inPin = 7; // pushbutton terkoneksi dengan digital pin 7
int val = 0; // variabel untuk menyimpan nilai
{
pinMode(ledPin, OUTPUT); // mengatur digital pin sebagai output
pinMode(inPin, INPUT); // mengatur digital pin sebagai input
}
{
val = digitalRead(inPin); // membaca pin input
digitalWrite(ledPin, val); // mengatur hidup dan mati LED dengan pushbutton
}