byte relay = 13;
byte button = 9;
byte led = 10;
unsigned long lastmillis = 0;
void setup() {
pinMode(relay, OUTPUT);
pinMode(button, INPUT);
pinMode(led, OUTPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(led, HIGH);
digitalWrite(led, LOW)
if(digitalRead(button) == HIGH)
{
lastmillis = millis();
Serial.println(millis());
digitalWrite(relay,HIGH);
}
if(millis() > lastmillis + 10000){
digitalWrite(relay,LOW);}
}
/*unsigned long currentTime;
unsigned long eventInterval = 500;
unsigned long previousTime = 0;
unsigned long lastStateChange = 0;
const int relayTime = 5 * 1000;
const byte relayPIN = 13;
const byte ledPIN = 12;
const byte buttonPIN = 9;
bool ledState = true;
int button;
void setup() {
Serial.begin(9600);
pinMode(relayPIN, OUTPUT);
pinMode(ledPIN, OUTPUT);
pinMode(buttonPIN, INPUT);
digitalWrite(ledPIN, ledState);
}
void loop() {
currentTime = millis();
button = LOW;
button = digitalRead(buttonPIN);
Serial.println(button);
if(button == HIGH) {
digitalWrite(relayPIN, HIGH);
lastStateChange = millis();
}
if(millis() > lastStateChange + relayTime) {
digitalWrite(relayPIN, LOW);
}
if (currentTime - previousTime >= eventInterval) {
ledState = !ledState;
digitalWrite(ledPIN, ledState);
previousTime = currentTime;
}
}*/