← Índice Valentina Tech
Laboratorio 3 · Curso de Programación · CircuitPython

Patrones con luces: bucles y repetición inteligente

Objetivos

En este laboratorio aprenderás a:


Material necesario


Introducción

Hasta ahora has aprendido a:

Pero hay un problema importante:

👉 ¿Qué pasa si quieres repetir una acción muchas veces?

Por ejemplo:

Si lo haces manualmente, sería muy largo y aburrido.

Aquí es donde aparece una de las ideas más importantes de la programación:


🔁 ¿Qué es un bucle?

Un bucle es una instrucción que permite repetir algo automáticamente.

Es como decir:

“Haz esto muchas veces sin que yo lo escriba una y otra vez”


Ejemplo cotidiano

Imagina que tienes que decir:

Sin bucles sería:

Con bucles es solo:

👉 “repite 100 veces: hola”


🧠 Curiosidad:
Los bucles son la base de los videojuegos, animaciones y robots.


Conociendo los NeoPixels como matriz

La placa tiene varias luces LED (NeoPixels).

Podemos imaginarlas como una fila:

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9]

Cada número representa una luz diferente.


Nuestro tercer programa

Vamos a crear una animación simple:

👉 Una luz verde que se mueve de un LED a otro


Código completo

import time
from adafruit_circuitplayground import cp

VERDE = (0, 255, 0)
APAGADO = (0, 0, 0)

cp.pixels.brightness = 0.2

while True:

    for i in range(10):

        cp.pixels[i] = VERDE
        time.sleep(0.2)
        cp.pixels[i] = APAGADO

Explicación del código


1. Bucle infinito

while True:

Significa:

👉 “repite todo para siempre”

Esto crea una animación sin fin.


2. Bucle FOR

for i in range(10):

Esto significa:

👉 “repite esto 10 veces”

La variable i cambia así:

Cada número representa un LED.


3. Encender LED actual

cp.pixels[i] = VERDE

Esto enciende una luz específica.


4. Pausa

time.sleep(0.2)

Esto hace que podamos ver el movimiento.


5. Apagar LED

cp.pixels[i] = APAGADO

Esto limpia la luz antes de pasar a la siguiente.


💡 Curiosidad:
Este tipo de efecto se usa en letreros LED, robots y videojuegos retro.


Cómo funciona físicamente

El microcontrolador:

  1. Ejecuta el bucle
  2. Cambia el LED activo uno por uno
  3. Envía señales eléctricas a cada NeoPixel
  4. Crea la ilusión de movimiento

👉 En realidad NO se mueve la luz
👉 Solo se encienden LEDs diferentes muy rápido


Retos del laboratorio


🟢 Reto 1: Ida y vuelta

Haz que la luz:

💡 Objetivo: aprender bucles dobles.


🟡 Reto 2: Dos luces al mismo tiempo

Modifica el programa para que:

Ejemplo:

💡 Objetivo: manipular múltiples posiciones.


🔴 Reto 3: Efecto “respiración”

Haz que:

💡 Objetivo: controlar intensidad y ritmo.


Resumen del laboratorio

En este laboratorio aprendiste:

Ahora ya puedes crear movimiento con código:

👉 las luces ya no son estáticas, ahora se comportan como una animación viva

Valentina Tech · Circuit Playground Express · CircuitPython