Herramientas de usuario

Herramientas del sitio


guias:raspberry_gpio

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
Última revisiónAmbos lados, revisión siguiente
guias:raspberry_gpio [2017/11/22 11:26] – [Tercer proyecto: Sonido con un zumbador] Félix Sánchez-Temblequeguias:raspberry_gpio [2018/02/25 11:47] – [Instalar el monitor de pines GPIO] Tucho Méndez
Línea 33: Línea 33:
 ===== Instalar la librería GPIOZERO ===== ===== Instalar la librería GPIOZERO =====
  
-Desde un terminal de Raspbian, ejecutar las siguientes instrucciones+Si no tienes instalada la librería gpiozero, desde un terminal de Raspbian, ejecuta las siguientes instrucciones
  
 <code> <code>
Línea 40: Línea 40:
 </code> </code>
  
 +===== Instalar el monitor de pines GPIO =====
 +
 +En este enlace al [[https://github.com/rricharz/pi-gpio-display|Github]] de Rene Richarz están las instrucciones para instalar una aplicación que nos resultará muy útil porque muestra en la pantalla los pines de Raspberry y su estado (apagado, encendido...).
 +
 +{{:guias:rpigpio:screenshot.jpg?400|}}
 +
 +<code>
 +sudo apt-get install wiringpi
 +cd Downloads
 +git clone git://github.com/rricharz/pi-gpio-display
 +cd pi-gpio-display
 +chmod +x ./install
 +./install
 +</code>
 ===== Primer proyecto: Activar un led ===== ===== Primer proyecto: Activar un led =====
  
Línea 49: Línea 63:
  
 <code> <code>
- from gpiozero import LED +from gpiozero import LED 
- led = LED(25) +led = LED(25) 
- led.on()+led.on()
 </code> </code>
  
Línea 65: Línea 79:
  
 <code> <code>
- from gpiozero import LED +from gpiozero import LED 
- from time import sleep +from time import sleep 
- led = LED(25) +led = LED(25) 
- while True: +while True: 
-    led.on() +   led.on() 
-    sleep(1) +   sleep(1) 
-    led.off() +   led.off() 
-    sleep(1)+   sleep(1)
 </code> </code>
  
Línea 87: Línea 101:
  
 <code> <code>
- from gpiozero import PWMLED +from gpiozero import PWMLED 
- from time import sleep +from time import sleep
-  +
- led = PWMLED(17)+
  
- while True: +led = PWMLED(17) 
-    led.value = 0  # apagado + 
-    sleep(1) +while True: 
-    led.value = 0.5  # brillo a medias +   led.value = 0  # apagado 
-    sleep(1) +   sleep(1) 
-    led.value = 1  # brillo a tope +   led.value = 0.5  # brillo a medias 
-    sleep(1)+   sleep(1) 
 +   led.value = 1  # brillo a tope 
 +   sleep(1)
 </code> </code>
  
Línea 104: Línea 118:
  
 <code> <code>
- from gpiozero import PWMLED +from gpiozero import PWMLED 
- from time import sleep +from time import sleep
-  +
- led = PWMLED(17)+
  
- intensidad = 0 +led = PWMLED(17) 
-  + 
- while intensidad <= 1+intensidad = 0 
-    led.value = intensidad + 
-    intensidad = intensidad + 0.+while (intensidad <= 9)
-    sleep(0.1) +   led.value = intensidad/10 
-     +   intensidad = intensidad + 1 
- while intensidad >= 0+   sleep(0.1) 
-    led.value = intensidad +while (intensidad >= 1)
-    intensidad = intensidad - 0.+   led.value = intensidad/10 
-    sleep(0.1) +   intensidad = intensidad - 1 
-    +   sleep(0.1)
 </code> </code>
 +
  
 ==== Tu primer semáforo ==== ==== Tu primer semáforo ====
Línea 130: Línea 143:
  
 <code> <code>
- from gpiozero import LED +from gpiozero import LED 
- from time import sleep +from time import sleep 
- rojo = LED(23) +rojo = LED(23) 
- amarillo = LED(24) +amarillo = LED(24) 
- verde = LED(25) +verde = LED(25) 
- while True: +while True: 
-    verde.on() +   verde.on() 
-    sleep(1) +   sleep(1) 
-    verde.off() +   verde.off() 
-    amarillo.blink(0.1,0.1) +   amarillo.blink(0.1,0.1) 
-    sleep(1) +   sleep(1) 
-    amarillo.off() +   amarillo.off() 
-    rojo.on() +   rojo.on() 
-    sleep(1) +   sleep(1) 
-    rojo.off()+   rojo.off()
 </code> </code>
  
Línea 155: Línea 168:
  
 <code> <code>
- from gpiozero import Button +from gpiozero import Button 
- boton = Button(17) +boton = Button(17) 
- boton.wait_for_press() +boton.wait_for_press() 
- print('Pulsaste!')+print('Pulsaste!')
 </code> </code>
  
Línea 164: Línea 177:
  
 <code> <code>
- from gpiozero import Button +from gpiozero import Button 
- boton = Button(17) +boton = Button(17) 
- while True: +while True: 
-    boton.wait_for_press() +   boton.wait_for_press() 
-    print('Pulsaste!')+   print('Pulsaste!')
 </code> </code>
  
Línea 176: Línea 189:
  
 <code> <code>
- from gpiozero import LED, Button +from gpiozero import LED, Button 
- led = LED(25+from time import sleep 
- boton = Button(17) +led = LED(12
- while True: +boton = Button(17) 
-    boton.wait_for_press() +while True: 
-    led.toggle()+   boton.wait_for_press() 
 +   led.toggle(
 +   sleep(0.5)
 </code> </code>
  
Línea 189: Línea 204:
  
 <code> <code>
- from gpiozero import LED, Button +from gpiozero import LED, Button 
- led = LED(25+from signal import pause 
- boton = Button(17) +led = LED(12
- while True: +boton = Button(17) 
-    boton.when_pressed = led.on() +boton.when_pressed = led.on 
-    boton.when_released = led.off()+boton.when_released = led.off 
 +pause()
 </code> </code>
  
Línea 200: Línea 216:
  
 <code> <code>
- from gpiozero import LED, Button +from gpiozero import LED, Button 
- from time import sleep+from time import sleep
  
- led = LED(25+led = LED(12
- button = Button(17)+button = Button(17)
  
- button.wait_for_press() +button.wait_for_press() 
- led.on() +led.on() 
- sleep(3) +sleep(3) 
- led.off()+led.off()
 </code> </code>
  
Línea 216: Línea 232:
 Un [[https://es.wikipedia.org/wiki/Zumbador|zumbador]] (buzzer en inglés) es un pequeño dispositivo capaz de convertir una señal eléctrica en sonido. Algo así como un altavoz cutre. Vale, muy cutre. Un [[https://es.wikipedia.org/wiki/Zumbador|zumbador]] (buzzer en inglés) es un pequeño dispositivo capaz de convertir una señal eléctrica en sonido. Algo así como un altavoz cutre. Vale, muy cutre.
  
-Hay dos tipos fundamentales de zumbadores, pasivos y activos. Los primeros requieren una señal con una forma específica para funcionar, con el voltaje subiendo y bajando en forma de onda. Los activos son mucho más sencillos de usar y serán los que probemos. Se conectan igual que un led pero no necesitan resitencia, sólo es necesario identificar el negativo -cable negro, a GND- y el positivo -cable rojo, al pin 17-.+Hay dos tipos fundamentales de zumbadores, pasivos y activos. Los primeros requieren una señal con una forma específica para funcionar, con el voltaje subiendo y bajando en forma de onda. Los activos son mucho más sencillos de usar y serán los que probemos. Su desventaja es que no podemos controlar el tono del sonido. Se conectan igual que un led pero no necesitan resistencia, sólo es necesario identificar el negativo -cable negro, a GND- y el positivo -cable rojo, al pin 17-.
  
 {{:guias:rpigpio:buzzer-circuit.png?600x584}} {{:guias:rpigpio:buzzer-circuit.png?600x584}}
Línea 223: Línea 239:
  
 <code> <code>
- from gpiozero import Buzzer +from gpiozero import Buzzer 
- from time import sleep+from time import sleep
  
- buzzer = Buzzer(17)+buzzer = Buzzer(17)
  
- while True: +while True: 
-    buzzer.on() +   buzzer.on() 
-    sleep(1) +   sleep(1) 
-    buzzer.off() +   buzzer.off() 
-    sleep(1)+   sleep(1)
 </code> </code>
  
Línea 238: Línea 254:
  
 <code> <code>
- from gpiozero import Buzzer +from gpiozero import Buzzer 
- from time import sleep+from time import sleep
  
- buzzer = Buzzer(17)+buzzer = Buzzer(17)
  
- while True: +while True: 
-    buzzer.beep()+   buzzer.beep()
 </code> </code>
  
guias/raspberry_gpio.txt · Última modificación: 2021/04/16 20:41 por 127.0.0.1