ตัวอย่างการเขียนใช้งาน ปุ่ม Button Blynk

แก้ไขหน่อยครับๆ ให้อ้างอิงจากฟังก์ชันนี้นะ

timer.setInterval(1000L, countCharger); คำสั่งนี้จะเข้าไปทำงานในฟังก์ชันนี้ ทุกๆ 1 วินาที

ตัวอย่างโดยประมาณที่จะหน่วง 5 วิ

int x_time = 0;
bool _x_time = false;
BLYNK_WRITE(V1)
{
    int pinValue = param.asInt();     
if ( pinValue == 1){
     x_time = 0;
    _x_time = true;
pump = HIGH; //สั่ง เปิด ปั๊ม
}else{
      _x_time = false;
}

}

void countCharger(){

if(_x_time == true){ // ถ้ามีการกดปุ่มปั๊ม 1 ครั้ง 
 x_time++; // นับไปครั้งละ 1 วิ แต่ยังจะไม่เข้า loop 5 วิ เพราะยังนับไม่ถึง
  if (x_time > 5) { //นับไปจนกว่า x_time มากกว่า 5
pump = LOW; //สั่ง ปิด ปั๊ม
Blynk.virtualWrite(V1, LOW); // คืนค่าปุ๊มกดปั๊มให้ Off
_x_time = false;
}
}

}

ผมเขียนคร่าวๆ นะครับลองไปเติมต่อเอง