Suzu Tomo / Mbed OS 2020_ChristmasLED

Dependencies:   WS2812B_SPI

starwars.h

Committer:
Suzutomo
Date:
2020-11-07
Revision:
0:943dfa56009a

File content as of revision 0:943dfa56009a:

void StarWars()
{
    calcBar = 0;

    doLedStop = true;

// Intro
    TempoWait(8*4,1);
    FadeLED(3*4,1,0xFFFF00,1);

// A
    LightLED(8*4-1,0xFF00FF,1);

// B
    LightLED(3*4+1,0x0000FF,1);
    LightLED(1*4,0x00FF00,1);
    LightLED(2*4,0x0000FF,1);
    LightLED(1*4,0xFF0000,1);
    LightLED(2*4,0xFF8000,1);

// C
    LightLED(7*4,0x8000FF,1);

// D
    LightLED(2*4-1,0xFFFFFF,1);

    FadeLED(7,0,0xFFFF00,1);
    FadeLED(6,0,0xFF8000,1);
    LightLED(2*4,0xFF0000,1);
    LightLED(0,0x101010,1);

    doLedStop = false;
    while (doRhythm == true);

// E
    while (doRhythm == false);
    calcBar = 0;

// F
    for (int i = 0; i < 7; i++) {
        LightLED(3,0xFF8000,1);
        LightLED(1,0xFF0000,1);
    }
    doLedStop = true;
    LightLED(2*4,0xFF8000,1);
    for (int i = 0; i < 2; i++) {
        LightLED(1.5,0xFF0000,1);
        LightLED(2.5,0xFF8000,1);
    }
    LightLED(2*4,0xFF8000,1);
    for (int i = 0; i < 2; i++) {
        LightLED(1.5,0xFF0000,1);
        LightLED(2.5,0xFF8000,1);
    }
    LightLED(1*4,0xFF8000,1);

// G
    for (int i = 0; i < 3; i++) {
        LightLED(3,0xFF8000,1);
        LightLED(1,0xFF0000,1);
    }
    FadeLED(4,0,0xFF0000,1);

// H
    for (int i = 0; i < 3; i++) {
        FadeLED(2,0,0x0000FF,1);
        FadeLED(2,1,0x0000FF,1);
    }
    FadeLED(4,0,0x00FF00,1);

// I
    LightLED(4*4+1,0x0000FF,1);
    LightLED(3,0xFF0000,1);
    LightLED(4*4,0x0000FF,1);
    FadeLED(4,0,0xFF0000,1);

    LightLED(4*4,0xFF0000,1);
    LightLED(4*4,0xFFFF00,1);

// J
    LightLED(8*4,0x00FF00,1);

// K
    FadeLED(4,0,0xFF0000,1);
    FadeLED(4,1,0xFF0000,1);
    FadeLED(2*4,0,0xFF0000,1);
    for (int i = 0; i < 2; i++) {
        LightLED(1,0xFF0000,1);
        LightLED(1,0x000000,1);
    }

// L
    for (int i = 0; i < 8; i++) {
        LightLED(1,0xFF0000,1);
        LightLED(1,0x000000,1);
    }

// M
    FadeLED(4,0,0xFF0000,1);

    for (int i = 0; i < 2; i++) {
        LightLED(2,0xFFFF00,1);
        LightLED(2,0xFF0000,1);
    }
    LightLED(2,0xFFFF00,1);
    LightLED(6,0xFF0000,1);
    for (int i = 0; i < 2; i++) {
        LightLED(2,0xFFFF00,1);
        LightLED(2,0xFF0000,1);
    }

// N
    LightLED(0,0x8000FF,1);

    doLedStop = false;
    while (doRhythm == true);

// O

// P
    while (doRhythm == false);
    calcBar = 0;

    FadeLED(3.75,0,0xFFFF00,1);
    doLedStop = true;
    LightLED(5*4,0x00FF00,1);
    LightLED(2*4,0xFFFFFF,1);
    doLedStop = false;
    LightLED(0.75+4,0x0000FF,1);
    FadeLED(5,0,0x0000FF,1);
    LightLED(0,0xFFFFFF,1);

// End
}