Controlar GPIO a través de un script de Python

Hay dos formas numerar los pines de la Raspberry.

  • Modo GPIO, se numeran de forma física por el lugar que ocupan en la placa, se empieza a contar desde arriba a la izquierda y finaliza abajo a la derecha.
  • Modo BCM, se numeran por la correspondencia en el chip Broadcom.

Por este mismo motivo se puede encontrar dos nomenclaturas a la hora de programarlas, cuando nos refiramos al modo GPIO o al modo BCM. 

Después hay que definir el modo de acceso.

  • Número en la placa (GPIO.BOARD)
  • Canal conectado en el Chip Broadcom (GPIO.BCM)

Raspberry_Gpio

OJO:

no se puede superar 3V3, si se superan el puerto se quemar. La tension de salida también es 3V3. La intensidad maxima es 3mA por pin.

En nuestro caso utilizaremos la numeración de la placa.

Para poder controlar el puerto GPIO a través de Python, primero tendremos que descargarnos una librería para Python con este comando:

sudo apt-get install python-dev

Luego, instalamos el modulo RPi.GPIO con el siguiente comando:

sudo apt-get install python-rpi.gpio

En caso de utilizar python3

sudo apt-get install python3-dev

sudo apt-get install python3-rpi.gpio

Después, creamos un archivo Python: para el GPIO17 (Posición 11)

sudo nano alarma4.py

Y escribimos el siguiente código, activara y desactivara el pin 11

import RPi.GPIO as GPIO #Libreria Python GPIO17

import time             #Libreria Time

GPIO.setmode(GPIO.BOARD) #Usamos el sisetma de numeracion de pins BCM

GPIO.setup(11, GPIO.OUT) #Ponemos el Pin GPIO4 como salida

while

     True:

     print"ON"

     GPIO.output(11, GPIO.HIGH)

     time.sleep(1)

     print"OFF"

     GPIO.output(11, GPIO.LOW)

     time.sleep(1)
 
GPIO.cleanup() #Reiniciar configuracion pins GPIO