Hey,
Bei mir ist mal wieder ein Problem aufgetaucht und will nicht gehn.
Über einen IR Sensor wird ein Wert eingelesen. Beim Überschreiten einer gewissen Spannung (sagen wir 3,5V) soll eine LED eingeschaltet werden, allerdings erst nachdem der Wert länger als 1 Sekunde anliegt. Sollte sich die Spannung innerhalb dießer einen Sekunde unter 3,5V fallen soll die LED nicht an gehen. Eine delay Anwendung ist nicht möglich, da das restliche Programm weiter laufen muss.
Hier könnte die millis() Anwendung in betracht gezogen werden, da hierbei bei jedem durchlauf die vergangene Zeit in ms gemessen wird. Ist es möglich die millis Anwendung mit einer if Anweisung zu starten und zu stoppen.
Das Programm unten ist natürlich purer quatsch, damit wollte ich nur verdeutlichen was ich meine.
if (sensorValue >= 3,5){
millis} Hier soll gestartet werden
if (sensorValue <= 3,5){
millis == 0} Hier soll gestoppt werden
If (sensorValue >=3,5 && millis >= 1000){
digitalWrite (LED, HIGH)
wenn Jemand eine bessere Idee als die millis geschichte hat, nur her damit.
Schonmal Danke
Lesezeichen