#define LED 13 #define PB0 2 void setup() { pinMode(LED,OUTPUT); digitalWrite(LED,HIGH); pinMode(PB0,INPUT); } void loop() { unsigned long x,y,x2; int z; z=0; if(digitalRead(PB0)==LOW){ x=millis(); while(digitalRead(PB0)==LOW){ //長按 y=millis(); if(y-x>2000) {//按下超過 2 秒 z=1; break; } } if(z==1) digitalWrite(LED,LOW); } delay(100);//防彈跳 if(digitalRead(PB0)==LOW){ //第二次按 x2=millis(); delay(100);//防彈跳 if(x2-x<1000) //1秒內連按 digitalWrite(LED,HIGH); } }