Sunteți pe pagina 1din 10

1

GPIO PYTHON

En la Tabla se muestran los pines del conector GPIO de la Raspberry B:


2
3

Comprobamos la versin de la librera RPi.GPIO instalada:


sudo python // versin 2.7.3
sudo python3 // versin 3.2.3

>>>import RPi.GPIO
>>>RPi.GPIO.VERSION

Ctrl + D, para salir de la consola de Python.

Funciones para salidas:

GPIO.setup(pin,GPIO.OUT,valor inicial)

GPIO.setup(pin,GPIO.OUT,initial=GPIO.HIGH)
GPIO.setup(pin,GPIO.OUT,initial=GPIO.LOW)

GPIO.output(pin,estado) #estado: 1 GPIO.HIGH - True


GPIO.output(pin,estado) #estado: 0 GPIO.LOW False

01_led.py

#!/usr/bin python

#LIBRERIAS y VARIABLES
import RPi.GPIO as GPIO
import time

led_BOARD = 40
led_BCM = 21

#CONFIGURACION DE PINES
GPIO.setmode(GPIO.BOARD)
GPIO.setup(led_BOARD, GPIO.OUT, initial = GPIO.LOW)

'''
CICLO DE ENCENDIDO Y APAGADO
DE UN LED
'''
while True:
GPIO.output(led_BOARD, GPIO.HIGH)
time.sleep(1)
GPIO.output(led_BOARD, GPIO.LOW)
time.sleep(1)

02_led.py

#!/usr/bin python

#LIBRERIAS y VARIABLES
import RPi.GPIO as GPIO
import time
4

led_BOARD = 40
led_BCM = 21

#CONFIGURACION DE PINES
GPIO.setmode(GPIO.BOARD)
GPIO.setup(led_BOARD, GPIO.OUT, initial = GPIO.LOW)

'''
CICLO DE ENCENDIDO Y APAGADO
DE UN LED
'''
try:
while True:
GPIO.output(led_BOARD, GPIO.HIGH)
time.sleep(1)
GPIO.output(led_BOARD, GPIO.LOW)
time.sleep(1)
except KeyboardInterrupt:
GPIO.cleanup()

03_led.py

#!/usr/bin python

#LIBRERIAS y VARIABLES
import RPi.GPIO as GPIO
import time

led_BOARD = 40
led_BCM = 21

#CONFIGURACION DE PINES
GPIO.setmode(GPIO.BOARD)
GPIO.setup(led_BOARD, GPIO.OUT, initial = GPIO.LOW)

'''
CICLO DE ENCENDIDO Y APAGADO
DE UN LED
'''
try:
while True:
GPIO.output(led_BOARD, not GPIO.input(led_BOARD))
time.sleep(1)
except KeyboardInterrupt:
GPIO.cleanup()

04_led.py

#!/usr/bin python

#LIBRERIAS y VARIABLES
import RPi.GPIO as GPIO
import time

led_BOARD = 40
5

led_BCM = 21

#CONFIGURACION DE PINES
GPIO.setmode(GPIO.BOARD)
GPIO.setup(led_BOARD, GPIO.OUT, initial = GPIO.LOW)

'''
8 CICLOS DE ENCENDIDO Y APAGADO
DE UN LED
'''
try:
for x in range(0,7): # range(n)=range(0,n)=[0,1,...,n-1]. Es decir,
i=0,1,2,3,4,5,6
GPIO.output(led_BOARD, GPIO.HIGH)
time.sleep(0.5)
GPIO.output(led_BOARD, GPIO.LOW)
time.sleep(0.5)
GPIO.cleanup()
except KeyboardInterrupt:
GPIO.cleanup()

'''
try:
except KeyboardInterrupt:
GPIO.cleanup()
'''

05_led.py

#!/usr/bin python

#LIBRERIAS y VARIABLES
import RPi.GPIO as GPIO
import time

led_BOARD = 40
led_BCM = 21

#CONFIGURACION DE PINES
GPIO.setmode(GPIO.BOARD)
GPIO.setup(led_BOARD, GPIO.OUT, initial = GPIO.LOW)

'''
8 CICLOS DE ENCENDIDO Y APAGADO
DE UN LED
'''
cont = 1
try:
while cont <= 8: # i = 1,2,3,4,5,6,7
GPIO.output(led_BOARD, GPIO.HIGH)
time.sleep(0.5)
GPIO.output(led_BOARD, GPIO.LOW)
time.sleep(0.5)
cont += 1
GPIO.cleanup()
6

except KeyboardInterrupt:
GPIO.cleanup()

06_led.py

#!/usr/bin python

#LIBRERIAS y VARIABLES
import RPi.GPIO as GPIO
import time

#CONFIGURACION DE PINES Y LISTA


GPIO.setmode(GPIO.BOARD)
li = [29, 31, 33, 35, 37, 36, 38, 40]
GPIO.setup(li, GPIO.OUT, initial = GPIO.LOW)

cont = 1
try:
while cont <= 8: # i = 1,2,3,4,5,6,7
GPIO.output(li, GPIO.HIGH)
time.sleep(0.5)
GPIO.output(li, GPIO.LOW)
time.sleep(0.5)
cont += 1
GPIO.cleanup()
except KeyboardInterrupt:
GPIO.cleanup()

07_led.py

#!/usr/bin python

#LIBRERIAS y VARIABLES
import RPi.GPIO as GPIO
import time

#CONFIGURACION DE PINES Y LISTA


