Bayangkan Arduino seperti seorang satpam
Misalnya satpam mulai bekerja pukul 08.00.
Saat pertama datang bekerja
Dia melakukan persiapan:
- Membuka pintu.
- Menyalakan lampu.
- Menyalakan komputer.
Semua itu cukup dilakukan sekali saja.
Di Arduino, bagian ini adalah:
void setup() { }
Jadi setup() dijalankan sekali saat Arduino baru dinyalakan atau di-reset.
loop() akan dijalankan terus menerus.
Kenapa Serial.begin() tidak ditaruh di loop()?
Misalnya seperti ini:
void loop() { Serial.begin(9600); Serial.println("Halo"); }
Yang terjadi, Arduino akan mengaktifkan komunikasi serial berulang-ulang setiap putaran loop(). Itu tidak perlu dan bisa membuat program tidak efisien.
Karena komunikasi serial cukup diaktifkan sekali, maka ditempatkan di setup().
Aturan sederhana yang mudah diingat
setup() → semua yang cukup dilakukan satu kali.
Contohnya:
-
Serial.begin() -
pinMode() -
Inisialisasi LCD (
lcd.init()) - Menghubungkan WiFi (pada ESP32)
loop() → semua yang harus dilakukan terus-menerus.
Contohnya:
- Membaca sensor.
- Menyalakan/mematikan LED.
- Menampilkan data ke Serial Monitor.
- Mengecek apakah tombol ditekan.
void setup() { pinMode(13, OUTPUT); } void loop() { digitalWrite(13, HIGH); }
Menurut Anda:
-
Baris
pinMode(13, OUTPUT);dijalankan berapa kali? -
Baris
digitalWrite(13, HIGH);dijalankan berapa kali?
Yang benar adalah:
-
✅
pinMode(13, OUTPUT);→ dijalankan 1 kali karena berada disetup(). -
✅
digitalWrite(13, HIGH);→ dijalankan terus-menerus karena berada diloop().
pinMode()
digitalWrite()
digitalRead()
analogRead()
delay()
pulseIn()
Serial.print()
Serial.println()
ada yang bingung ?
Apa arti pinMode()?Bentuk umumnya:pinMode(pin, mode);
- pin = nomor pin Arduino.
- mode = cara pin tersebut digunakan.
contoh pinmode(13,output); artinya "Arduino, saya ingin pin nomor 13 digunakan sebagai OUTPUT."contoh pinmode(2,input);artinya "arduino saya ingin pin 2 menerima data"
kalau digitalwrite() , bentuk umumnya digital(pin,nilai)contoh digitalwrire(13,high)artinya "berikan tegangan 5v pada pin 13)contoh digitalwrire(13,low)artinya "berikan tegangan 0v pada pin 13)
kenapa digitalwrite ?digital karena bekerja dengan sinyal digital (hanya high dan low )write karena menulis atau mengirim
Daftar fungsi arduino Fungsi Arti setup()Dijalankan sekali saat Arduino hidup loop()Dijalankan terus-menerus pinMode()Menentukan pin sebagai INPUT atau OUTPUT digitalWrite()Mengirim HIGH atau LOW ke pin digitalRead()Membaca HIGH atau LOW dari pin analogRead()Membaca nilai analog (0-1023) analogWrite()Mengirim sinyal PWM (0-255) delay()Menunggu dalam milidetik delayMicroseconds()Menunggu dalam mikrodetik pulseIn()Mengukur lama pulsa HIGH atau LOW Serial.begin()Mengaktifkan komunikasi serial Serial.print()Menampilkan tanpa pindah baris Serial.println()Menampilkan lalu pindah baris
Ringkasan
Kalau OUTPUT, Arduino mengirim.
Arduino ------> LED
menggunakan
digitalWrite()
Kalau INPUT, Arduino menerima.
Tombol ------> Arduino
menggunakan
digitalRead()Besok kita mulai materi tipe data, karena itu adalah fondasi pemrograman. Kita akan bahas:
intitu apa?- Kenapa
distancememakaifloat?- Kenapa
durationmemakailong?- Kenapa
trigPinsering ditulisconst int?
0 Comments:
Posting Komentar
Monggo sarannya