int relay = 2;
int pushbutton = 8;
int countthroughPushButton = 0;
void setup() {
// put your setup code here, to run once:
pinMode(pushbutton, INPUT_PULLUP);
pinMode(relay, OUTPUT);
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
//counter program----------------------------
int a = digitalRead(pushbutton);
if (a == LOW) {
countthroughPushButton++;
Serial.println(countthroughPushButton);
delay(500);
}
//control program----------------------------
//always ON i.e duty cycle = 100%
if (countthroughPushButton == 0) {
digitalWrite(relay, HIGH);
}
// ON: 7.5 min, OFF: 2.5 min, duty cycle = 75%
else if (countthroughPushButton == 1) {
digitalWrite(relay, HIGH);
delay(4500);
digitalWrite(relay, LOW);
delay(1500);
}
// ON: 5 min, OFF: 5 min, duty cycle = 50%
else if (countthroughPushButton == 2) {
digitalWrite(relay, HIGH);
delay(3000);
digitalWrite(relay, LOW);
delay(3000);
}
// ON: 2.5 min, OFF: 7.5 min, duty cycle = 25%
else if (countthroughPushButton == 3) {
digitalWrite(relay, HIGH);
delay(1500);
digitalWrite(relay, LOW);
delay(4500);
}
// ON: 1 min, OFF: 9 min, duty cycle = 10%
else if (countthroughPushButton == 4) {
digitalWrite(relay, HIGH);
delay(600);
digitalWrite(relay, LOW);
delay(5400);
}
// reset count
else {
countthroughPushButton = 0;
}
}