Instructions

Linker Kit Base Set Raspberry Pi
Veröffentlicht: 09.10.2018 Copyright by Maker Factory 29
10. DER TEMPERATURSENSOR
In diesem Beispiel kombinieren wir den Temperatursensor mit der Digitalanzeige um uns die aktuelle
Raumtemperatur anzeigen zulassen. Auch diese Datei muss im selben Verzeichnis wie die Konguraons-
datei der Digitalanzeige gespeichert werden. Die Konguraonsdatei muss jedoch auch angepasst wer-
den, die angepasste Version nden Sie ab der nächsten Seite.
Der Temperatursensor wird an Analog-Pin 0 und Der Display an Digital-Pin 4 angeschlossen
Bitte kopieren sie den folgenden Code vollständig und fügen Sie ihn in Ihr Skript ein.
Speichern Sie die Datei zusammen mit der noch folgenden angepassten Konguraonsdatei in einem
extra Ordner z.B. unter /Documents/Temperature unter dem Namen Temp.py
import me
import RPi.GPIO as GPIO
import tm1637
import spidev
temp = 0
spi = spidev.SpiDev()
spi.open(0,0)
spi.max_speed_hz = 1350000
def readadc(adcnum):
# SPI-Daten auslesen
r = spi.xfer2([1,8+adcnum <<4,0])
adcout = ((r[1] &3) <<8)+r[2]
return adcout
while True:
value = readadc(temp)
volts = (value * 3.3) / 1024
temperature_C = (volts - 0.5) * 100 #Temperatur berechnen
temperature_C = '%.1f' % temperature_C # Temperatur runden eine Stelle nach dem Komma
print("Temperatur: " + temperature_C + " C") # Temperatur ausgeben
temp1 = temperature_C[-1:] # letzte Zahl
temp2 = temperature_C[-3:-2] # vorletzte Zahl
temp3 = temperature_C[-4:-3] # erste Zahl
Display = tm1637.TM1637(4,5,tm1637.BRIGHT_TYPICAL) #Display vorbereiten
Display.Clear()
Display.SetBrightnes(7)
temp2 = Display.coding(int(temp2)) + 128 # füge das Komma hinzu
if temperature_C < str(0):
Display.Show([0x40, Display.coding(int(temp3)), temp2, Display.coding(int(temp1))]) #Minusgrade anzeigen
else:
Display.Show([Display.coding(int(temp3)), temp2, Display.coding(int(temp1)), 0x39]) #Temperatur anzeigen
me.sleep(3)