ich braeuchte mal eure Hilfe. Um es vorweg zunehmen, mein Wissen um Python und Co
ist nicht weltbewegend. Ich habe den folgenden Code zusammengestellt. Er funktioniert so auch,
obwohl es bestimmt professioneller geht. Nun mein Problem. Wie kann ich den Wert der mit
" print("%1.2f" % delta ) "
ausgegeben wird, extra noch in eine txt oder csv Datei schreiben?
Ich habe dieses Forum schon durchsucht und verschieden Sachen gefunden, aber ich bekomme es nicht
in die Reihe das fuer michzu nutzen.
Ich bin fuer jede Hilfe dankbar.
Code: Alles auswählen
#!/usr/bin/python
import RPi.GPIO as GPIO
import time
import datetime
# Variablen initialisieren
Tic = 0 # Zaehler
stopp = 0 # Zeitpunkt steigende Flanke
start = 0 # Zeitpunkt fallende Flanke
delta = 0 # Zeitdifferenz zwischen start und stopp
# GPIO initialisieren
GPIO.setmode(GPIO.BCM)
GPIO.setup(21, GPIO.IN)
# internen Pullup-Widerstand aktivieren.
GPIO.setup(21, GPIO.IN, pull_up_down = GPIO.PUD_UP)
# Callback-Funktion fuer beide Flanken
def measure(channel):
global start
global stopp
global delta
if GPIO.input(21) == 0: # fallende Flanke, Startzeit speichern
start = time.time()
else: # steigende Flanke, Endezeit speichern
stopp = time.time()
delta = stopp - start # Zeitdifferenz berechnen
print("%1.2f" % delta )
# Interrupt fuer beide Flanken aktivieren
GPIO.add_event_detect(21, GPIO.BOTH, callback=measure, bouncetime=50)#bouncetime=200
try:
while True:
# nix Sinnvolles tun
Tic = Tic + 1
#print "Tic %d" % Tic
time.sleep(1)
# reset GPIO settings if user pressed Ctrl+C
except KeyboardInterrupt:
GPIO.cleanup()
print("\nBye!")