GPIO.setmode(GPIO.BOARD)
li = [29, 31, 33, 35, 37, 36, 38, 40]
GPIO.setup(li, GPIO.OUT, initial = GPIO.LOW)

cont = 1
try:
while cont <= 8: # i = 1,2,3,4,5,6,7
GPIO.output(li,(1,0,1,0,1,0,1,0))
time.sleep(0.5)
GPIO.output(li,(0,1,0,1,0,1,0,1))
time.sleep(0.5)
cont += 1
GPIO.cleanup()
except KeyboardInterrupt:
GPIO.cleanup()
7

08_led.py

#!/usr/bin python

#LIBRERIAS y VARIABLES
import RPi.GPIO as GPIO
import time

limite = 7
retardo = 0.06

#CONFIGURACION DE PINES Y LISTA


GPIO.setmode(GPIO.BOARD)
li = [29, 31, 33, 35, 37, 36, 38, 40]
GPIO.setup(li, GPIO.OUT, initial = GPIO.LOW)

try:
while True:
for i in range(limite):
GPIO.output(li[i],GPIO.HIGH)
time.sleep(retardo)
GPIO.output(li[i],GPIO.LOW)
li.reverse()
except KeyboardInterrupt:
GPIO.cleanup()

09_led.py

#!/usr/bin python

#LIBRERIAS y VARIABLES
import RPi.GPIO as GPIO
import time

limite = 7
retardo = 0.06

#CONFIGURACION DE PINES Y LISTA


GPIO.setmode(GPIO.BOARD)
li = [29, 31, 33, 35, 37, 36, 38, 40]
GPIO.setup(li, GPIO.OUT, initial = GPIO.LOW)

try:
while True:
GPIO.output(li,GPIO.HIGH)
for i in range(limite):
GPIO.output(li[i],GPIO.LOW)
time.sleep(retardo)
GPIO.output(li[i],GPIO.HIGH)
li.reverse()
except KeyboardInterrupt:
GPIO.cleanup()
8

ENTRADAS

pr08.py

#!/usr/bin/env python
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)
GPIO.setup(11,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(7,GPIO.OUT)
try:
while True:
if GPIO.input(11)==GPIO.LOW:
GPIO.output(7,GPIO.LOW)
else:
GPIO.output(7,GPIO.HIGH)
except KeyboardInterrupt:
GPIO.cleanup()

pr09.py

#!/usr/bin/env python
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)
GPIO.setup(11,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(12,GPIO.IN,pull_up_down=GPIO.PUD_UP)
9

GPIO.setup(7,GPIO.OUT)
try:
while True:
if GPIO.input(11)==GPIO.HIGH:
GPIO.output(7,GPIO.HIGH)
if GPIO.input(12)==GPIO.LOW:
GPIO.output(7,GPIO.LOW)
except KeyboardInterrupt:
GPIO.cleanup()

pr09a.py

#!/usr/bin/env python
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)
GPIO.setup(11,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(12,GPIO.IN,pull_up_down=GPIO.PUD_UP)
GPIO.setup(7,0)
try:
while True:
if GPIO.input(11)==1:
GPIO.output(7,1)
if GPIO.input(12)==0:
GPIO.output(7,0)
except KeyboardInterrupt:
GPIO.cleanup()

add_event_detect.py

#!/usr/bin/env python
import RPi.GPIO as GPIO

GPIO.setmode(GPIO.BOARD)

GPIO.setup(11, GPIO.IN, pull_up_down = GPIO.PUD_DOWN)


GPIO.setup(12, GPIO.IN, pull_up_down = GPIO.PUD_UP)

GPIO.add_event_detect(11,GPIO.RISING,bouncetime=200)
GPIO.add_event_detect(12,GPIO.FALLING,bouncetime=200)

while True:
if GPIO.event_detected(11):
print('Pulsador 11 Presionado')
if GPIO.event_detected(12):
print('Pulsador 12 Presionado')
GPIO.cleanup()
10

callback.py

#!/usr/bin/env python
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)
GPIO.setup(11,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(12,GPIO.IN,pull_up_down=GPIO.PUD_UP)
GPIO.setup(7,GPIO.OUT)
GPIO.setup(22,GPIO.OUT,initial=GPIO.LOW)
GPIO.setup(18,GPIO.OUT,initial=GPIO.LOW)
def isr_uno(channel):
GPIO.output(22,not GPIO.input(22))
def isr_dos(channel):
GPIO.output(18,not GPIO.input(18))

GPIO.add_event_detect(11,GPIO.FALLING,callback=isr_uno,bouncetime=200)
GPIO.add_event_detect(12,GPIO.FALLING,callback=isr_dos,bouncetime=200)
try:
while True:
GPIO.output(7,not GPIO.input(7))
time.sleep(1)
except KeyboardInterrupt:
GPIO.cleanup()

wait_for_edge.py
#!/usr/bin/env python
import RPi.GPIO as GPIO

GPIO.setmode(GPIO.BOARD)

GPIO.setup(11, GPIO.IN, pull_up_down = GPIO.PUD_DOWN)


GPIO.setup(12, GPIO.IN, pull_up_down = GPIO.PUD_UP)

while True:
GPIO.wait_for_edge(11, GPIO.RISING)
print(Button 1 Pressed)
GPIO.wait_for_edge(11, GPIO.FALLING)
print(Button 1 Released)
GPIO.wait_for_edge(12, GPIO.FALLING)
print(Button 2 Pressed)
GPIO.wait_for_edge(12, GPIO.RISING)
print(Button 2 Released)
GPIO.cleanup()

S-ar putea să vă placă și