In Python is de layout belangrijk. Let er bij overtypen daarom op dat verschillende regels met 1 of 2 tabs beginnen. Knippen en plakken werkt waarschijnlijk beter.
Kijk voor het gebruik van de module RPi.GPIO ook naar deze voorbeelden (engelstalig).
De nederlandstalige wikipedia pagina over Python geeft een kort en eenvoudig overzicht over de belangrijkste componenten van Python.
import RPi.GPIO as GPIO import time # blinking function def blink(pin): GPIO.output(pin,GPIO.HIGH) time.sleep(0.2) GPIO.output(pin,GPIO.LOW) time.sleep(0.8) return # to use Raspberry Pi board pin numbers GPIO.setwarnings(False) GPIO.setmode(GPIO.BOARD) # set up GPIO output channel GPIO.setup(26, GPIO.OUT) # blink pen 26 = GPIO7 50 times for i in range(0,50): blink(26) GPIO.cleanup()
import RPi.GPIO as GPIO
import time
# controleer de schakelaar
def check(pin):
print str (GPIO.input(pin))
time.sleep(0.2)
return
# to use Raspberry Pi board pin numbers
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
# set up GPIO input channel
GPIO.setup(24, GPIO.IN)
# check GPIO8 50 keer
for i in range(0,50):
check(24)
GPIO.cleanup()
import RPi.GPIO as GPIO
import time
# controleer de schakelaar
def check(pin):
GPIO.wait_for_edge(pin, GPIO.BOTH)
print str (GPIO.input(pin))
return
# to use Raspberry Pi board pin numbers
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
# set up GPIO input channel
GPIO.setup(24, GPIO.IN)
# check GPIO8 50 times
for i in range(0,50):
check(24)
GPIO.cleanup()
import RPi.GPIO as GPIO
import time
# to use Raspberry Pi board pin numbers
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
# set up GPIO output channel
GPIO.setup(26, GPIO.OUT)
# ga pin 26 aansturen met een frequentie van 1 Hz
p = GPIO.PWM(26, 1)
# ga die pin aansturen met een duty cycle van 50%
p.start(50)
# en doe dat gedurende 4 seconden
time.sleep(4)
# verander de duty cycle naar 1%
p.ChangeDutyCycle(1)
input('Press return to stop:')
p.stop()
GPIO.cleanup()
import time
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(26, GPIO.OUT)
p = GPIO.PWM(26, 50) # channel=26 frequency=50Hz
p.start(0)
try:
while 1:
for dc in range(0, 101, 5):
p.ChangeDutyCycle(dc)
time.sleep(0.1)
for dc in range(100, -1, -5):
p.ChangeDutyCycle(dc)
time.sleep(0.1)
except KeyboardInterrupt:
pass
p.stop()
GPIO.cleanup()