Hallo,
ich habe ein 16x1 Zeichen LCD an mein RPi angehängt und mit folgendem Code von der Adafruit HP funktioniert es auch:
Nun will ich die Messwerte des Ultraschallmodules auf dem LCD ausgeben und folgenden Code in den obigen integrieren:Code:#!/usr/bin/python from Adafruit_CharLCD import Adafruit_CharLCD from subprocess import * from time import sleep, strftime from datetime import datetime lcd = Adafruit_CharLCD() cmd = "ip addr show wlan0 | grep inet | awk '{print $2}' | cut -d/ -f1" lcd.begin(16,1) def run_cmd(cmd): p = Popen(cmd, shell=True, stdout=PIPE) output = p.communicate()[0] return output while 1: lcd.clear() ipaddr = run_cmd(cmd) lcd.message(datetime.now().strftime('%b %d\n')) lcd.message(datetime.now().strftime('%H:%M:%S\n')) # lcd.message(datetime.now().strftime('%b %d %H:%M:%S\n')) # lcd.message('IP %s' % ( ipaddr ) ) sleep(1)
Nur ist das nicht so einfach, zumindest bringe ich es nicht hin - könnte mir bitte hierbei jemand helfen, oder geht das gar nicht?Code:import time import RPi.GPIO as GPIO GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) GPIO_TRIGGER = 14 GPIO_ECHO = 15 adjustment = 7 print "Ultraschallmessung mit SRF04" while True: GPIO.setup(GPIO_TRIGGER,GPIO.OUT) GPIO.setup(GPIO_ECHO,GPIO.IN) GPIO.output(GPIO_TRIGGER, False) time.sleep(0.5) GPIO.output(GPIO_TRIGGER, True) time.sleep(0.00001) start = time.time() GPIO.output(GPIO_TRIGGER, False) while GPIO.input(GPIO_ECHO)==0: pass start = time.time() while GPIO.input(GPIO_ECHO)==1: pass stop = time.time() elapsed = stop-start distance = elapsed * 17000 + 8 distance = distance - adjustment print "Abstand: %.1f cm" % distance time.sleep(1) GPIO.cleanup()







Zitieren

Lesezeichen