Skip to content

Instantly share code, notes, and snippets.

@danielpardorus
Last active June 22, 2017 08:18
Show Gist options
  • Save danielpardorus/159d0e71af126a79dcf78106985ac783 to your computer and use it in GitHub Desktop.
Save danielpardorus/159d0e71af126a79dcf78106985ac783 to your computer and use it in GitHub Desktop.
Lab Raspbery pi GPIO

Lab Raspbery pi GPIO (Básico)

  1. Conectarse con putty/terminal a /dev/ttyUSB0:
    • Speed: 115200

Salida GPIO :

  • Se selecciona el pin y se le dice si es de entrada o salida:

    $ gpio -g mode 25 out

  • Se selecciona el pin y se le dice si es de entrada o salida:

    $ gpio -g write 25 1

    ¡¡ Nota !!

    • En un led lado largo positivo, lado corto negativo.
  • Código en python para usar el led:

import RPi.GPIO as GPIO # libreria para los GPIO
import time 

GPIO.setwarnings(False) 
GPIO.setmode(GPIO.BCM)

GPIO.setup(18, GPIO.OUT) # configurar pin como salida

while 1: # Bucle infinito
  GPIO.output(18, True) # enciende el LED
  time.sleep(1) # aguarda 1 segundo
  GPIO.output(18, False) # apaga el LED
  time.sleep(1) # aguarda 1 segundo

¡¡ Nota Importante !!

  • Las entradas son solo de 3,3V , MÁS DE ESO QUEMA LA RASPBERRY !!

Entrada GPIO:

  • Código para el uso del botón:
import RPi.GPIO as GPIO # libreria para los GPIO
import time

GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)

GPIO.setup(23, GPIO.IN, pull_up_down = GPIO.PUD_UP) # configurar pin como entrada con pull-up

while 1: # Bucle infinito
  print(GPIO.input(23)) # lee y muestra el estado del pin
  time.sleep(5) # aguarda medio segundo

Entrada y Salida combinados:

  • Código para el uso del botón y el led en conjunto:
import RPi.GPIO as GPIO # libreria para los GPIO
import time

GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)

GPIO.setup(25, GPIO.IN, pull_up_down = GPIO.PUD_UP) # configurar pin como entradd
a con pull-up

while 1: # Bucle infinito
  print(GPIO.input(25)) # lee y muestra el estado del pin
  time.sleep(0.5) # aguarda medio segundo
  GPIO.setup(21,GPIO.OUT)
  GPIO.output(21,False)
  if GPIO.input(25)==False:
        GPIO.output(21,True)
GPIO.clean()

Sensores hall

  • Código para el uso del del sensor electromagnético:
import RPi.GPIO as GPIO # libreria para los GPIO
import time

GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)

GPIO.setup(18, GPIO.IN) # configurar pin como entrada

while 1: # Bucle infinito
  if(GPIO.input(18)): # lee el estado del sensor
    print("Sensor hall activado")
  else:
    print("Sensor hall desactivado")
  time.sleep(0.5) # aguarda 1 segundo

Sensor de proximidad

  • Código para el uso del sensor de proximidad:
import RPi.GPIO as GPIO # libreria para los GPIO
import time

GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)

GPIO.setup(18, GPIO.IN) # configurar pin como entrada

while 1: # Bucle infinito
  if(GPIO.input(18)): # lee el estado del sensor
    print("El PIR ha detectado movimiento")
  time.sleep(0.5) # aguarda 1 segundo
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment