Pin Digital:
- Pin digital hanya dapat mengenali dua keadaan:
HIGH(tinggi) atauLOW(rendah). Dalam kebanyakan papan Arduino,HIGHbiasanya berarti 5V (atau 3.3V), danLOWberarti 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
HIGHatauLOW. - 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) valuebisa berupaHIGHatauLOW.- 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) Valueberupa angka dari 0 - 255.- Nilai
valuemenentukan 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
HIGHdanLOWadalah 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 keHIGHatauLOW: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 nilaiHIGHatauLOWsebagai hasil:int nilaiTombol = digitalRead(2);// Membaca nilai dari pin 2.nilaiTombolakan bernilaiHIGHatauLOW.
Hubungan dengan Angka 1 dan 0
- Dalam logika digital,
HIGHsering kali diwakili oleh angka 1, danLOWsering 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
HIGHdanLOWdaripada angka 1 dan 0. Ini karena:- Keterbacaan:
HIGHdanLOWlebih 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
HIGHdanLOWakan memastikan bahwa kode Anda tetap berfungsi dengan benar.
- Keterbacaan:
Ringkasan
HIGHdanLOWmewakili keadaan tegangan tinggi dan rendah pada pin digital Arduino.- Meskipun secara internal terkait dengan angka 1 dan 0, sebaiknya gunakan konstanta
HIGHdanLOWdalam 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