ich war hier: ArduinoBeispielSensorDisplayInterrupt

Version [93166]

Dies ist eine alte Version von ArduinoBeispielSensorDisplayInterrupt erstellt von ManuelLiebaug am 2019-01-17 16:21:36.

 

Arduino-Beispielanwendung


In diesem Beispielprojekt sollen mit einem Arduino die Messwerte eines DHT11 Temperatur- und Luftfeuchtigkeitssensors ausgelesen werden und auf einem LC-Display
angezeigt werden. Je nachdem in welchem Bereich sich die Temperatur befindet (<20°C / 20-25°C / >25°C) leuchtet eine von 3 LEDs (blau/grün/rot). Auf dem Display
wird außerdem eine Digitaluhr in der Form 00:00:00 (Stunden:Minuten:Sekunden) angezeigt. Durch das Drücken eines Buttons wird eine Interrupt-Routine ausgelöst,
die das Einstellen der aktuellen Uhrzeit mithilfe eines 4x4-Tastenmoduls erlaubt. Die Messwerte auf dem Display und die Uhrzeit werden im Sekundentakt
aktualisiert.

Interrupt bedeutet, dass das Programm sofort unterbrochen wird und stattdessen eine Interrupt-Routine ausgeführt wird. Nach Beendigung der Interrupt-Routine
kehrt das Programm wieder zu der Stelle zurück an der es unterbrochen wurde.

Der verwendete DHT11 ist ein einfacher und kostengünstiger Sensor zur Messung von Temperatur und Luftfeuchtigkeit. In meinem Fall ist er auf einer kleinen
Platine verlötet und wird über 3 Pins verbunden: GND, 5V und ein Pin zum digitalen Auslesen der Messwerte.
Als Display wird ein LCD-Modul 1602 mit 2 Zeilen und 16 Feldern pro Zeile verwendet. Der Kontrast des Displays lässt sich mit einem Potentiometer einstellen.



Die analogen Pins des Arduino können ebenfalls als digitale Pins verwendet werden. Das wird in diesem Fall angewendet, weil die digitalen Pins sonst nicht
ausreichen würden. Die analogen Pins A0 bis A5 können einfach als digitale Pins 14 bis 19 adressiert werden.

Der Button zur Auslösung des Interrupts wird über einen 10k Ohm Widerstand mit 5V verbunden. Der Widerstand ist ein Pull-Up-Widerstand, das bedeutet wenn der
Button nicht gedrückt ist liegt am digitalen Eingang der Wert HIGH an.

In meinem Programm verwende ich Bibliotheken für den Sensor, das Display und das Tastenfeld. Diese stehen nachfolgend zum Download:


Der Quellcode sieht wie folgt aus:
Diese Seite wurde noch nicht kommentiert.
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki