Hallo,
ich möchte für ein Projekt folgendes Software technich am Arduino (nano)
umsetzen.
Der Arduino soll eine Photodiode auslesen und wenn der Wert eine
gewisse schwelle unterschreitet einen Transistor durchschalten, der
daraufhin ein Licht ansteuert.
Wenn länger als nach X Minuten der Grenzwert nicht unterschritten wird,
soll dann der Transistor wieder zurück schalten.
soweit so gut.
Bisher sieht das ganze wie folgt aus:
1 | int ledband = 2;
|
2 | void setup(){
|
3 | pinMode(ledband, OUTPUT);
|
4 | digitalWrite(ledband, HIGH);
|
5 | Serial.begin(9600); }
|
6 | void loop(){
|
7 | int val = analogRead(7);
|
8 | Serial.println(val);
|
9 | if(val <500){
|
10 | digitalWrite(ledband,LOW);
|
11 | delay(30000);}
|
12 | else{
|
13 | digitalWrite(ledband,HIGH);}
|
Nun soweit ist das auch wunderbar. allerdings soll nun noch folgendes
dazu kommen.
wärend dem Delay (welches hier nur aus testzwecken auf 30sek. steht)
soll dauerhaft der Wert an A7 erfragt werden, wenn dieser erneut denn
wert unterschreitet soll von diesem Punkt an das ganze von 0 anfangen.
Es geht sich um sehr kurze Helle lichtimpulse.
ergo.
Blitz.
Wert unter 500, Delay fängt an von 30sek runter zu zählen
nach bsp. 10 sekunden ein erneuter blitz,
und er soll dann eben ignorieren wo er war, und von vorne die 30sek
runter zählen.
ICh find dazu leider auch nach googeln keine Funktion. Gibt es da was
einfaches, was auch ich als Anfänger verstehe :D?
Danke im vorraus,
Gruß Carsten