#define BLYNK_TEMPLATE_ID "TMPL6iIAsOYok"
#define BLYNK_TEMPLATE_NAME "aek"
#define BLYNK_AUTH_TOKEN "XGLyh5Rc5IMf4_QH0QQ0VoMBia2RL4l1"
#define BLYNK_PRINT Serial
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
BLYNK_CONNECTED() {
//Blynk.syncAll();
Blynk.syncVirtual(V0);
}
int sw1=0,locksw1=0,sw2=0,iocksw2=0;
int vsw1=0,lockvsw1=0,vsw2=0,lockvsw2=0;
int led1=0,led2=0;
BLYNK_WRITE(V0){
vsw1 = param.asInt();
}
BLYNK_WRITE(V2){
vsw2 = param.asInt();
}
BlynkTimer timer1;
void send_data(){
Blynk.virtualWrite (V1, led1);
Blynk.virtualWrite (V3, led2);
}
void setup(){
Serial.begin(115200);
Blynk.begin(auth,ssid,pass);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
pinMode(18, INPUT_PULLUP);
pinMode(19, INPUT_PULLUP);
pinMode(12, INPUT_PULLUP);
timer1.setInterval(100L,send_data);
}
void loop() {
Blynk.run();
timer1.run();
if(sw1_click()==1) {
led1++;
if(led1>1){
led1=0;
}
}
if(sw2_click()==1){
led1++;
if(led1>1){
led2=0;
}
}
if(sw2_click()==1){
led2++;
if(led2>1){
led2=0;
}
}
digitalWrite(13,led1);
digitalWrite(12,led2);
delay(100);
}
bool sw1_click(){
sw1=digitalRead(18);
bool data_out=0;
if(sw1==0){
if(locksw1==0){
locksw1=1;
data_out=1;
}
}
else{
locksw1=0;
}
return data_out;
}
bool vsw1_click(){
bool data_out=0;
if(vsw1==0){
if(lockvsw1==0){
lockvsw1=1;
data_out=1;
}
}
else{
lockvsw1=0;
}
return data_out;
}
bool sw2_click(){
sw2=digitalRead(19);
bool data_out=0;
if(sw2==0){
if(lockvsw2==0){
lockvsw2=1;
data_out=1;
}
}
else{
lockvsw2=0;
}
return data_out;
}
bool vsw2_click(){
bool data_out=0;
if(sw2==0){
if(lockvsw2==0){
lockvsw2=1;
data_out=1;
}
}
else{
lockvsw2=0;
}
return data_out;
}