สอบถามครับ arduino mega wifu

สอบถามครับ อยากทราบทำไมเงื่อนไขเป็นจริงแล้วตัวแปรไม่เข้าไปทำงานใน processถัดไปครับ โค้ดชุดการทำงานของใน processนี้นะครับขอยกตัวอย่างมา โหลด1ตัวนะครับ

int b1;
int mb1;
int st;
BLYNK_WRITE(V60) {
  
  if (param.asInt()==1) {
  st = 1;
  
   
  }
    if(param.asInt()==0){
   st = 0;
     
     
        } 
 }
 BLYNK_WRITE(V0) {
  
    b1 = param.asInt(); 

}
  void man1(){
if(b1 ==1&& st ==0){
        mb1 = 1;
        Serial.println("mb1=1");        

  }
 else{
   mb1 = 0;
   Serial.println("mb1=0"); 
 }

}
   
void con1(){
if(mb1 ==1 || vt == 1 ){
        led1.on();
        led1f.off();
        digitalWrite(relay1,0);
    }
    else{
        led1f.on();
        led1.off();
    digitalWrite(relay1,1);    
    }
    }
void setup() {
  timer.setInterval(2000L,man1);
   timer.setInterval(2000L,con1);
   Blynk.begin(auth, wifi, ssid, password, "blynk.iot-cm.com", 8080);
}

void loop() {
  Blynk.run();

}

ซึ่ง ชุดคำสั่งลักษณะนี้ผมลองเขียนโดยใช้ esp32 แล้วใช้งานได้ปกติครับ
คือพอเงื่นไขในชุดคำสั่ง man1 เป็นจริง ชุดคำสั่งใน con1 จะทำงานครับ แต่พอมาใช้งานใน arduino mega wifi ปรากฎว่าเมื่อเงื่อนไขในชุดคำสั่
ง man1 เป็นจริงชุดคำสั่งของ con1 กลับไม่ทำงานลองปริ้นค่า mb1แล้วไม่ขึ้นครับ เป็นเพราะอะไรครับ ขอบคุณมากๆครับ

ลองเช็คดูรึยังว่า con1 มันรันทุกๆ 2 วินาที

เช็คไงครับ ผมเคยแต่ลองให้ปริ้นชุดตัวแปร mb1ในชุดคำสั่ง con1 ปรากฎว่าไม่ออกครับ

สั่งปริ้นดูแล้วนะครับปรากฎว่า ชุดคำสั่ง con1ไม่ทำงานจริงครับ เป็นเพราะอะไรเหรอครับ

คำตอบอยู่ในนี้ครับ