MacroBoard-ArduinoCode/Maybe/animations.h

109 lines
3.8 KiB
C
Raw Normal View History

int currentAnimationID = 0;
2022-09-15 20:34:54 +00:00
struct AnimationData
{
const uint8_t *animationPtr;
2022-09-25 20:58:14 +00:00
const unsigned int animationFrameCount;
const bool animationLooping;
};
//animations created using https://jasonacox.github.io/TM1637TinyDisplay/examples/7-segment-animator.html
/* Animation Data - HGFEDCBA Map */
2022-09-25 20:58:14 +00:00
const uint8_t ANIMATION1[][4] = {
{ 0x00, 0x00, 0x00, 0x01 }, // Frame 0
{ 0x00, 0x00, 0x01, 0x00 }, // Frame 1
{ 0x00, 0x01, 0x00, 0x00 }, // Frame 2
{ 0x01, 0x00, 0x00, 0x00 }, // Frame 3
{ 0x20, 0x00, 0x00, 0x00 }, // Frame 4
{ 0x10, 0x00, 0x00, 0x00 }, // Frame 5
{ 0x08, 0x00, 0x00, 0x00 }, // Frame 6
{ 0x00, 0x08, 0x00, 0x00 }, // Frame 7
{ 0x00, 0x00, 0x08, 0x00 }, // Frame 8
{ 0x00, 0x00, 0x00, 0x08 }, // Frame 9
{ 0x00, 0x00, 0x00, 0x04 }, // Frame 10
{ 0x00, 0x00, 0x00, 0x02 }, // Frame 11
{ 0x00, 0x00, 0x01, 0x01 }, // Frame 12
{ 0x01, 0x01, 0x00, 0x00 }, // Frame 13
{ 0x30, 0x00, 0x00, 0x00 }, // Frame 14
{ 0x08, 0x08, 0x00, 0x00 }, // Frame 15
{ 0x00, 0x00, 0x08, 0x08 }, // Frame 16
{ 0x00, 0x00, 0x00, 0x06 }, // Frame 17
{ 0x00, 0x01, 0x01, 0x01 }, // Frame 18
{ 0x31, 0x00, 0x00, 0x00 }, // Frame 19
{ 0x08, 0x08, 0x08, 0x00 }, // Frame 20
{ 0x00, 0x00, 0x00, 0x0e }, // Frame 21
{ 0x01, 0x01, 0x01, 0x01 }, // Frame 22
{ 0x38, 0x08, 0x00, 0x00 }, // Frame 23
{ 0x00, 0x00, 0x08, 0x0e }, // Frame 24
{ 0x31, 0x01, 0x01, 0x01 }, // Frame 25
{ 0x08, 0x08, 0x08, 0x0e }, // Frame 26
{ 0x39, 0x09, 0x09, 0x0f }, // Frame 27
{ 0x46, 0x76, 0x76, 0x70 }, // Frame 28
};
/* Animation Data - HGFEDCBA Map */
const uint8_t ANIMATION2[][4] = {
{ 0x00, 0x40, 0x40, 0x00 }, // Frame 0
{ 0x00, 0x40, 0x40, 0x00 }, // Frame 0
{ 0x00, 0x49, 0x49, 0x00 }, // Frame 1
{ 0x40, 0x49, 0x49, 0x40 }, // Frame 2
{ 0x40, 0x09, 0x09, 0x40 }, // Frame 3
{ 0x09, 0x00, 0x00, 0x09 }, // Frame 4
};
/* Animation Data - HGFEDCBA Map */
const uint8_t ANIMATION3[][4] = {
{ 0x00, 0x40, 0x40, 0x00 }, // Frame 0
{ 0x40, 0x40, 0x40, 0x40 }, // Frame 1
{ 0x40, 0x09, 0x09, 0x40 }, // Frame 2
{ 0x09, 0x09, 0x09, 0x09 }, // Frame 3
{ 0x09, 0x00, 0x00, 0x09 }, // Frame 4
{ 0x00, 0x00, 0x00, 0x00 }, // Frame 5
{ 0x39, 0x3f, 0x37, 0x71 },
{ 0x39, 0x3f, 0x37, 0x71 },
{ 0x39, 0x3f, 0x37, 0x71 },
{ 0x39, 0x3f, 0x37, 0x71 },
{ 0x39, 0x3f, 0x37, 0x71 },
{ 0x39, 0x3f, 0x37, 0x71 },
{ 0x00, 0x00, 0x00, 0x00 },
};
/* Animation Data - HGFEDCBA Map */
const uint8_t ANIMATION4[][4] = {
{ 0x09, 0x00, 0x00, 0x09 }, // Frame 0
{ 0x09, 0x09, 0x09, 0x09 }, // Frame 1
{ 0x40, 0x09, 0x09, 0x40 }, // Frame 2
{ 0x40, 0x40, 0x40, 0x40 }, // Frame 3
{ 0x00, 0x40, 0x40, 0x00 }, // Frame 4
{ 0x00, 0x00, 0x00, 0x00 }, // Frame 5
2022-09-25 20:58:14 +00:00
{ 0x00, 0x00, 0x00, 0x00 }, // Frame 5
{ 0x00, 0x00, 0x00, 0x00 }, // Frame 5
};
/* Animation Data - HGFEDCBA Map */
const uint8_t ANIMATION5[13][4] = {
{ 0x39, 0x09, 0x09, 0x0f }, // Frame 0
{ 0x39, 0x08, 0x09, 0x0f }, // Frame 1
{ 0x38, 0x09, 0x09, 0x0f }, // Frame 2
{ 0x19, 0x09, 0x09, 0x0f }, // Frame 3
{ 0x29, 0x09, 0x09, 0x0f }, // Frame 4
{ 0x31, 0x09, 0x09, 0x0f }, // Frame 5
{ 0x39, 0x01, 0x09, 0x0f }, // Frame 6
{ 0x39, 0x09, 0x01, 0x0f }, // Frame 7
{ 0x39, 0x09, 0x09, 0x07 }, // Frame 8
{ 0x39, 0x09, 0x09, 0x0b }, // Frame 9
{ 0x39, 0x09, 0x09, 0x0d }, // Frame 10
{ 0x39, 0x09, 0x09, 0x0e }, // Frame 11
{ 0x39, 0x09, 0x08, 0x0f } // Frame 12
};
AnimationData animData[] =
{
2022-09-25 20:58:14 +00:00
{(const uint8_t*)ANIMATION1, sizeof(ANIMATION1) / (sizeof(const uint8_t)*4), false},
{(const uint8_t*)ANIMATION2, sizeof(ANIMATION2) / (sizeof(const uint8_t)*4), false},
{(const uint8_t*)ANIMATION3, sizeof(ANIMATION3) / (sizeof(const uint8_t)*4), false},
{(const uint8_t*)ANIMATION4, sizeof(ANIMATION4) / (sizeof(const uint8_t)*4), false},
{(const uint8_t*)ANIMATION5, sizeof(ANIMATION5) / (sizeof(const uint8_t)*4), true}
};