Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define START 2
- #define RELAY 3
- #define MAIN_ON 4
- #define HEAT_ON 5
- unsigned long timeOn = millis(), startTime = 1000;
- void setup() {
- Serial.begin(9600);
- Serial.println("START");
- pinMode(START, INPUT_PULLUP);
- pinMode(RELAY, OUTPUT);
- pinMode(MAIN_ON, OUTPUT);
- pinMode(HEAT_ON, OUTPUT);
- digitalWrite(HEAT_ON, LOW);
- digitalWrite(MAIN_ON, HIGH);
- }
- void loop() {
- if(digitalRead(START) == LOW){
- // Con il potenziometro imposti un tempo compreso tra 2 e 20 secondi
- timeOn = map(analogRead(A0), 0, 1023, 2000, 20000);
- delay(100); // Semplice antirimbalzo dello switch
- startTime = millis();
- Serial.print("Start delay timer of ");
- Serial.print(timeOn/1000);
- Serial.println(" seconds.");
- }
- if(millis() - startTime <= timeOn){
- digitalWrite(RELAY, HIGH);
- digitalWrite(HEAT_ON, HIGH);
- }
- else{
- digitalWrite(RELAY, LOW);
- digitalWrite(HEAT_ON, LOW);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement