/*=====================================================================
Template Program Latihan ESP32 dan Blynk Komunikasi Data
Dibuat Oleh : Irfan Mahrubi
=======================================================================*/
//FIRMWARE CONFIGURATION -> Copy Paste dari website Blynk ==============
#define BLYNK_TEMPLATE_ID "TMPL63jZ4Jq9y"
#define BLYNK_TEMPLATE_NAME "XII 8"
#define BLYNK_AUTH_TOKEN "n8h6gaACXN0L6ZJLz08M_sNgj1Q33WJD"
//======================================================================
//Untuk menampilkan serial monitor Blynk ===============================
#define BLYNK_PRINT Serial
//======================================================================
//Library yang digunakan ===============================================
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
//======================================================================
//Token yang didapat dari bagian FIRMWARE CONFIGURATION ================
char auth[] = BLYNK_AUTH_TOKEN;
//======================================================================
//Akun wifi yang digunakan =============================================
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
//======================================================================
//Inisialisasi nilai konstan / fixed variables =========================
#define pin_LED3 2 //pin led3
#define pin_LED4 14 //pin led4
//======================================================================
//Inisialisasai variabel yang digunakan ================================
int data = 0;
//======================================================================
//Menambahkan fungsi blynk timer =======================================
BlynkTimer timer;
//======================================================================
//Bagian menerima data dari blynk ke ESP ===============================
BLYNK_WRITE(V0){
int status_LED = param.asInt();
if(status_LED){
digitalWrite(pin_LED3,HIGH);
Serial.println("DITEKAN");
}
else{
digitalWrite(pin_LED3,LOW);
Serial.println("TIDAK DITEKAN");
}
}
//=======================================================================
//Bagian mengirim data dari ESP ke Blynk ================================
void sendData(){
if(data < 100){
data++;
}
else{
data = 0;
}
Blynk.virtualWrite(V1, data);
Serial.println(data);
}
//=======================================================================
//void setup ============================================================
void setup()
{
//Mengatur mode pin sebagai input atau output =========================
pinMode(pin_LED3,OUTPUT);
//=====================================================================
//Mengatur alamat serial monitor ======================================
Serial.begin(115200);
//=====================================================================
//Fungsi blynk mengatur firmware configuration dan akun wifi ==========
Blynk.begin(auth, ssid, pass);
//=====================================================================
//sinkronisasi pin virtual blynk dari aplikasi ========================
Blynk.syncVirtual(V0);
Blynk.syncVirtual(V1);
//=====================================================================
//Fungsi timer blynk mengatur waktu menjalankan fungsi didalamnya =====
//Satuan waktu adalah detik ===========================================
timer.setInterval(1000L, sendData);
//=====================================================================
}
//=======================================================================
//void loop =============================================================
void loop()
{
//Menjalankan fungsi blynk ============================================
Blynk.run();
//=====================================================================
//Menjalankan fungsi timer blynk ======================================
timer.run();
//=====================================================================
}
//=======================================================================
esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK