Skip to main content

Membuat internal LED ESP32 berkedip (blinking)

Proyek kali ini kita akan coba membuat LED internal ESP32 berkedip (blinking) berdasarkan interval waktu yang akan kita set dalam script di Arduino IDE.

weekly project 01 - EL5057 Sensing System.


Pendahuluan

Dalam praktik pemrograman ESP32 untuk membuat LED internal berkedip, kita akan belajar memahami konsep dasar mikrokontroler, penggunaan Integrated Development Environment (IDE) seperti Arduino IDE, dan konfigurasi pin pada ESP32. Proses ini melibatkan penyiapan proyek, pengaturan pin, dan penulisan kode sederhana untuk mengontrol LED internal. Melalui langkah-langkah di dalam blog ini, kita bersama-sama akan belajar memahami tentang siklus looping program pada mikrokontroler void loop() {...}, memberikan dasar yang kuat untuk pengembangan proyek IoT lebih lanjut dengan ESP32.


Kebutuhan (requirements)

Kebutuhan perangkat keras yang harus disiapkan adalah seperti yang disajikan dalam tabel berikut.

4.png

Komputer

Komputer digunakan untuk membuat script code Arduino IDE yang akan diupload ke dalam Mikrokontroller ESP 32

 

1.png

 

Dev-board ESP3

Digunakan sebagai chipset yang akan diprogram.

2.png

Kabel data (micro usb)

Kabel micro usb digunakan untuk interface dari komputer ke dev-board.

3.png

USB Hub to type-c

Karena kita menggunakan MacBook Air dengan interface usb type-c, maka dibutuhkan USB untuk meaghubungkan Mikrokontroler denga laptop.


Wiring diagram

Wiring diagram untuk proyek kita kali ini cukup mudah, yaitu hanya mengkoneksikan port micro usb di dev-board ke komputer atau laptop melalui usb port.


Coding (menyiapkan program)

Buka aplikasi Android IDE, pilih board, dan tentukan port usb.


Buka code contoh dengan mengklik, menu example > basic > blink.

Compile dan upload code

project-01-uploading.png

Berikut adalah code program:


void setup() {
  // melakukan inisialisasi LED_BUILTIN sebagai output
  pinMode(LED_BUILTIN, OUTPUT);
}

// fungsi untuk looping 
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);  // menyalakan LED
  delay(1000);                      // menunggu 1000 milisecond
  digitalWrite(LED_BUILTIN, LOW);   // memattikan LED
  delay(1000);                      // menunggu 1000 milisecond
}

The result

weekly_project01-ezgif.com-optimize.gif


Penjelasan kode (how the code works)

bla.. bla...