Skip to content

Actividad

Luces de aplauso

Principiante | MakeCode, Python | Micrófono, Pantalla LED | Lógica booleana, Selección, Sensores

Paso 1: Hazlo

¿Qué es?

Convierte tu micro:bit en una luz que puedes encender y apagar aplaudiendo o haciendo cualquier sonido fuerte.

Introducción

Guía de programación

Qué aprenderás

  • Cómo cambiar las salidas en respuesta a las entradas del sensor
  • Cómo usar la lógica booleana para hacer un interruptor que se enciende y apaga cuando se activa por el mismo evento

Cómo funciona

  • El programa utiliza una variable llamada lightsOn para hacer un seguimiento del estado de la luz: si está encendida o apagada. Lo estamos usando como un tipo especial de variable, una variable booleana. Las variables booleanas solo pueden tener dos valores: true (encendida) o false (apagada).
  • Cuando el sensor de micrófono detecta un sonido alto, el código cambia el valor de lightsOn configurándolo para que sea not lightsOn.
  • Esto significa que cuando aplaudes, si lightsOn es false (y las luces están apagadas), se vuelve true y el programa ilumina los LED.
  • Si lightsOn era true (y las luces estaban encendidas), se vuelve false y el código desactiva los LED despejando la pantalla.

Lo que necesitas

  • Un micro:bit
  • Editor de MakeCode o de Python
  • pilas (opcionales)

Paso 2: Prográmalo

1from microbit import *
2lightsOn = False
3
4while True:
5    if microphone.was_event(SoundEvent.LOUD):
6        lightsOn = not lightsOn
7        if lightsOn:
8            display.show(Image('99999:'
9                               '99999:'
10                               '99999:'
11                               '99999:'
12                               '99999'))
13        else:
14            display.clear()
15    sleep(100)

Paso 3: Mejóralo

  • Puedes hacer que el bloque de "sonido fuerte" sea más o menos sensible añadiendo un bloque "establecer un alto nivel de sonido" a un bloque "al iniciar". Utilice números más pequeños para sonidos más silenciosos, números más grandes para sonidos más fuertes. El vídeo de codificación de arriba muestra cómo hacer esto.
  • En Python, para cambiar el umbral de sonidos fuertes usa microphone.set_threshold(SoundEvent.LOUD, 128) - cambiando el número 128 al valor que deseas entre 0 y 255.
  • Haz que las luces también toquen una melodía cuando se enciendan.
  • Utiliza el sonido para controlar otros proyectos, como LED de iluminación o servomotores conectados a los pines de tu micro:bit.