Una ayudita para los que quieren experimentar con GPIO

Sección Unicamente para Tutoriales y Guías
Responder
Avatar de Usuario
ismaDev
Pi Alpha
Pi Alpha
Mensajes: 15
Registrado: 29 Jun 2016, 12:55
Agradecido: 0
Agradecimiento recibido: 0

Imagen


Esquema GPIO correspondiente a Raspberry Pi 3B:

Imagen
Imagen sacada de: http://www.elotrolado.net/

Quiero compartir este código para manejar leds o interruptores que conectemos a los GPIO, es muy sencillo:


Antes de nada instalar las librerias necesarias para GPIO (desde consola):

Código: Seleccionar todo

~ apt-get install python-dev
~ apt-get install python-rpi.gpio
En el ejemplo utilizo el GPIO 4 y lenguaje de programación Python

Mandar señal de encendido al GPIO:

Código: Seleccionar todo

import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT) # GPIO en este caso el que corresponde como número 4
GPIO.output(4, 1) #Enciende
Mandar señal de apagado al GPIO:

Código: Seleccionar todo

import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT) # GPIO en este caso el que corresponde como número 4
GPIO.output(4, 0) #Apaga
GPIO.cleanup() #Libera GPIO
Pequeño código hace parpadear un led:

Código: Seleccionar todo

import time
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT)
segundos = 0
while segundos < 60: #Bucle de 60 segundos
    GPIO.output(4, 1) #Enciende
    time.sleep(1) #Pasa 1 segundo
    segundos ++  #Se incrementa para el bucle
    GPIO.output(4, 0) #Apaga
    time.sleep(1) #Pasa 1 segundo
    segundos ++   #Se incrementa para el bucle
GPIO.cleanup() 
Comprobar estado del GPIO:

Código: Seleccionar todo

import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT) 
state = GPIO.input(4)
if (state is 1):
    print "Encendido"
else:
   print "Apagado"

Para ejecutarlos hay que utilizar python desde la consola:

Código: Seleccionar todo

~ python programa.py
Última edición por ismaDev el 30 Jun 2016, 20:59, editado 10 veces en total.
Avatar de Usuario
Kike
Administrador
Administrador
Mensajes: 2311
Registrado: 13 May 2016, 18:53
Ubicación: Islas Baleares - Menorca
Agradecido: 47 veces
Agradecimiento recibido: 175 veces
Contactar:

Muchisimas gracias por tu aporte @ismaDev !
Yo voy justito con el tema GPIO, asi que me va de coña :D ;)
Si lo puedes soñar, lo puedes hacer
halcon46
Pi Newbie
Pi Newbie
Mensajes: 2
Registrado: 20 Jul 2016, 18:20
Agradecido: 0
Agradecimiento recibido: 0

Los pines que ponen SPIO, I2C1, UARTO para que sirven exactamente?
Kanpernito
Pi Alpha
Pi Alpha
Mensajes: 22
Registrado: 11 Feb 2017, 18:59
Agradecido: 0
Agradecimiento recibido: 0

Gracias por tu aporte
mralvaro
Pi Alpha
Pi Alpha
Mensajes: 20
Registrado: 01 Feb 2017, 00:11
Agradecido: 0
Agradecimiento recibido: 0

Muchísimas gracias por tu post.
munheko
Pi Alpha
Pi Alpha
Mensajes: 30
Registrado: 25 Dic 2016, 16:09
Agradecido: 0
Agradecimiento recibido: 0

Muy bueno el aporte, gracias!
javierpg1990
Pi Alpha
Pi Alpha
Mensajes: 23
Registrado: 25 Feb 2017, 11:10
Agradecido: 0
Agradecimiento recibido: 0

Quien pudiera entender todo esto.. jaja
Responder