GPIO Schnittstelle: In 15 Minuten mit C++ die Temperatur des Raspberry Pi ausgeben – Teil 4

Bevor wir auf die GPIO Schnittstelle des Pi zugreifen, geben wir erst einmal die Temperatur aus.

Der Raspi speichert die Systemtemperatur in der Datei /sys/class/thermal/thermal_zone*/temp. Wenn wir also die Datei mit dem Systemkommando cat ausgeben, haben wir die Temperatur ausgelesen.
Z.b.:


Dafür erstellen wir uns zu erst eine neue Klasse Temperatur mit der Methode int ausgeben(). So können wir auch sehen, wie mehrere Klassen zusammenspielen. Also eine Temperatur.h Datei mit der Definition

und eine Temperatur.cpp Klasse mit der Implementierung:

Die ausgeben Methode ruft einfach ein System Kommando auf, schreibt das Ergebnis in eine eigene temp.txt Datei und gibt das Ergebniss auf der Konsole aus. Jetzt brauchen wir noch ein kurzes Testprogramm mit Namen programm-4.cpp, das die Temperatur Klasse instanziiert und die Methode ausführt:

Wie werden nun die beiden Programme compiliert?

Wir compilieren jetzt immer mit -Wall um möglichst viele Warnungen zu sehen und mit -ansi um den Standard auszugeben. Mit -o geben wir den Namen des outputfile an. Also in diesem Fall start-prg-4. Weitere Parameter können auf den man Pages nachgelesen werden.

Nun können wir das compilierte Programm ausführen mit ./start-prg-4 und das Ergebnis, ist die Temperatur.

Die Temperatur muss noch durch 1000 geteilt werden. Wie geht das? Hausaufgabe! Ergebnis gern als Kommentar oder Pull Request.

Den ganzen Quellcode gibt es kostenlos auf GitHub zum download.

Jetzt will ich noch für diese Kommandozeile ein Makefile schreiben, das automatisch ausgeführt wir wenn man make eingibt.

Ein make clean löscht übrigens das erzeugt Programm wieder. Und der Zeile 20 und 24 muss ein TAB am Anfang sein, und keine Leerzeichen!
So dann mal weiter zum nächsten Teil …