Mengenal Analog dan Digital pada Arduino: Apa Bedanya?
Setelah memahami dasar Arduino, sekarang saatnya membahas dua konsep penting yang sering muncul dalam proyek: analog dan digital. Walaupun terdengar teknis, memahami perbedaan keduanya sangat penting agar proyek Arduino-mu berjalan dengan sukses.
Apa Itu Sinyal Digital?
Sinyal digital hanya punya dua kondisi:
- HIGH (1) → Biasanya 5V (atau 3.3V pada beberapa papan)
- LOW (0) → 0V
Contoh penggunaan sinyal digital:
- Menyalakan dan mematikan LED.
- Membaca tombol yang ditekan atau tidak.
- Mengontrol relay untuk ON/OFF.
Contoh kode membaca input digital:
int tombol = 2; // Tombol dihubungkan ke pin 2
int statusTombol = 0;
void setup() {
pinMode(tombol, INPUT);
Serial.begin(9600);
}
void loop() {
statusTombol = digitalRead(tombol);
if (statusTombol == HIGH) {
Serial.println("Tombol ditekan!");
} else {
Serial.println("Tombol dilepas!");
}
}
Pin Digital Arduino
- Arduino Uno memiliki 14 pin digital (D0 hingga D13).
- Beberapa pin juga mendukung PWM (Pulse Width Modulation) — nanti kita bahas ini khusus
Apa Itu Sinyal Analog?
Sinyal analog bersifat kontinu, artinya bisa memiliki nilai apapun dalam rentang tertentu, bukan hanya 0 atau 1.
Contoh sinyal analog:
- Kecerahan cahaya dari sensor LDR.
- Suhu yang terukur dari sensor suhu.
- Posisi potensiometer (semacam volume radio).
Arduino bisa membaca sinyal analog menggunakan fungsi analogRead()
yang menghasilkan nilai 0 hingga 1023 (untuk Arduino Uno, dengan resolusi 10-bit).
Contoh kode membaca input analog:
int sensorPin = A0; // Sensor terhubung ke pin A0
int nilaiSensor = 0;
void setup() {
Serial.begin(9600);
}
void loop() {
nilaiSensor = analogRead(sensorPin);
Serial.println(nilaiSensor);
delay(500);
}
Catatan:
- A0, A1, A2, dst. adalah pin analog pada Arduino.
- Nilai 0 berarti 0V, sedangkan 1023 berarti sekitar 5V.
Pin Analog Arduino
- Arduino Uno punya 6 pin analog (A0 sampai A5).
- Beberapa papan seperti Mega atau Due punya lebih banyak.
Tabel Perbandingan Digital vs Analog
Fitur | Digital | Analog |
---|---|---|
Nilai | 0 atau 1 | 0 hingga 1023 |
Contoh | Push Button, LED, Relay | Sensor suhu, LDR |
Fungsi Arduino | digitalRead(), digitalWrite() | analogRead() |
Jenis Pin | D0-D13 | A0-A5 |
Membedakan analog dan digital adalah dasar penting dalam dunia Arduino. Setelah paham ini, kamu akan lebih mudah:
- Membaca berbagai jenis sensor.
- Mengontrol aktuator seperti motor, LED, dan buzzer.
- Membuat proyek lebih interaktif dan responsif terhadap lingkungan.
Jangan takut mencoba, karena dengan eksperimen kamu akan semakin paham perbedaan dan penggunaannya di dunia nyata!
Posting Komentar