top of page

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

  • Writer: Zen System
    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:

  1. Chip ESP32 & kabel data

  2. Led

  3. Resistor 220 ohm

  4. Kabel serabut AWG26


Skema koneksi

Lakukan koneksi material diatas seperti gambar dibawah ini:


Pin (+) pada led memiliki kaki lebih panjang.
Pin (+) pada led memiliki kaki lebih panjang.
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.json

Kemudian, click OK. Library board ESP32 akan otomatis ditambahkan.


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

Ubah board mikrokontroler dari Arduino ke ESP32
Ubah board mikrokontroler dari Arduino ke ESP32

Pilih board dengan nama "DOIT ESP32 DEVKIT V1"
Pilih board dengan nama "DOIT ESP32 DEVKIT V1"

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.

Koneksikan ESP32 ke laptop menggunakan kabel data.
Koneksikan ESP32 ke laptop menggunakan kabel data.
Upload code dengan menekan lambang anak panah kanan.
Upload code dengan menekan lambang anak panah kanan.
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).
Jika upload berhasil, maka tampilan window output akan seperti diatas.
Jika upload berhasil, maka tampilan window output akan seperti diatas.

Hasil

Lampu led merah menyala oleh mikrokontroler.
Lampu led merah menyala oleh mikrokontroler.

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:

  1. Coba menyalakan 3 lampu led berwarna merah, kuning, dan hijau.

  2. 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


zen audio logo

Est. Since 2016

bottom of page