Pin Digital:
- Pin digital hanya dapat mengenali dua keadaan:
HIGH
(tinggi) atauLOW
(rendah). Dalam kebanyakan papan Arduino,HIGH
biasanya berarti 5V (atau 3.3V), danLOW
berarti 0V (ground). - Pin digital digunakan untuk berinteraksi dengan perangkat yang memiliki output digital, seperti tombol, LED, dan sensor digital.
- Pada papan Arduino Uno, pin digital diberi label angka 0 hingga 13.
- Pin digital hanya dapat mengenali dua keadaan:
Pin Analog:
- Pin analog dapat membaca rentang tegangan yang bervariasi. Pada papan Arduino Uno, rentang tegangan ini adalah 0V hingga 5V.
- Pin analog digunakan untuk membaca nilai dari sensor analog, seperti sensor suhu, sensor cahaya, dan potensiometer.
- Pada papan Arduino Uno, pin analog diberi label A0 hingga A5.
Fungsi-fungsi yang Terkait
digitalRead():
- Fungsi ini digunakan untuk membaca nilai dari pin digital.
- Sintaks:
digitalRead(pin)
- Mengembalikan nilai
HIGH
atauLOW
. - Contoh:
int nilaiTombol = digitalRead(2);
(membaca nilai dari pin digital 2).
digitalWrite():
- Fungsi ini digunakan untuk menulis nilai ke pin digital.
- Sintaks:
digitalWrite(pin, value)
value
bisa berupaHIGH
atauLOW
.- Contoh:
digitalWrite(13, HIGH);
(mengatur pin digital 13 keHIGH
).
analogRead():
- Fungsi ini digunakan untuk membaca nilai dari pin analog.
- Sintaks:
analogRead(pin)
- Mengembalikan nilai integer antara 0 dan 1023 (pada Arduino Uno), yang sesuai dengan rentang tegangan 0V hingga 5V.
- Contoh:
int nilaiSensor = analogRead(A0);
(membaca nilai dari pin analog A0).
analogWrite():
- Fungsi ini digunakan untuk menghasilkan sinyal analog palsu (PWM - Pulse Width Modulation) pada pin digital yang mendukung PWM.
- Sintaks:
analogWrite(pin, value)
Value
berupa angka dari 0 - 255.- Nilai
value
menentukan duty cycle dari sinyal PWM. - Fungsi ini digunakan untuk mengendalikan kecerahan LED atau kecepatan motor DC.
- Contoh:
analogWrite(9, 128);
(menghasilkan sinyal PWM dengan duty cycle 50% pada pin digital 9).
Ringkasan
- Pin digital untuk sinyal
HIGH
/LOW
, pin analog untuk rentang tegangan. digitalRead()
/digitalWrite()
untuk pin digital,analogRead()
/analogWrite()
untuk pin analog.analogWrite()
menggunakan PWM untuk menghasilkan sinyal analog palsu.
Konsep Dasar
- Dalam elektronika digital, kita sering berurusan dengan dua keadaan: "on" dan "off". Dalam Arduino, keadaan ini direpresentasikan sebagai:
HIGH
: Keadaan tegangan tinggi. Biasanya 5V (atau 3.3V pada beberapa papan Arduino).LOW
: Keadaan tegangan rendah. Biasanya 0V (ground).
Penggunaan dalam Kode Arduino
HIGH
danLOW
adalah konstanta yang telah ditentukan dalam bahasa pemrograman Arduino. Penggunaan konstanta ini membuat kode lebih mudah dibaca dan dipahami.- Ketika Anda menggunakan fungsi
digitalWrite()
, Anda dapat mengatur pin digital keHIGH
atauLOW
:digitalWrite(13, HIGH);
// Mengatur pin 13 ke tegangan tinggi (5V).digitalWrite(13, LOW);
// Mengatur pin 13 ke tegangan rendah (0V).
- Ketika Anda menggunakan fungsi
digitalRead()
, Anda akan mendapatkan nilaiHIGH
atauLOW
sebagai hasil:int nilaiTombol = digitalRead(2);
// Membaca nilai dari pin 2.nilaiTombol
akan bernilaiHIGH
atauLOW
.
Hubungan dengan Angka 1 dan 0
- Dalam logika digital,
HIGH
sering kali diwakili oleh angka 1, danLOW
sering kali diwakili oleh angka 0. - Secara internal, Arduino memang menggunakan representasi biner (1 dan 0) untuk menyimpan dan memproses data.
- Namun, dalam penulisan kode Arduino, disarankan untuk menggunakan konstanta
HIGH
danLOW
daripada angka 1 dan 0. Ini karena:- Keterbacaan:
HIGH
danLOW
lebih deskriptif dan mudah dipahami daripada 1 dan 0. - Portabilitas: Jika Anda memindahkan kode Anda ke papan Arduino yang berbeda dengan tingkat tegangan yang berbeda, penggunaan
HIGH
danLOW
akan memastikan bahwa kode Anda tetap berfungsi dengan benar.
- Keterbacaan:
Ringkasan
HIGH
danLOW
mewakili keadaan tegangan tinggi dan rendah pada pin digital Arduino.- Meskipun secara internal terkait dengan angka 1 dan 0, sebaiknya gunakan konstanta
HIGH
danLOW
dalam kode Anda untuk keterbacaan dan portabilitas. - Pada intinya penggunaan 1 dan 0, sama saja dengan menggunakan HIGH dan LOW, hanya saja akan lebih mudah di pahami jika menggunakan HIGH dan LOW.
Tidak ada komentar:
Posting Komentar