Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
uc-welt:gscheiduino:09-schwellwert [2016/01/05 13:45] – [Umsetzung] Hannes Jochriemuc-welt:gscheiduino:09-schwellwert [2024/02/06 09:43] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
-[[uc-welt:gscheiduino:08-analoginputs|← Kapitel 8: Analoge Eingänge]] | [[uc-welt:gscheiduino:00-uebersicht|↑ Übersicht]]  | [[uc-welt:gscheiduino:08-analoginputs|Kapitel 8Analoge Eingänge →]]+[[uc-welt:gscheiduino:08-analoginputs|← Kapitel 8: Analoge Eingänge]] | [[uc-welt:gscheiduino:00-uebersicht|↑ Übersicht]]  | [[uc-welt:gscheiduino:10-batterie|Kapitel 10Übungsaufgabe Batterietester →]]
  
 ====== Kapitel 9: Schwellwertschalter ====== ====== Kapitel 9: Schwellwertschalter ======
Zeile 36: Zeile 36:
 { {
   if(analogRead(ANALOGPIN)>613)   if(analogRead(ANALOGPIN)>613)
-  { +  { // Wenn der Wert >613 ist, wird folgender Code ausgeführt: 
-    digitalWrite(LED_ROT, HIGH); +    digitalWrite(LED_ROT, HIGH);  // rote LED an 
-    digitalWrite(LED_GRUEN, LOW);+    digitalWrite(LED_GRUEN, LOW); // gruene LED aus
   }   }
   else   else
-  { +  { // Ansonsten wird dieser Code hier ausgeführt: 
-    digitalWrite(LED_ROT, LOW); +    digitalWrite(LED_ROT, LOW);    // rote LED aus 
-    digitalWrite(LED_GRUEN, HIGH);+    digitalWrite(LED_GRUEN, HIGH); // gruene LED an
   }   }
 } }
 </file> </file>
 +
 +Ohne Vorwarnung haben wir hier noch eine weitere Funktion des if-Operanden gelernt:
 +Das if-then-else-Statement.
 +
 +Wie man in diesem Fall sieht, ist es ganz praktisch, wenn man zwischen zwei Codeblöcken entscheiden kann. Dies erreicht man durch **else**:
 +
 +<code c>
 +if(AUSRUCK)
 +{
 +  #CODE1#
 +}
 +else
 +{
 +  #CODE2#
 +}
 +</code>
 +
 +Kompliziert ist das nicht, es bedeutet lediglich: Wenn der Ausdruck **true** ist, wird CODE1 ausgeführt, sonst CODE2.
 +
 +====== Praktischer Test ======
 +
 +Nun können wir das oben aufgeführte Programm kompilieren und auf den Controller laden. Wenn das Poti auf Anschlag gegen den Uhrzeigersinn gedreht wurde, leuchtet nun die grüne LED auf. 
 +
 +Wenn wir nun das Poti langsam im Uhrzeigersinn drehen, erreichen wir den Punkt, an dem 3V am Analogeingang anliegen. An diesem Punkt wird die rote LED ein- und die grüne ausgeschaltet. 
 +
 +Drehen wir wieder zurück (gegen den Uhrzeigersinn) erlischt dir rote LED und die grüne fängt an zu leuchten.
 +
 +Wie gewohnt gibt es jetzt wieder eine Übungsaufgabe:
 +
 +[[uc-welt:gscheiduino:10-batterie|Kapitel 10: Übungsaufgabe Batterietester]]