Paso 5: Otra forma de programación
Si ha creado un programa con el último paso, luego pase a este...
De esta forma de programación, almacenamos los patrones en flash usando PROGMEM en arduino
#include / / permite el uso de PROGMEM para almacenar patrones de flash
#define CUBESIZE 4 //cubesize es 4 x 4 x 4
#define PLANESIZE CUBESIZE * CUBESIZE //here plano medio una capa, es decir 4 x 4 = 16 leds en una capa
#define PLANETIME 100 / / tiempo de cada plano se muestra en nosotros -> refresco de 100 Hz
#define TIMECONST 20 / / multiplica DisplayTime para obtener ms
Tabla de patrón de LED en PROGMEM - la última columna es tiempo de visualización en unidades de 100ms
TODO esto podría ser mucho más compacto, pero no con la representación del patrón binario
prog_uchar PROGMEM PatternTable [] = {}
1 //2 //3 //4 //5 //6 //7 //8 //9 //10 11 //12 //13 //row números
B0000 B0000 B0000, B0000, B0000, B0000, B0000, B0000, B0000, B0000, B0000, B0000, B0000,
14 //15 //16
B0000, B0000 B0000, //empty 10, todos los leds están, OFF
Aquí va el código, empezó por encima de
se trata de un elemento ficticio para el final de la tabla (duración = 0) aka!!! ¡ NO TOQUE!
B0000 B0000 B0000, B0000, B0000, B0000, B0000, B0000, B0000, B0000, B0000, B0000, B0000, B0000, B0000, B0000, 0};
programa no completado
necesita algunas funciones de progmem aquí
Para obtener el código completo y para entender esta forma de programación, te recomiendo que verifique este instructable:
Escribir tu propio programa de cubo del LED para Arduino