Arduino Weekend Project - SK6812 LED T-shirt

    Good evening! Want to impress friends? Or just to shock passersby on a warm summer evening? Make a LED t-shirt! I present the Arduino project of the day - an exclusive LED t-shirt. How it will look, see in the video. For now a photo.



    I spent on making this t-shirt for two evenings, and then another week was played, inventing various shapes to revive it. What it is made of:

    1. Arduino Nano - it is small and it is very convenient to sew in similar designs. Only feet solder!
    2. 64 LEDs SK6812. For an 8 x 8 matrix. These are RGBW LEDs with pixel addressing. RGBW - this means that they contain three RGB crystals and one scrambled egg of white glow. Very bright!
    3. Button to change effects.
    4. 1800 mAh battery.
    5. Wire MGTF.
    6. Solder, flux, and 8 hours of free time.

    What should happen:



    We carry the 8 x 8 matrix by doing so — we take a 20-by-20-cm tissue flap and glue all 64 LEDs to it at a distance of 2.5 cm. Pay attention - the first line of eight LEDs is up, second down, then up, down, etc. If you are confused, you torture to connect ... They can only be held tightly with a cloth. Then we connect them according to the scheme:


    Here, too, strictly. The sketch describes a matrix of LED signal lines, which are connected as in the diagram. From top to bottom and alternately from left to right, then from right to left.

    Power LEDs in any direction. Meals I did, too, "snake". The input of the first LED is connected to the 12th input of the Arduin. Arduin itself is sewn on the same flap. Little Nano, without its legs under the shirt is almost invisible.

    Between the first and last columns, a velcro tape for clothing is sewn, the counterpart of which is sewn to the T-shirt from the inside. Well, now the flap matrix is ​​glued to the T-shirt from the inside.

    The design still has a button for changing effects and a battery. They are still in the back pocket.

    Now about the sketch. Writing, drawing is very simple. In the video on a T-shirt from my assistant, Catherine, the letters KATRINDETKA are alternately lit first. Below is illustrated how to write the letter K. The first line of the letter is 11100011. 1 - the LEDs are lit, 0 is not.

    In the programmer mode with the Vindus calculator, we translate the binary code into HEX and we get 0xE3.

    In the sketch (file LEDS_64_panel.h) we look at the line:

    constuint8_t DIG_0[] PROGMEM = 
    {
      0xE3, 0xE7, 0xEE, 0xFC, 0xFC, 0xEE, 0xE7, 0xE3,
    }; //k

    This is the letter K, all eight lines. The first line is just 0xE3. I think everything is clear further.



    This is a display of a picture in bytes. But it is possible and binary code without translation to HEX. Look for the array below:

    constuint8_t SQUARE_1[PIXEL_NUM] PROGMEM = 
    {
      1, 1, 1, 1, 1, 1, 1, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 1, 1, 1, 1, 1, 1, 1,
    };

    This is a square on a t-shirt. On the video after clicking a button. It is described simply in binary code. You can change the color and brightness of the background or pattern.

    BACK_COLOUR
    MAIN_COLOUR

    You can change the frame rate

    SHOW_DELAY
    TETRIS_DELAY

    The scheme is very simple, sketch too. Work is very hard! But the result is incredibly beautiful techno clothing. The video does not transmit a tenth of the wow effect.

    How do the LEDs with pixel addressing, I will not tell. Just do a beautiful thing!

    Have a nice weekend!

    Sketch LEDS_64_panel.h
    #define   LED_PIN              12#define   KEY_PIN              7#define   PIXEL_IN_STICK       8#define   STICK_NUM            8#define   PIXEL_NUM            (PIXEL_IN_STICK * STICK_NUM)#define   MAIN_COLOUR          ((uint32_t) 0xff000000)#define   BACK_COLOUR          ((uint32_t) 0x00000010)#define   SHOW_DELAY           600#define   TETRIS_DELAY         200#define   CharGroups           3constuint8_t DIG_0[] PROGMEM = 
    {
      0xE3, 0xE7, 0xEE, 0xFC, 0xFC, 0xEE, 0xE7, 0xE3,
    }; //kconstuint8_t DIG_1[] PROGMEM = 
    {
      0x7E, 0xFF, 0xE7, 0xE7, 0xE7, 0xFF, 0xFF, 0xE7,
    };//aconstuint8_t DIG_2[] PROGMEM = 
    {
      0x7F, 0x7F, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C,
    };//tconstuint8_t DIG_3[] PROGMEM = 
    {
      0xFE, 0xFF, 0xE3, 0xFF, 0xFE, 0xE7, 0xE7, 0xE7,
    };//rconstuint8_t DIG_4[] PROGMEM = 
    {
      0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C,
    };//iconstuint8_t DIG_5[PIXEL_NUM] PROGMEM = 
    {
      0xE7, 0xF7, 0xF7, 0xFF, 0xFF, 0xFF, 0xEF, 0xE7,
    };//nconstuint8_t DIG_6[] PROGMEM = 
    {
      0xFE, 0xFF, 0xE7, 0xE7, 0xE7, 0xE7, 0xFF, 0xFE,
    };//dconstuint8_t DIG_7[] PROGMEM = 
    {
      0xFF, 0xFF, 0xE0, 0xFC, 0xFC, 0xE0, 0xFF, 0xFF,
    };//econstuint8_t DIG_8[] PROGMEM = 
    {
      0x7F, 0x7F, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C,
    };//tconstuint8_t DIG_9[] PROGMEM = 
    {
      0xE3, 0xE7, 0xEE, 0xFC, 0xFC, 0xEE, 0xE7, 0xE3,
    };//kconstuint8_t DIG_10[] PROGMEM = 
    {
      0x7E, 0xFF, 0xE7, 0xE7, 0xE7, 0xFF, 0xFF, 0xE7,
    };//aconstuint8_t DIG_11[] PROGMEM = 
    {
      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    };
    constuint8_t SQUARE_1[PIXEL_NUM] PROGMEM = 
    {
      1, 1, 1, 1, 1, 1, 1, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 0, 0, 0, 0, 0, 0, 1,
      1, 1, 1, 1, 1, 1, 1, 1,
    };
    constuint8_t SQUARE_2[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 1, 1, 1, 1, 1, 1, 0,
      0, 1, 0, 0, 0, 0, 1, 0,
      0, 1, 0, 0, 0, 0, 1, 0,
      0, 1, 0, 0, 0, 0, 1, 0,
      0, 1, 0, 0, 0, 0, 1, 0,
      0, 1, 1, 1, 1, 1, 1, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
    };
    constuint8_t SQUARE_3[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 1, 1, 1, 1, 0, 0,
      0, 0, 1, 0, 0, 1, 0, 0,
      0, 0, 1, 0, 0, 1, 0, 0,
      0, 0, 1, 1, 1, 1, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
    };
    constuint8_t SQUARE_4[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 1, 1, 0, 0, 0,
      0, 0, 0, 1, 1, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
    };
    constuint8_t X_Pixel_1[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 1, 0, 0, 1, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 1, 0, 0, 1, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
    };
    constuint8_t X_Pixel_2[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 1, 0, 0, 0, 0, 1, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 1, 0, 0, 0, 0, 1, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
    };
    constuint8_t X_Pixel_3[PIXEL_NUM] PROGMEM = 
    {
      1, 0, 0, 0, 0, 0, 0, 1,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 0, 0, 0, 0, 0, 0, 1,
    };
    constuint8_t X_Ray_1[PIXEL_NUM] PROGMEM = 
    {
      1, 0, 0, 0, 0, 0, 0, 1,
      0, 1, 0, 0, 0, 0, 1, 0,
      0, 0, 1, 0, 0, 1, 0, 0,
      0, 0, 0, 1, 1, 0, 0, 0,
      0, 0, 0, 1, 1, 0, 0, 0,
      0, 0, 1, 0, 0, 1, 0, 0,
      0, 1, 0, 0, 0, 0, 1, 0,
      1, 0, 0, 0, 0, 0, 0, 1,
    };
    constuint8_t X_Ray_2[PIXEL_NUM] PROGMEM = 
    {
      0, 1, 0, 0, 0, 0, 0, 0,
      0, 0, 1, 0, 0, 0, 0, 1,
      0, 0, 0, 1, 0, 0, 1, 0,
      0, 0, 0, 1, 1, 1, 0, 0,
      0, 0, 1, 1, 1, 0, 0, 0,
      0, 1, 0, 0, 1, 0, 0, 0,
      1, 0, 0, 0, 0, 1, 0, 0,
      0, 0, 0, 0, 0, 0, 1, 0,
    };
    constuint8_t X_Ray_3[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 1, 0, 0, 0,
      0, 0, 0, 0, 1, 0, 0, 0,
      0, 0, 0, 0, 1, 0, 0, 0,
      1, 1, 1, 1, 1, 0, 0, 0,
      0, 0, 0, 1, 1, 1, 1, 1,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
    };
    constuint8_t Tetris_1[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
    };
    constuint8_t Tetris_2[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
    };
    constuint8_t Tetris_3[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
    };
    constuint8_t Tetris_4[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 1, 1, 1, 1, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
    };
    constuint8_t Tetris_5[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_6[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 1, 1, 0, 0, 0, 0,
      0, 0, 1, 1, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_7[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 1, 1, 0, 0, 0, 0,
      0, 0, 1, 1, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_8[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 1, 1, 0, 0, 0, 0, 0,
      0, 1, 1, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_9[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 1, 1, 0, 0, 0, 0, 0,
      0, 1, 1, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_10[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_11[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_12[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_13[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 1, 1, 1, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_14[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 1, 1, 1, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_15[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 1, 1, 1, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_16[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 1, 1, 1, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_17[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 1, 1, 1, 0, 0,
      0, 0, 0, 1, 0, 0, 0, 0,
      1, 1, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_18[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 1, 1, 1, 0, 0,
      1, 1, 0, 1, 0, 0, 0, 0,
      1, 1, 0, 0, 1, 1, 1, 1,
    };
    constuint8_t Tetris_19[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 1, 1, 1, 0, 0,
      1, 1, 0, 1, 1, 1, 1, 1,
    };
    constuint8_t Tetris_20[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 1, 1, 0, 0, 0,
      0, 0, 0, 1, 1, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 1, 1, 1, 0, 0,
      1, 1, 0, 1, 1, 1, 1, 1,
    };
    constuint8_t Tetris_21[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 1, 1, 0, 0,
      0, 0, 0, 0, 1, 1, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 1, 1, 1, 0, 0,
      1, 1, 0, 1, 1, 1, 1, 1,
    };
    constuint8_t Tetris_22[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 1, 1, 0,
      0, 0, 0, 0, 0, 1, 1, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 1, 1, 1, 0, 0,
      1, 1, 0, 1, 1, 1, 1, 1,
    };
    constuint8_t Tetris_23[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 1, 1,
      0, 0, 0, 0, 0, 0, 1, 1,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 1, 0, 1, 1, 1, 0, 0,
      1, 1, 0, 1, 1, 1, 1, 1,
    };
    constuint8_t Tetris_24[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 1, 1,
      0, 0, 0, 0, 0, 0, 1, 1,
      1, 1, 0, 1, 1, 1, 0, 0,
      1, 1, 0, 1, 1, 1, 1, 1,
    };
    constuint8_t Tetris_25[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 1, 1,
      1, 1, 0, 1, 1, 1, 1, 1,
      1, 1, 0, 1, 1, 1, 1, 1,
    };
    constuint8_t Tetris_26[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 1, 0, 0, 0, 0, 0,
      0, 0, 1, 0, 0, 0, 0, 0,
      0, 0, 1, 0, 0, 0, 0, 0,
      0, 0, 1, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 1, 1,
      1, 1, 0, 1, 1, 1, 1, 1,
      1, 1, 0, 1, 1, 1, 1, 1,
    };
    constuint8_t Tetris_27[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 1, 0, 0, 0, 0, 0, 0,
      0, 1, 0, 0, 0, 0, 0, 0,
      0, 1, 0, 0, 0, 0, 0, 0,
      0, 1, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 1, 1,
      1, 1, 0, 1, 1, 1, 1, 1,
      1, 1, 0, 1, 1, 1, 1, 1,
    };
    constuint8_t Tetris_28[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 0, 0, 0, 0, 0, 0,
      1, 0, 0, 0, 0, 0, 0, 0,
      1, 0, 0, 0, 0, 0, 0, 0,
      1, 0, 0, 0, 0, 0, 0, 0,
      1, 0, 0, 0, 0, 0, 1, 1,
      1, 1, 0, 1, 1, 1, 1, 1,
      1, 1, 0, 1, 1, 1, 1, 1,
    };
    constuint8_t Tetris_29[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 1, 0, 0, 0, 0,
      0, 0, 1, 1, 1, 0, 0, 0,
      1, 0, 0, 1, 0, 0, 0, 0,
      1, 0, 0, 1, 0, 0, 0, 0,
      1, 0, 0, 0, 0, 0, 0, 0,
      1, 0, 0, 0, 0, 0, 1, 1,
      1, 1, 0, 1, 1, 1, 1, 1,
      1, 1, 0, 1, 1, 1, 1, 1,
    };
    constuint8_t Tetris_30[PIXEL_NUM] PROGMEM = 
    {
      0, 0, 0, 0, 0, 0, 0, 0,
      0, 0, 1, 0, 0, 0, 0, 0,
      1, 1, 1, 1, 0, 0, 0, 0,
      1, 0, 1, 0, 0, 0, 0, 0,
      
        

    Also popular now: