PROGRAMMING DASAR ARDUINO
PROGRAMMING DASAR ARDUINO
PENGERTIAN PROGRAMMING
Programming (pemrograman) adalah proses menulis, menguji, dan menjalankan serangkaian instruksi (kode) agar komputer atau perangkat elektronik dapat melakukan tugas tertentu sesuai dengan keinginan manusia.
Programming itu seperti memberi perintah langkah demi langkah kedalam komputer.
Contoh perintah manusia:
“Jika suhu lebih dari 30°C, nyalakan kipas.”
Dalam programming, perintah itu ditulis dengan bahasa pemrograman agar bisa dipahami mesin.
Programming digunakan untuk:
Membuat aplikasi (Android, Windows, web)
Mengendalikan mikrokontroler (Arduino, ESP32, PLC)
Mengolah data
Membuat game
Mengotomatisasi pekerjaan
Mengontrol sensor & aktuator (relay, motor, LED)
BAHASA PEMOGRAMAN
Beberapa bahasa yang sering digunakan:
C / C++ → Arduino, sistem embedded
Python → data, AI, otomatisasi
JavaScript → website
Java → Android
PHP → web backend
Ladder Diagram → PLC industri
dan lain-lain
PENGERTIAN ARDUINO
Arduino adalah platform elektronik open-source yang digunakan untuk membuat dan mengendalikan rangkaian elektronik dengan bantuan mikrokontroler yang dapat diprogram menggunakan bahasa pemrograman sederhana (mirip C/C++).
Arduino itu seperti “otak kecil” pada rangkaian elektronik.
Kita bisa memprogram Arduino agar:
membaca sensor
mengolah data
mengendalikan LED, motor, relay, LCD, OLED, dan perangkat lain
KOMPONEN UTAMA ARDUINO
Board Arduino
Contoh: Arduino Uno, Nano, Mega, ESP32 (keluarga Arduino)
Mikrokontroler
Misalnya ATmega328P (Arduino Uno)
Arduino IDE
Software untuk menulis dan mengupload program ke board
Bahasa pemrograman Arduino
Berbasis C/C++
FUNGSI ARDUINO
Arduino digunakan untuk:
Sistem otomatisasi
Robotik
Alat ukur digital
IoT (Internet of Things)
Kontrol suhu, pH, kelembaban
Sistem hidroponik otomatis
CARA KERJA ARDUINO
Program (sketch) ditulis di Arduino IDE
Program di-upload ke board Arduino
Arduino:
Membaca input (sensor, tombol)
Memproses sesuai program
Menghasilkan output (LED, motor, display)
CONTOH PEMOGRAMAN SEDERHANA ARDUINO
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
Program di atas membuat LED berkedip setiap 1 detik.
MENGENAL PEMOGRAMAN C++ DALAM ARDUINO
STRUKTUR DASAR PROGRAM ARDUINO
void setup() {
// dijalankan 1 kali saat Arduino menyala
}
void loop() {
// dijalankan berulang-ulang terus menerus
}
void → penanda sebuah fungsi
setup() → inisialisasi (pin, serial, sensor)
loop() → logika utama program
KOMENTAR (DALAM PENJELASAN KODE)
// komentar satu baris
/* komentar
lebih dari satu baris */
VARIABEL DAN TIPE DATA
Variabel digunakan untuk menyimpan data sementara.
Tipe data = Jenis data yang disimpan dalam variabel
INPUT DAN OUTPUT (I/O)
Mengatur Pin => untuk mendefenisikan kegunaan pin (input atau output)
pinMode(13, OUTPUT);
pinMode(2, INPUT);
Output (menyalakan LED)
digitalWrite(13, HIGH); // ON
digitalWrite(13, LOW); // OFF
Input (membaca tombol)
int tombol = digitalRead(2);
ANALOG INPUT
Mengatur Pin => untuk mendefenisikan kegunaan pin (input)
pinMode(A0, INPUT);
pinMode(A1, INPUT);
Input (membaca sensor)
int sensor = analogRead(A0);
int sensor1 = analogRead(A1);
PWM (~ )
PWM (Pulse Width Modulation) adalah teknik untuk mengatur daya atau tegangan semu dengan cara menghidup–matikan sinyal digital sangat cepat.
Kegunaanya:
untuk mengatur kecerahan LED
untuk mengatur kecepatan motor DC
dll
contoh pemograman PWM untuk mengatur kecerahan LED
int led = 9; // pin PWM (~)
void setup() {
pinMode(led, OUTPUT);
}
void loop() {
analogWrite(led, 128); // kecerahan sedang, nilai PWM Arduino 0-255
}
JEDA
Kegunaanya:
untuk mengatur jeda perulangan pembacaan sensor
untuk memberi istirahat (jeda) pada pembacaan program arduino
dll
contoh pemograman PWM untuk mengatur kecerahan LED
delay (1000); // setara dengan 1 detik, 1 : 1000
delayMicroseconds(1000000) // setara dengan 1 detik, 1 : 1000000
OPERATOR DASAR
Aritmatika
+ - * / %
Penjumlahan : +
Pengurangan : -
Perkalian : *
Pembagian : /
Sisa Pembagian : %
Perbandingan
== != > < >= <=
Sama dengan : ==
Pertidaksamaan : !=
besar dari : >
kecil dari : <
besar sama : >=
kecil sama : <=
Logika
&& || !
&& : dan
|| : atau
! : tidak
Percabangan (if-else)
if (suhu > 30) {
digitalWrite(13, HIGH);
} else {
digitalWrite(13, LOW);
}
Perulangan (for)
for (int i = 0; i < 5; i++) {
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
delay(500);
}
Perulangan (while)
while (digitalRead(2) == HIGH) {
digitalWrite(13, HIGH);
}
Fungsi (function)
Digunakan agar program rapi & modular.
void ledOn() {
digitalWrite(13, HIGH);
}
Pemanggilan:
ledOn();
Serial Monitor (Debugging)
Untuk melihat data di komputer.
Serial.begin(9600);
Serial.println("Hello Arduino");
Serial.println(suhu);
CONTOH PEMOGRAMAN LENGKAP (LED + TOMBOL)
int tombol = 2;
int led = 13;
void setup() {
pinMode(tombol, INPUT);
pinMode(led, OUTPUT);
}
void loop() {
if (digitalRead(tombol) == HIGH) {
digitalWrite(led, HIGH);
} else {
digitalWrite(led, LOW);
}
}
SOFTWARE UPLOAD PEMOGRAMAN ARDUINO ATAUPUN ESP
ArduinoIDE
Driver CH34x
Kedua software dan driver tersebut dapat di download secara gratis pada browser.