ich habe versucht mein Script zum Laufen zu bringen. Ich überprüfe im Script ob ein HIGH Signal ansteht.
Nun wenn ich die GPIOs verbinde mit der 3.3 Volt Versorgung des Raspberry Pis kommt immer ein LOW Signal heraus.
Nun habe ich gelesen, dass man einen Wiederstand setzen muss mit einem optionalen Parameter bei GPIO.setup();
Der Parameter lautet pull_up_down. Zu dem habe ich gelesen, wenn man GPIO.PUD_UP diesem zuweist, dass es dann von
0 auf 1 hochgezogen wird und wenn man GPIO.PUD_DOWN diesem zweist es von 1 auf 0 runtergezogen wird.
Nun wird mir aber beim GPIO.PUD_UP immer ein HIGH-Signal gegeben, obwohl auch keine Spannung ansteht.
Habt ihr denn Ideen wie man dies lösen kann?
Mein Script:
Code: Alles auswählen
#!/usr/bin/python
# -*- coding: utf8 -*-
import RPi.GPIO as GPIO
import logging
from marrow.mailer import Message, Mailer
logging.basicConfig(level=logging.INFO)
# Benötigte Werte:
# GPIO.LOW (alles ok)
# GPIO.HIGH (fehler)
GPIO.setmode(GPIO.BOARD); # Pin-Nummern aus dem Layout benutzen (siehe gpio.jpg)
# input setzen auf Pin-Nummer: 18 = GPIO 24
GPIO.setup(18, GPIO.IN, pull_up_down = GPIO.PUD_UP);
#Überprüfung ob input einen low oder high status hat == GPIO.HIGH
gpioInput = GPIO.input(18)
if gpioInput == GPIO.HIGH:
# Mailversand
mail = Mailer({
'manager.use': 'futures',
'transport.use': 'smtp',
'transport.host': 'smtp.gmail.com',
'transport.tls': 'ssl',
'transport.username': '',
'transport.password': '',
'transport.max_messages_per_connection': 5
})
mail.start()
message = Message([('Information', '')], [('Ich', '')], "test", plain="test")
mail.send(message)
mail.stop()
print gpioInput
print "Fertig"
else:
print "Signal is not high"
print gpioInput