Probleem met code

Software die niet past in bovenstaande onderwerpen
Berichten: 25
Geregistreerd: 15 Jan 2019, 16:28

Re: Probleem met code

Berichtdoor Bosch » 25 Jan 2019, 15:01

Verder dan deze versie met delay() kom ik niet, krijg millis() niet onder de knie.

Wilt u een stukje code schrijven met millis() bijvoorbeeld voor openen() ?
Zodat ik dat kan bestuderen.

Alvast mijn dank,


// Automatisch Kippenluik versie 25012019

int ledState5 = LOW;
int ledState6 = LOW;
int ledState7 = LOW;
int Luikstatus = 0;
int licht = (analogRead(A0));

void setup() {
Serial.begin(9600);
pinMode(A0, INPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
}

void openen() {
digitalWrite(5, ledState5 = HIGH);
Serial.println("openen is aan");
Serial.println("lichtsterkte ="),(licht);
Serial.println(licht);
Serial.println("Luikstatus");
Luikstatus = 1;
Serial.println(Luikstatus);
delay(3000);
digitalWrite(5, ledState5 = LOW);
meten();
}
void sluiten(){
digitalWrite(6, ledState6 = HIGH);
Serial.println("Sluiten is aan");
Serial.println("lichtsterkte =");
Serial.println(licht);
Serial.println("Luikstatus");
Luikstatus = 0;
Serial.println(Luikstatus);
delay(3000);
digitalWrite(6, ledState6 = LOW);
meten();
}
void meten(){
int licht = (analogRead(A0));
digitalWrite(7,ledState7 = HIGH );

Serial.println("lichtsterkte =");
Serial.println(licht);
delay(5000);
digitalWrite(7,ledState7 = LOW );
if
(licht <100 && Luikstatus == 1){Serial.println("Luik is open");}
if
(licht <100 && Luikstatus == 0){Serial.println("Luik openen"); openen();}

if
(licht >100 && Luikstatus == 0){Serial.println("Luik is dicht");}
if
(licht >100 && Luikstatus == 1){Serial.println("Luik sluiten"); sluiten();}
}
void loop(){meten();}

Advertisement

Vorige

Terug naar Overige Software

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 2 gasten