Tabla de contenido:
Video: Octarine: un juego de combinación de colores con LED RGB WS2812: 6 pasos
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-13 06:57
Octarina, el color de la magia. Estaba vivo y resplandecía de forma vibrante y era el pigmento indiscutible de la imaginación, porque dondequiera que apareciera era una señal de que la mera materia era un sirviente de los poderes de la mente mágica. Fue el encanto mismo.
Pero Rincewind siempre había pensado que se veía una especie de púrpura verdoso.
- Terry Pratchett - El color de la magia
Todos los colores están encantados y hay que liberarlos uno a uno. Tres hechizos mágicos te ayudarán en tu búsqueda.
PD En este proyecto utilizo ampliamente operadores binarios y máscaras binarias, por lo que los educadores de Ciencias de la Computación pueden usarlo con el propósito de enseñar lógica booleana de una manera lúdica y divertida.
Suministros
1x Arduino Nano / Uno u otra placa compatible. En realidad, el proyecto utiliza 5 pines digitales y menos de 6 KB de memoria. Entonces, la placa basada en Attiny85 también debería funcionar bien.
4 botones táctiles. Si lo prefiere, puede utilizar botones de sensor en su lugar.
1x barra o tira de LED WS2812 con 8 LED RGB controlables.
1x placa de pruebas o placa de prototipos de PCB si lo prefiere.
Cables de puente de tablero.
Paso 1: Reglas del juego
La interfaz del juego cuenta con 8 LED RGB. El objetivo es que todos brillen con el mismo color. Es rojo en el primer "mundo", naranja en el segundo, amarillo en el tercero, etc.
Hay 3 botones principales. Cada uno de ellos cambia los colores de cuatro LED según una máscara binaria. Por ejemplo, el primer botón tiene la máscara 11110000. Significa que cambia los colores de los primeros cuatro LED. También hay un botón "Shift" que invierte una máscara. Si el jugador presiona el botón Shift + First, la máscara sería 00001111 y los cuatro últimos LED se verían afectados. Los colores se cambian cíclicamente.
La imagen adjunta describe todas las máscaras.
Paso 2: Diseño de niveles
El juego consta de "mundos" de ocho subniveles cada uno. El primer mundo es "rojo", y todos los LED aquí pueden estar en solo dos estados: en blanco y rojo. En cada subnivel se aplican más pasos aleatorios, por lo que la dificultad aumenta gradualmente. Cuando pasas por un mundo (es decir, todos los subniveles), rescatas el siguiente color. Entonces, en el segundo mundo (“naranja”), todos los LED tienen tres estados: en blanco, rojo y naranja. Es decir, cada próximo mundo es más desafiante que el anterior.
Lo que sucede en el octavo mundo ("Octarine") … bueno … pura magia.
Paso 3: el circuito
Depende de la placa en particular que utilice, pero le recomiendo encarecidamente que utilice una fuente de alimentación externa para los LED.
Usé los pines 2, 3, 4 y 5 para los botones. Si usa otro microcontrolador o pines, no olvide modificarlo en el código del programa.
Paso 4: el código
Aquí puede encontrar la última versión del código fuente.
Paso 5: prueba
Paso 6: Entonces, ¿qué sigue?
Es posible que hayas notado que el juego en realidad no tiene el octavo mundo (Octarine). Fue hecho intencionalmente. La magia … no es algo que se supone que se reproduzca exactamente.
Te animo a que construyas tu propio octavo mundo. Por ejemplo, puede hacer que el jugador organice una matriz de colores del arco iris en lugar de monocromo o implementar celdas con colores cambiantes. Tu decides. Haz tu propia magia a tu manera.