Tutorial Lengkap ESP8266 NodeMCU. Menyalakan LED lewat Browser

Tutorial ESP 8266 12 E NodeMCU untuk Pemula – Menyalakan Lampu LED lewat Browser

Halo teman-teman!

Mau belajar mengirimkan data melalui Internet? Mengendalikan perangkat dari jarak jauh? Memantau informasi seperti suhu, kelembapan, kecukupan cahaya dan sebagainya secara jarak jauh?

Pelajari modul NodeMCU ESP8266 12 E.

Dalam video ini, kami akan mengendalikan sebuah lampu LED yang disambungkan ke NodeMCU melalui browser.

Video ini akan menjelaskan:

  1. komponen-komponen penting NodeMCU
  2. Bagaimana kita bisa memasang NodeMCU pada breadboard
  3. PIN-PIN penting pada NodeMCU yang perlu diperhatikan oleh pemula yang ingin mempelajari NodeMCU
  4. Dasar-dasar HyperText Markup Language (HTML), Bahasa yang digunakan untuk membuat website
  5. Cara menginstal board manager untuk ESP8266
  6. kode program
    Semoga bermanfaat!

Kode program:

Referensi Pembelajaran Markup HTML:
https://www.w3schools.com/html/html_intro.asp

GitHub ESP8266:
https://github.com/esp8266/arduino

Dokumentasi ESP8266 Web Server:
https://links2004.github.io/Arduino/d3/d58/class_e_s_p8266_web_server.html

Kode Program ESP8266 NodeMCU

// Protus Tanuhandaru
 // www.progresstech.co.id
 // www.karyaone.co.id
 include  // Library ESP8266
 include  // Library Web Server ESP8266
 const char* ssid = "Nama SSID"; // Variabel nama SSID
 const char* password = "Password SSID"; // Variable password SSID
 ESP8266WebServer server(80); // Deklarasi server dengan port 80
 uint8_t pinLED = D5; // D5 atau GPIO 14 sebagai PIN LED
 bool statusLED = LOW; // Nilai awal LED adalah 0
 void setup() {
   Serial.begin(115200); // Komunikasi serial Baud Rate 115200
   delay(100); 
   pinMode(pinLED, OUTPUT); // Membuat PIN LED sebagai output
 Serial.println("Menghubungi ");
   Serial.println(ssid);
   WiFi.begin(ssid, password); // Otentifikasi sambungan Wifi
 // Mengecek apakah Wifi tersambung
   while (WiFi.status() != WL_CONNECTED) {
     delay(1000);
     Serial.print(".");
   }
   Serial.println("");
   Serial.println("WiFi tersambung..!");
   Serial.print("Nomor IP: ");  Serial.println(WiFi.localIP()); // Nomor IP Modul
 // Status LED 
   server.on("/", tersambung);
   server.on("/ledmenyala", LED_menyala);
   server.on("/ledmati", LED_mati);
   server.onNotFound(tidak_ditemukan);
   server.begin();
   Serial.println("Memulai HTTP server");
 }
 // Fungsi untuk semua status LED
 void tersambung() {
   statusLED = LOW;
   server.send(200, "text/html", kirimHTML(statusLED)); 
 }
 void LED_menyala() {
   statusLED = HIGH;
   server.send(200, "text/html", kirimHTML(statusLED)); 
 }
 void LED_mati() {
   statusLED = LOW;
   server.send(200, "text/html", kirimHTML(statusLED)); 
 }
 void tidak_ditemukan(){
   server.send(404, "text/plain", "Halaman tidak ditemukan");
 }
 // Fungsi untuk mengemas kode HTML yang dikembalikan sebagai string
 String kirimHTML(uint8_t statusLED){
   String konten = "\n";
   konten +="\n";   konten +="LED Control
\n";   konten +="\n";
   konten +="\n";
   konten +="
Mengendalikan LED
\n";
 if(statusLED){
    konten +="
Status LED: ON
\n";
    konten +="\n";    konten +="OFF\n";    konten +="\n";}
   else
   {konten +="Status LED: OFF
\n";
    konten +="\n";    konten +="ON\n";    konten +="\n";
   }
 konten +="\n";
   konten +="\n";
   return konten;
 }
 void loop() {
   server.handleClient();
   if(statusLED)
   {
     digitalWrite(pinLED, HIGH);
   } else {
     digitalWrite(pinLED, LOW);
   }
 }
https://youtu.be/ZBqI_qHRWnI

Leave a Reply

Your email address will not be published. Required fields are marked *