Menyalakan LED dengan ESP32: Belajar Mikrokontroler (Lesson 1 - Bagian 1)
- Zen System

- Jun 15
- 4 min read
Apa itu ESP32?
ESP32 adalah mikrokontroler System on Chip (SoC) berbiaya murah yang sudah tertanam Processor, Memory (RAM/ROM), Input/Output dalam satu board berukuran kecil. ESP32 ini juga sudah memiliki konektivitas Bluetooth dan WiFi untuk jaringan komunikasinya. ESP32 ini cocok digunakan pada penerapan Internet of Things (IoT), Automation, hingga pekerjaan kompleks skala industri.
Jika kalian pernah membayangkan bagaimana sebuah mesin kopi yang dilengkapi dengan beberapa tombol pilihan seperti, Kopi Hitam, Kopi Susu, Cappuccino dan Latte, dapat membuat kopi sesuai pilihan tersebut, jawabannya adalah menggunakan mikrokontroler. Terlepas dari sebuah mesin kopi itu memiliki bagian mesin mekanis penggiling kopi, tempat menyimpan air dan susu, pemanas air, adalah mikrokontroler yang mengatur semua bagaimana alat mekanis itu harus bekerja. Intinya, mikrokontroler adalah otak dari perangkat tersebut.
Jika kalian ingin belajar bagaimana memprogram mikrokontroler sehingga dapat bekerja sesuai dengan yang kalian inginkan. Blog ini didedikasikan untuk membantu memberikan pengetahuan tersebut. Silahkan mencoba.
Tutorial 1: Menyalakan Lampu LED dengan ESP32
Untuk mengerti lebih jelas lagi mengenai kemampuan ESP32 ini, mari kita coba tutorial sederhana memprogram ESP32 untuk menyalakan sebuah lampu led.
Material yang diperlukan:
Chip ESP32 & kabel data

Led

Resistor 220 ohm

Kabel serabut AWG26
Skema koneksi
Lakukan koneksi material diatas seperti gambar dibawah ini:


Melakukan koneksi dengan metode soldering dapat menghindari error karena gagal koneksi.
Coding
Untuk memasukkan perintah ke ESP32 dapat dilakukan dengan beberapa software. Dalam tutorial ini, kita akan menggunakan Arduino IDE. Software dapat di download pada link ini:

Setelah download, install aplikasi tersebut. Setelah ter-install, buka aplikasi tersebut.
Pada kondisi awal, board mikrokontroler yang terpilih adalah "Arduino". Karena pada tutorial ini kita menggunakan board ESP32, maka kita harus menambah library board ESP32 ke dalam Arduino IDE ini.
Pilih menu File -> Preferences

Scroll kebawah, lalu cari bagian "Additional board manager URLs:", masukkan link dibawah ini:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.jsonKemudian, click OK. Library board ESP32 akan otomatis ditambahkan.

Setelah library board ESP32 ditambahkan, pilih board ESP32 dan kita dapat memulai pemrograman.


Setelah memilih board, saatnya untuk memasukkan perintah ke mikrokontroler untuk menyalakan led yang sudah kita rancang sebelumnya. Kegiatan membuat perintah ini kita sebut coding. Masukkan perintah seperti dibawah ini:
void setup() {
// put your setup code here, to run once:
pinMode(4, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(4, HIGH);
}Untuk saat ini, kalian tidak perlu mengerti seluruh arti perintah tersebut diatas.
Setelah selesai melakukan coding, kita akan upload perintah tersebut ke board ESP32. Koneksikan ESP32 ke laptop/PC menggunakan kabel data, lalu pilih Upload.


Setelah menekan tombol Upload. Jika pada window output akan tertulis "connecting...". Tekan tombol "BOOT" yang ada pada ESP32 beberapa detik, setelah itu lepaskan. Maka proses uploading baru akan terjadi. (Ada versi ESP32 yang memerlukan tindakan ini, ada pula yang tidak perlu).

Hasil

Seketika setelah code di upload, maka lampu led akan menyala.
Penjelasan Kode Program
Dalam melakukan coding, ESP32 memiliki 2 function mutlak yaitu setup() dan loop(). Setiap function dapat diisi kode-kode perintah sesuai yang kita inginkan yang akan dieksekusi oleh mikrokontroler secara berurutan (sequential).
Untuk function setup() akan dieksekusi satu kali yaitu setiap mikrokontroler pertama kali dinyalakan. Dan function loop() akan selalu dieksekusi berulang-ulang setelah function setup() selesai dieksekusi.
void setup() {
// put your setup code here, to run once:
pinMode(4, OUTPUT);
}Kode perintah didalam function setup() ada 1 perintah yaitu pinMode(4, OUTPUT), yang berarti set pin nomor 4 menjadi mode output.
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(4, HIGH);
}Kode perintah didalam function loop() ada 1 perintah yaitu digitalWrite(4, HIGH), yang berarti alirkan voltase listrik ke pin 4. Sehingga led yang terhubung ke pin 4 akan menyala secara otomatis.
Tutorial 2: Membuat Lampu LED berkedip
Coding
void setup() {
// put your setup code here, to run once:
pinMode(4, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(4, HIGH);
delay(500);
digitalWrite(4, LOW);
delay(500);
}Untuk menambah pemahaman kalian, mari kita coba tambahkan kode yang ditebalkan untuk membuat lampu led tersebut berkedip. Setelah tambahkan, upload kode ke ESP32.
Hasil
Penjelasan Kode Program
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(4, HIGH);
delay(500);
digitalWrite(4, LOW);
delay(500);
}Pada kode program terdapat tambahan perintah delay(500) dan digitalWrite(4, LOW). Perintah delay(500) berarti meminta mikrokontroler untuk berhenti sejenak selama 500 milidetik.
Sedangkan untuk perintah digitalWrite(4, LOW) berarti stop alirkan voltase listrik ke pin 4. Kesimpulannya jika perintah tersebut adalah HIGH berarti alirkan voltase sedangkan LOW berarti stop alirkan voltase.
Tantangan
Setelah kalian sudah mencoba tutorial diatas dan berhasil mencobanya. Kalian diberikan tantangan lebih lanjut yaitu:
Coba menyalakan 3 lampu led berwarna merah, kuning, dan hijau.
Coba kalian simulasikan lampu tersebut menjadi lampu lalu lintas jalan raya. Warna merah menyala selama 10 detik, lalu lampu hijau menyala selama 7 detik dan lampu kuning menyala selama 2 detik.
Petunjuk: Gunakan pin 5 dan 2 untuk lampu led hijau dan kuning.
Bagi yang ingin mengetahui cara-caranya. Nantikan tutorial selanjutnya ya.
Comments