-
-
Also, vielleicht sollte ich mehr ins Detail gehen. Ich bin gerade dabei mir eine Regelung für meinen Humidor zu bauen. Diese soll in Abständen von etwa 5 Minuten prüfen wie hoch die Luftfeuchte ist.
Wenn die Luftfeuchte zu hoch, dann soll die Luft umgewälzt werden mit Propeller 2.
Wenn die Luftfeuchte zu gering, dann soll feuchte Luft aus dem Befeuchter gesaugt werden, mit Propeller 1.
Also habe ich 2 Propeller und einen Sensor.
Momentan habe ich es wie folgt: Abfrage der Luftfeuchte jede Sekunde.
Wenn unter 70% dann Propeller 1 an.
Wenn über 75% dann mit Propeller 2 umwälzen.
Nun ist es so das der ganze Vorgang recht träge ist (das befeuchten der Luft und die Auswirkungen). Eigentlich muss der nicht jede Sekunde prüfen. Ich wollte mal ein wenig damit spielen, was passiert wenn man den Prozess etwas träger gestaltet. Sowohl das Messen, als auch die Lüfter.
Und wenn ich das richtig verstanden habe, können Interrupts doch auch von innen heraus gesteuert werden, oder?
Ich dachte da an eine Art Unterprogramm, welches den Propeller 1 oder 2 x-sekunden lang aktiviert. Dabei möchte ich den µC aber noch anders nutzen (zum prüfen des Sensors und entscheiden was getan werden soll)
Wie genau das aussehen soll, weiß ich noch nicht, das wird mein Testaufbau zeigen, denn ich fürchte Luft zu befeuchten ist hier einfacher als Luft zu entfeuchten.
Im Prinzip geht es mir darum einen main-zyklus zu haben, welcher diverse andere "Unterprogramme" (Threads?) startet, die auch wiederum Unterbrechungen von mehreren Minuten beinhalten können, ohne den main-zyklus zu stoppen.
Ähnlich dem Multithreading unter Windows mit nem single-Core.
Gruß, Andreas
---------EDIT--------
@Stone
Ja, genau mit Timern, ich dachte nur gerade das die auch durch interrupts ausgelöst werden. Oder ich würfle da was durcheinander.
Ein Timer müsste doch unabhängig von der Main laufen, oder?
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen