×
Create a new article
Write your page title here:
We currently have 3,189 articles on s23. Type your article name above or create one of the articles listed here!



    s23
    3,189Articles

    5x5x5 LedCube: Difference between revisions

    Content added Content deleted
    imported>Talisman
    m (videos added)
    imported>Talisman
    mNo edit summary
    Line 3:
    <youtube>1zFYon6LY4E</youtube>
     
    Juhu der groessere Bruder ist da xD
    Das Ansprechen der Ports direkt ohne die Pinwritebefehle, verbraucht massiv weniger Platz auf dem Chip!
    endlich genug Pins um den 5x5x5 komplett anzusteuern
    <pre>
    PORTB = B00111111;
    PORTD = B11100000;
    </pre>
    anstatt
    <pre>
    digitalWrite(p13,HIGH);
    digitalWrite(p12,HIGH);
    digitalWrite(p11,HIGH);
    digitalWrite(p10,HIGH);
    digitalWrite(p9,HIGH);
    digitalWrite(p8,HIGH);
    digitalWrite(p7,HIGH);
    digitalWrite(p6,HIGH);
    digitalWrite(p5,HIGH);
    digitalWrite(p4,LOW);
    digitalWrite(p3,LOW);
    digitalWrite(p2,LOW);
    digitalWrite(p1,LOW);
    digitalWrite(p0,LOW);
    </pre>
    siehe auch
    * http://www.arduino.cc/en/Reference/PortManipulation
     
    --[[User:Talisman|Talisman]] 17:38, 28 February 2010 (UTC)
     
    <tt>schaltung:</tt>
    Bauphase:
    * http://www.h23.org/ledcube/
     
    der wuerfel 5x5x5 (5 Anoden 25 Kathoden)
    code:
    jeweils pro ausgang am wuerfel ein pin
    <pre>
    //pin belegung
    //13 12 11 gruen
    //10 9 8 lila
    //7 6 5 blau
    //4 3 2 1 0 black
     
    3x drehpoti 10k + 1x schiebepoti 1k
    int anode1[] = {5, 6, 7, 8, 9, 10, 11, 12, 13};
    diese sind jeweils an einen analogen eingang angeschlossen und liefern linearen wert zurueck
    int cathode1[] = {0, 1, 2, 3, 4};
    int anode[] = {0, 1, 2, 3, 4};
    int cathode[] = {5, 6, 7, 8, 9, 10, 11, 12, 13};
     
    zb um das delay einzustellen oder durch die programme zu wechseln
    int p13 = 13;
    int p12 = 12;
    int p11 = 11;
    int p10 = 10;
    int p9 = 9;
    int p8 = 8;
    int p7 = 7;
    int p6 = 6;
    int p5 = 5;
    int p4 = 4;
    int p3 = 3;
    int p2 = 2;
    int p1 = 1;
    int p0 = 0;
     
     
    <tt>code:</tt>
    <pre>
    int sensorPin = 0;
    int sensorValue = 0;
    int sensorMin = 10230; // minimum sensor value
    int sensorMax = 01023;
    int sensorPin2 = 1;
    int sensorValue2 = 0;
    int sensorMin2 = 0; // minimum sensor value
    int sensorMax2 = 1023;
    int sensorPin3 = 2;
    int sensorValue3 = 0;
    int sensorMin3 = 0; // minimum sensor value
    int sensorMax3 = 1023;
    int sensorPin4 = 3;
    int sensorValue4 = 0;
    int sensorMin4 = 0; // minimum sensor value
    int sensorMax4 = 1023;
     
    // Anoden der 125 LEDs
    int LED1;
    int r1;anode[] = {
    8, 9, 10, 11, 12};
     
    int R;
     
    // 5 Kathodenebenen
    int ce1[] = {
    22, 23, 24, 25, 26};
    int ce2[] = {
    30, 31, 32, 33, 34};
    int ce3[] = {
    38, 39, 40, 41, 42};
    int ce4[] = {
    46, 47, 48, 49, 50};
    int ce5[] = {
    70, 71, 72, 73, 74};
    // alle Kathodenebenen
    int ce[] = {
    22, 23, 24, 25, 26, 30, 31, 32, 33, 34, 38, 39, 40, 41, 42, 46, 47, 48, 49, 50,70, 71, 72, 73, 74};
     
    // 5 Kathodenflächen
    int cf1[] = {
    22, 30, 38, 46, 70};
    int cf2[] = {
    23, 31, 39, 47, 71};
    int cf3[] = {
    24, 32, 40, 48, 72};
    int cf4[] = {
    25, 33, 41, 49, 73};
    int cf5[] = {
    26, 34, 42, 50, 74};
    // alle Kathodenflächen
    int cf[] = {
    22, 30, 38, 46, 70, 23, 31, 39, 47, 71, 24, 32, 40, 48, 72, 25, 33, 41, 49, 73, 26, 34, 42, 50, 74};
     
    /// zur fehler suche
    long heartBeatArray[] = {
    50, 100, 15, 1200};
    int hbeatIndex = 1; // this initialization is important or it starts on the "wrong foot"
    long prevMillis;
     
     
    void setup() {
    randomSeed(analogRead(15)); //// hier wird random initizialisiert, nicht aendern!!!!
    pinMode(p13, OUTPUT);
    for (int a = 0; a < 5; a++) { // Alle Anoden auf OUTPUT
    pinMode(p12, OUTPUT);
    pinMode(p11anode[a], OUTPUT);
    }
    pinMode(p10, OUTPUT);
    for (int c = 0; c < 25; c++) { // Alle Kathoden auf OUTPUT
    pinMode(p9, OUTPUT);
    pinMode(p8ce[c], OUTPUT);
    digitalWrite(ce[c], HIGH); // Alles ausstellen
    pinMode(p7, OUTPUT);
    }
    pinMode(p6, OUTPUT);
    pinMode(p5, OUTPUT);
    pinMode(p4, OUTPUT);
    pinMode(p3, OUTPUT);
    pinMode(p2, OUTPUT);
    pinMode(p1, OUTPUT);
    pinMode(p0, OUTPUT);
    digitalWrite(p13,HIGH);
    digitalWrite(p12,HIGH);
    digitalWrite(p11,HIGH);
    digitalWrite(p10,HIGH);
    digitalWrite(p9,HIGH);
    digitalWrite(p8,HIGH);
    digitalWrite(p7,HIGH);
    digitalWrite(p6,HIGH);
    digitalWrite(p5,LOW);
    digitalWrite(p4,LOW);
    digitalWrite(p3,LOW);
    digitalWrite(p2,LOW);
    digitalWrite(p1,LOW);
    digitalWrite(p0,LOW);
     
    }
     
    void loop() {
     
    noInterrupts();
     
    sensorValue = analogRead(sensorPin);
    Line 123 ⟶ 100:
    sensorValue = constrain(sensorValue, 0, 1023);
    sensorValue2 = analogRead(sensorPin2);
    sensorValue2 = map(sensorValue2, sensorMin2, sensorMax2, 0, 45255);
    sensorValue2 = constrain(sensorValue2, 0, 45255);
    sensorValue3 = analogRead(sensorPin3);
    sensorValue3 = map(sensorValue3, sensorMin3, sensorMax3, 0, 2627);
    sensorValue3 = constrain(sensorValue3, 0, 2627);
    sensorValue4 = analogRead(sensorPin4);
    sensorValue4 = map(sensorValue4, sensorMin4, sensorMax4, 0, 27);
    Line 133 ⟶ 110:
     
     
    interrupts();
    int PW;
    PW = (sensorValue4);
    switch (PW)
    {
    case 0:
    ///alle Potis auf null und anmachen hier ist start (spielplatz)
    aus();
     
    ebene(1, 1);
    break;
    d1();
    aus();
    ebene(2, 2);
    d1();
    aus();
    ebene(3, 3);
    d1();
    aus();
    ebene(4, 4);
    d1();
    aus();
    ebene(5, 5);
    d1();
    aus();
     
    //// ende spielplatz
     
    break;
    case 1:
    fa1random();
    //// Lauflicht 1 6 11 3 7 12 usw
    lauflicht1();
    ////
    break;
    case 2:
    ff1random();
    //// Lauflicht 2
    lauflicht2()break;
    ////
    break;
    case 3:
     
    ////Saulen 1-15
    saeulen1R = random(1, 3);
    ////switch(R){
    case 1:
    fa1random();
    break;
    case 2:
    ff1random();
    break;
    }
     
    break;
    case 4:
    //// Lines 1-6fa2random();
    lines1();
    ////
    break;
    case 5:
    ff2random();
    //// reihen 1-15
    reihen1();
    ////
    break;
    case 6:
     
    //// s.o.
    saeulen1R = random(1, 3);
    lines1switch(R);{
    reihen1();case 1:
    //// fa2random();
    break;
    case 2:
    ff2random();
    break;
    }
     
    break;
    case 7:
     
    ////flaeche1 9x9
    flaeche1R = random(1, 5);
    ////switch(R){
    case 1:
    fa1random();
    break;
    case 2:
    ff2random();
    break;
    case 3:
    fa1random();
    break;
    case 4:
    ff2random();
    break;
    }
     
    break;
    case 8:
    ////flache2 3x5
    flaeche2();
    ////
    break;
    case 9:
    ////flaeche3 3x15 2
    flaeche3();
    ////
    break;
    case 10:
    ////s.o.
    flaeche1();
    flaeche2();
    flaeche3();
    ////
    break;
    case 11:
    ////zufalls licht 1
    random1();
    ////
    break;
    case 12:
    ////
    heartBeat(1.0); // try changing the parameter
    ////
    break;
    case 13:
    /// random reihe
    reihen1random();
    ///
    break;
    case 14:
    /// random line
    lines1random();
    ///
    break;
    case 15:
    /// random reihe
    saeulen1random();
    ///
    break;
    case 16:
    /// random reihe
    LED1 = (random (0, 3));
    switch (LED1){
    case 0:
    reihen1random();
    break;
    case 1:
    lines1random();
    break;
    case 2:
    saeulen1random();
    break;
     
    R = random(0, 3);
    }
    switch (R){
    ///
    break;
    case 17:
    /// random reihe
    flaeche1random();
    ///
    break;
    case 18:
    /// random reihe
    flaeche2random();
    ///
    break;
    case 19:
    /// random reihe
    flaeche3random();
    ///
    break;
    case 20:
    /// random reihe
    LED1 = (random (0, 3));
    switch (LED1){
    case 0:
    ebene(random(1, 6),random(1, 6));
    flaeche1random();
    break d1();
    case 1:aus();
    flaeche2random() break;
    break;case 1:
    flaeche(random(1, 6),random(1, 6));
    case 2:
    flaeche3random d1();
    break aus();
    break;
    case 2:
     
    reihe(random(1, 26),0);
    }
    d1();
    ///
    break aus();
    break;
     
    case 21:}
    LED1 = (random (0, 8));
    switch (LED1){
    case 0:
    flaeche1random();
    break;
    case 1:
    flaeche2random();
    break;
    case 3:
    flaeche3random();
    break;
    case 4:
    reihen1random();
    break;
    case 5:
    lines1random();
    break;
    case 6:
    saeulen1random();
    break;
    case 7:
    random1();
    break;
    }
     
    break;
     
    case 22:
    an();
    break;
     
     
    case 23:
    oneByOne();
    break;
    case 24:
    oneByOne1();
    break;
    case 25:
    oneByOne2();
    break;
    case 26:
    oneByOne3();
    break;
     
    case 27:
    oneByOne4();
    break;
     
     
     
    break;
    default:
    aus();
    Line 333 ⟶ 220:
    }
     
    int PW2;
     
    PW2 = (sensorValue3);
     
    switch (PW2)
     
    {
     
    case 0:
     
    aus();
     
    break;
     
     
     
     
     
     
     
     
     
     
     
     
     
     
    }
    /////////////////////////////////
    /////////////////////////////////
     
     
     
    void flaeche3random(){
    LED1 = (random (0,3));
    switch (LED1){
    case 0:
    W1();
    d1();
    break;
     
    case 1:
    W2();
    d1();
    break;
    case 2:
    W3();
    d1();
    break;
    }}
     
    void flaeche3(){
    W1();
    d1();
    W2();
    d1();
    W3();
    d1();
    }
    void flaeche2(){
    E1();
    d1();
    E2();
    d1();
    E3();
    d1();
    }
    void flaeche1(){
    Q1();
    d1();
    Q2();
    d1();
    Q3();
    d1();
    Q4();
    d1();
    Q5();
    d1();
    }
     
    void flaeche2random(){
    LED1 = (random (0,3));
    switch (LED1){
    case 0:
    E1();
    d1();
    break;
     
    case 1:
    E2();
    d1();
    break;
    case 2:
    E3();
    d1();
    break;
    }}
     
    void flaeche1random(){
    LED1 = (random (0,5));
    switch (LED1){
    case 0:
    Q1();
    d1();
    break;
     
    case 1:
    Q2();
    d1();
    break;
    case 2:
    Q3();
    d1();
    break;
     
    case 3:
    Q4();
    d1();
    break;
    case 4:
    Q5();
    d1();
    break;
    }
    }
    void reihen1(){
    aR1();
    d1();
    aR2();
    d1();
    aR3();
    d1();
    aR4();
    d1();
    aR5();
    d1();
    bR1();
    d1();
    bR2();
    d1();
    bR3();
    d1();
    bR4();
    d1();
    bR5();
    d1();
    cR1();
    d1();
    cR2();
    d1();
    cR3();
    d1();
    cR4();
    d1();
    cR5();
    d1();
    }
    void reihen1random(){
    LED1 = (random (0,16));
    switch (LED1){
    case 0:
    aR1();
    d1();
    break;
    case 1:
    aR2 f1();
    break;
    d1();
    break;
    case 2:
    aR3 f2();
    break;
    d1();
    break;
    case 4:
    aR4();
    d1();
    break;
    case 5:
    aR5();
    d1();
    break;
    case 6:
    bR1();
    d1();
    break;
    case 7:
    bR2();
    d1();
    break;
    case 8:
    bR3();
    d1();
    break;
    case 9:
    bR4();
    d1();
    break;
    case 10:
    bR5();
    d1();
    break;
    case 11:
    cR1();
    d1();
    break;
    case 12:
    cR2();
    d1();
    break;
    case 13:
    cR3();
    d1();
    break;
    case 14:
    cR4();
    d1();
    break;
    case 15:
    cR5();
    d1();
    break;
    }
    }
     
     
    void lines1random(){
    LED1 = (random (0,9));
    switch (LED1){
    case 0:
    aL1();
    d1();
    break;
    case 1:
    aL2();
    d1();
    break;
    case 2:
    aL3();
    d1();
    break;
    case 3:
    bL1 f1();
    d1 f2();
    break;
    case 4:
    bL2 f1();
    d1 f2();
    break f2();
    f1();
    break;
    case 5:
    bL3();
    d1();
    break;
    case 6:
    cL1();
    d1();
    break;
    case 7:
    cL2();
    d1();
    break;
    case 8:
    cL3();
    d1();
    break;
    }}
    void lines1(){
    aL1();
    d1();
    aL2();
    d1();
    aL3();
    d1();
    bL1();
    d1();
    bL2();
    d1();
    bL3();
    d1();
    cL1();
    d1();
    cL2();
    d1();
    cL3();
    d1();
    }
     
    R = random(1, 3);
    void saeulen1random(){
    switch (R){
    LED1 = (random (0,16));
    case 1:
    switch (LED1){
    case 0: f1();
    S1() break;
    case 2:
    d1();
    break f2();
    break;
    case 1:
    S2(); }
    d1();
    break;
    case 2:
    S3();
    d1();
    break;
    case 4:
    S4();
    d1();
    break;
    case 5:
    S5();
    d1();
    break;
    case 6:
    S6();
    d1();
    break;
    case 7:
    S7();
    d1();
    break;
    case 8:
    S8();
    d1();
    break;
    case 9:
    S9();
    d1();
    break;
    case 10:
    S10();
    d1();
    break;
    case 11:
    S11();
    d1();
    break;
    case 12:
    S12();
    d1();
    break;
    case 13:
    S13();
    d1();
    break;
    case 14:
    S14();
    d1();
    break;
    case 15:
    S15();
    d1();
    break;
    }
    }
    void saeulen1(){
    S1();
    d1();
    S2();
    d1();
    S3();
    d1();
    S4();
    d1();
    S5();
    d1();
    S6();
    d1();
    S7();
    d1();
    S8();
    d1();
    S9();
    d1();
    S10();
    d1();
    S11();
    d1();
    S12();
    d1();
    S13();
    d1();
    S14();
    d1();
    S15();
    d1();
    }
     
    break;
     
    default:
    void lauflicht1(){
    aD1 aus();
    d1() break;
    aD6();}
    d1();
    aD11();
    d1();
    aD2();
    d1();
    aD7();
    d1();
    aD12();
    d1();
    aD3();
    d1();
    aD8();
    d1();
    aD13();
    d1();
    aD4();
    d1();
    aD9();
    d1();
    aD14();
    d1();
    aD5();
    d1();
    aD10();
    d1();
    aD15();
    d1();
    bD1();
    d1();
    bD6();
    d1();
    bD11();
    d1();
    bD2();
    d1();
    bD7();
    d1();
    bD12();
    d1();
    bD3();
    d1();
    bD8();
    d1();
    bD13();
    d1();
    bD4();
    d1();
    bD9();
    d1();
    bD14();
    d1();
    bD5();
    d1();
    bD10();
    d1();
    bD15();
    d1();
    cD1();
    d1();
    cD6();
    d1();
    cD11();
    d1();
    cD2();
    d1();
    cD7();
    d1();
    cD12();
    d1();
    cD3();
    d1();
    cD8();
    d1();
    cD13();
    d1();
    cD4();
    d1();
    cD9();
    d1();
    cD14();
    d1();
    cD5();
    d1();
    cD10();
    d1();
    cD15();
    d1();
    }
     
    void lauflicht2(){
    aD1();
    d1();
    aD2();
    d1();
    aD3();
    d1();
    aD4();
    d1();
    aD5();
    d1();
    aD10();
    d1();
    aD9();
    d1();
    aD8();
    d1();
    aD7();
    d1();
    aD6();
    d1();
    aD11();
    d1();
    aD12();
    d1();
    aD13();
    d1();
    aD14();
    d1();
    aD15();
    d1();
    bD15();
    d1();
    bD14();
    d1();
    bD13();
    d1();
    bD12();
    d1();
    bD11();
    d1();
    bD6();
    d1();
    bD7();
    d1();
    bD8();
    d1();
    bD9();
    d1();
    bD10();
    d1();
    bD5();
    d1();
    bD4();
    d1();
    bD3();
    d1();
    bD2();
    d1();
    bD1();
    d1();
    cD1();
    d1();
    cD2();
    d1();
    cD3();
    d1();
    cD4();
    d1();
    cD5();
    d1();
    cD10();
    d1();
    cD9();
    d1();
    cD8();
    d1();
    cD7();
    d1();
    cD6();
    d1();
    cD11();
    d1();
    cD12();
    d1();
    cD13();
    d1();
    cD14();
    d1();
    cD15();
    d1();
     
    cD15();
    d1();
    cD10();
    d1();
    cD5();
    d1();
    cD4();
    d1();
    cD9();
    d1();
    cD14();
    d1();
    cD13();
    d1();
    cD8();
    d1();
    cD3();
    d1();
    cD2();
    d1();
    cD7();
    d1();
    cD12();
    d1();
    cD11();
    d1();
    cD6();
    d1();
    cD1();
    d1();
     
     
    bD1();
    d1();
    bD6();
    d1();
    bD11();
    d1();
    bD12();
    d1();
    bD7();
    d1();
    bD2();
    d1();
    bD3();
    d1();
    bD8();
    d1();
    bD13();
    d1();
    bD14();
    d1();
    bD9();
    d1();
    bD4();
    d1();
    bD5();
    d1();
    bD10();
    d1();
    bD15();
    d1();
     
     
     
    aD15();
    d1();
    aD10();
    d1();
    aD5();
    d1();
    aD4();
    d1();
    aD9();
    d1();
    aD14();
    d1();
    aD13();
    d1();
    aD8();
    d1();
    aD3();
    d1();
    aD2();
    d1();
    aD7();
    d1();
    aD12();
    d1();
    aD11();
    d1();
    aD6();
    d1();
    aD1();
    d1();
    }
     
    /////////////////////////////////
    ///// void zone!!!!!/////////////
    ///// void zone!!!!!/////////////
    ///// void zone!!!!!/////////////
    ////////////////////////////////
    void d1(){
    delay(sensorValue);
    Line 1,002 ⟶ 273:
    sensorValue3 = analogRead(sensorPin3);
    sensorValue4 = analogRead(sensorPin4);
    }
    void aus(){
    PORTB = B00111111;
    PORTD = B11100000;
    sensorValue = analogRead(sensorPin);
    }
    void an(){
    PORTB = B00000000;
    PORTD = B00011111;
    sensorValue = analogRead(sensorPin);
    }
    void aR1(){
    PORTB = B00111111;
    PORTD = B00010000;
    sensorValue = analogRead(sensorPin);
    }
    void aR2(){
    PORTB = B00111111;
    PORTD = B00001000;
    sensorValue = analogRead(sensorPin);
    }
    void aR3(){
    PORTB = B00111111;
    PORTD = B00000100;
    sensorValue = analogRead(sensorPin);
    }
    void aR4(){
    PORTB = B00111111;
    PORTD = B00000010;
    sensorValue = analogRead(sensorPin);
    }
    void aR5(){
    PORTB = B00111111;
    PORTD = B00000001;
    sensorValue = analogRead(sensorPin);
    }
     
    void bR1anaus(int x){ {
    switch (x){
    PORTB = B00111000;
    case 0:
    PORTD = B11110000;
    aus();
    sensorValue = analogRead(sensorPin);
    break;
    }
    case 1:
    void bR2(){
    an();
    PORTB = B00111000;
    break;
    PORTD = B11101000;
    case 2:
    sensorValue = analogRead(sensorPin);
    }
    void bR3(){
    PORTB = B00111000;
    PORTD = B11100100;
    sensorValue = analogRead(sensorPin);
    }
    void bR4(){
    PORTB = B00111000;
    PORTD = B11100010;
    sensorValue = analogRead(sensorPin);
    }
    void bR5(){
    PORTB = B00111000;
    PORTD = B11100001;
    sensorValue = analogRead(sensorPin);
    }
     
    R = random (1, 3);
    void cR1(){
    switch (R){
    PORTB = B00000111;
    case 1:
    PORTD = B11110000;
    an();
    sensorValue = analogRead(sensorPin);
    break;
    }
    case 2:
    void cR2(){
    PORTB = B00000111aus();
    PORTD = B11101000break;
    }
    sensorValue = analogRead(sensorPin);
    }
    void cR3(){
    PORTB = B00000111;
    PORTD = B11100100;
    sensorValue = analogRead(sensorPin);
    }
    void cR4(){
    PORTB = B00000111;
    PORTD = B11100010;
    sensorValue = analogRead(sensorPin);
    }
    void cR5(){
    PORTB = B00000111;
    PORTD = B11100001;
    sensorValue = analogRead(sensorPin);
    }
     
    break;
     
    }
    void aL1(){
    PORTB = B00111111;
    PORTD = B11011111;
    sensorValue = analogRead(sensorPin);
    }
    void aL2(){
    PORTB = B00111111;
    PORTD = B10111111;
    sensorValue = analogRead(sensorPin);
    }
    void aL3(){
    PORTB = B00111111;
    PORTD = B01111111;
    sensorValue = analogRead(sensorPin);
    }
     
    void bL1(){
    PORTB = B00111110;
    PORTD = B11111111;
    sensorValue = analogRead(sensorPin);
    }
    void bL2(){
    PORTB = B00111101;
    PORTD = B11111111;
    sensorValue = analogRead(sensorPin);
    }
    void bL3(){
    PORTB = B00111011;
    PORTD = B11111111;
    sensorValue = analogRead(sensorPin);
    }
     
    void cL1(){
    PORTB = B00110111;
    PORTD = B11111111;
    sensorValue = analogRead(sensorPin);
    }
    void cL2(){
    PORTB = B00101111;
    PORTD = B11111111;
    sensorValue = analogRead(sensorPin);
    }
    void cL3(){
    PORTB = B00011111;
    PORTD = B11111111;
    sensorValue = analogRead(sensorPin);
    }
     
    void aD1(){
    PORTB = B00111111;
    PORTD = B11010000;
    sensorValue = analogRead(sensorPin);
    }
    void aD2(){
    PORTB = B00111111;
    PORTD = B11001000;
    sensorValue = analogRead(sensorPin);
    }
    void aD3(){
    PORTB = B00111111;
    PORTD = B11000100;
    sensorValue = analogRead(sensorPin);
    }
    void aD4(){
    PORTB = B00111111;
    PORTD = B11000010;
    sensorValue = analogRead(sensorPin);
    }
    void aD5(){
    PORTB = B00111111;
    PORTD = B11000001;
    sensorValue = analogRead(sensorPin);
    }
    void aD6(){
    PORTB = B00111111;
    PORTD = B10110000;
    sensorValue = analogRead(sensorPin);
    }
    void aD7(){
    PORTB = B00111111;
    PORTD = B10101000;
    sensorValue = analogRead(sensorPin);
    }
    void aD8(){
    PORTB = B00111111;
    PORTD = B10100100;
    sensorValue = analogRead(sensorPin);
    }
    void aD9(){
    PORTB = B00111111;
    PORTD = B10100010;
    sensorValue = analogRead(sensorPin);
    }
    void aD10(){
    PORTB = B00111111;
    PORTD = B10100001;
    sensorValue = analogRead(sensorPin);
    }
    void aD11(){
    PORTB = B00111111;
    PORTD = B01110000;
    sensorValue = analogRead(sensorPin);
    }
    void aD12(){
    PORTB = B00111111;
    PORTD = B01101000;
    sensorValue = analogRead(sensorPin);
    }
    void aD13(){
    PORTB = B00111111;
    PORTD = B01100100;
    sensorValue = analogRead(sensorPin);
    }
    void aD14(){
    PORTB = B00111111;
    PORTD = B01100010;
    sensorValue = analogRead(sensorPin);
    }
    void aD15(){
    PORTB = B00111111;
    PORTD = B01100001;
    sensorValue = analogRead(sensorPin);
    }
    void bD1(){
    PORTB = B00111110;
    PORTD = B11110000;
    sensorValue = analogRead(sensorPin);
    }
    void bD2(){
    PORTB = B00111110;
    PORTD = B11101000;
    sensorValue = analogRead(sensorPin);
    }
    void bD3(){
    PORTB = B00111110;
    PORTD = B11100100;
    sensorValue = analogRead(sensorPin);
    }
    void bD4(){
    PORTB = B00111110;
    PORTD = B11100010;
    sensorValue = analogRead(sensorPin);
    }
    void bD5(){
    PORTB = B00111110;
    PORTD = B11100001;
    sensorValue = analogRead(sensorPin);
    }
    void bD6(){
    PORTB = B00111101;
    PORTD = B11110000;
    sensorValue = analogRead(sensorPin);
    }
    void bD7(){
    PORTB = B00111101;
    PORTD = B11101000;
    sensorValue = analogRead(sensorPin);
    }
    void bD8(){
    PORTB = B00111101;
    PORTD = B11100100;
    sensorValue = analogRead(sensorPin);
    }
    void bD9(){
    PORTB = B00111101;
    PORTD = B11100010;
    sensorValue = analogRead(sensorPin);
    }
    void bD10(){
    PORTB = B00111101;
    PORTD = B11100001;
    sensorValue = analogRead(sensorPin);
    }
    void bD11(){
    PORTB = B00111011;
    PORTD = B11110000;
    sensorValue = analogRead(sensorPin);
    }
    void bD12(){
    PORTB = B00111011;
    PORTD = B11101000;
    sensorValue = analogRead(sensorPin);
    }
    void bD13(){
    PORTB = B00111011;
    PORTD = B11100100;
    sensorValue = analogRead(sensorPin);
    }
    void bD14(){
    PORTB = B00111011;
    PORTD = B11100010;
    sensorValue = analogRead(sensorPin);
    }
    void bD15(){
    PORTB = B00111011;
    PORTD = B11100001;
    sensorValue = analogRead(sensorPin);
    }
     
    void cD1(){
    PORTB = B00110111;
    PORTD = B11110000;
    sensorValue = analogRead(sensorPin);
    }
    void cD2(){
    PORTB = B00110111;
    PORTD = B11101000;
    sensorValue = analogRead(sensorPin);
    }
    void cD3(){
    PORTB = B00110111;
    PORTD = B11100100;
    sensorValue = analogRead(sensorPin);
    }
    void cD4(){
    PORTB = B00110111;
    PORTD = B11100010;
    sensorValue = analogRead(sensorPin);
    }
    void cD5(){
    PORTB = B00110111;
    PORTD = B11100001;
    sensorValue = analogRead(sensorPin);
    }
    void cD6(){
    PORTB = B00101111;
    PORTD = B11110000;
    sensorValue = analogRead(sensorPin);
    }
    void cD7(){
    PORTB = B00101111;
    PORTD = B11101000;
    sensorValue = analogRead(sensorPin);
    }
    void cD8(){
    PORTB = B00101111;
    PORTD = B11100100;
    sensorValue = analogRead(sensorPin);
    }
    void cD9(){
    PORTB = B00101111;
    PORTD = B11100010;
    sensorValue = analogRead(sensorPin);
    }
    void cD10(){
    PORTB = B00101111;
    PORTD = B11100001;
    sensorValue = analogRead(sensorPin);
    }
    void cD11(){
    PORTB = B00011111;
    PORTD = B11110000;
    sensorValue = analogRead(sensorPin);
    }
    void cD12(){
    PORTB = B00011111;
    PORTD = B11101000;
    sensorValue = analogRead(sensorPin);
    }
    void cD13(){
    PORTB = B00011111;
    PORTD = B11100100;
    sensorValue = analogRead(sensorPin);
    }
    void cD14(){
    PORTB = B00011111;
    PORTD = B11100010;
    sensorValue = analogRead(sensorPin);
    }
    void cD15(){
    PORTB = B00011111;
    PORTD = B11100001;
    sensorValue = analogRead(sensorPin);
    }
     
    void S1(){
    PORTB = B00110110;
    PORTD = B11010000;
    sensorValue = analogRead(sensorPin);
    }
    void S2(){
    PORTB = B00110110;
    PORTD = B11001000;
    sensorValue = analogRead(sensorPin);
    }
    void S3(){
    PORTB = B00110110;
    PORTD = B11000100;
    sensorValue = analogRead(sensorPin);
    }
    void S4(){
    PORTB = B00110110;
    PORTD = B11000010;
    sensorValue = analogRead(sensorPin);
    }
    void S5(){
    PORTB = B00110110;
    PORTD = B11000001;
    sensorValue = analogRead(sensorPin);
    }
    void S6(){
    PORTB = B00101101;
    PORTD = B10110000;
    sensorValue = analogRead(sensorPin);
    }
    void S7(){
    PORTB = B00101101;
    PORTD = B10101000;
    sensorValue = analogRead(sensorPin);
    }
    void S8(){
    PORTB = B00101101;
    PORTD = B10100100;
    sensorValue = analogRead(sensorPin);
    }
    void S9(){
    PORTB = B00101101;
    PORTD = B10100010;
    sensorValue = analogRead(sensorPin);
    }
    void S10(){
    PORTB = B00101101;
    PORTD = B10100001;
    sensorValue = analogRead(sensorPin);
    }
    void S11(){
    PORTB = B00011011;
    PORTD = B01110000;
    sensorValue = analogRead(sensorPin);
    }
    void S12(){
    PORTB = B00011011;
    PORTD = B01101000;
    sensorValue = analogRead(sensorPin);
    }
    void S13(){
    PORTB = B00011011;
    PORTD = B01100100;
    sensorValue = analogRead(sensorPin);
    }
    void S14(){
    PORTB = B00011011;
    PORTD = B01100010;
    sensorValue = analogRead(sensorPin);
    }
    void S15(){
    PORTB = B00011011;
    PORTD = B01100001;
    sensorValue = analogRead(sensorPin);
    }
     
    void Q1(){
    PORTB = B00000000;
    PORTD = B00010000;
    sensorValue = analogRead(sensorPin);
    }
    void Q2(){
    PORTB = B00000000;
    PORTD = B00001000;
    sensorValue = analogRead(sensorPin);
    }
    void Q3(){
    PORTB = B00000000;
    PORTD = B00000100;
    sensorValue = analogRead(sensorPin);
    }
    void Q4(){
    PORTB = B00000000;
    PORTD = B00000010;
    sensorValue = analogRead(sensorPin);
    }
    void Q5(){
    PORTB = B00000000;
    PORTD = B00000001;
    sensorValue = analogRead(sensorPin);
    }
     
    void E1(){
    PORTB = B00110110;
    PORTD = B11011111;
    sensorValue = analogRead(sensorPin);
    }
    void E2(){
    PORTB = B00101101;
    PORTD = B10111111;
    sensorValue = analogRead(sensorPin);
    }
    void E3(){
    PORTB = B00011011;
    PORTD = B01111111;
    sensorValue = analogRead(sensorPin);
    }
     
    void W1(){
    PORTB = B00111111;
    PORTD = B00011111;
    sensorValue = analogRead(sensorPin);
    }
    void W2(){
    PORTB = B00111000;
    PORTD = B11111111;
    sensorValue = analogRead(sensorPin);
    }
    void W3(){
    PORTB = B00000111;
    PORTD = B11111111;
    sensorValue = analogRead(sensorPin);
    }
    void heartBeat(float tempo){
     
    if ((millis() - prevMillis) > (long)(heartBeatArray[hbeatIndex] * tempo)){
    hbeatIndex++;
    if (hbeatIndex > 3) hbeatIndex = 0;
     
    if ((hbeatIndex % 2) == 0){
    an();
    Line 1,512 ⟶ 308:
    }
    hbeatIndex++;
    // Serial.println(hbeatIndex);
    prevMillis = millis();
     
    }
    }
    ///// ebene (1 oben - 5 unten, 0 alle 1 links - 5 rechts)
    void random1(){
    void ebene(int a, int b)
    sensorValue2 = analogRead(sensorPin2);
    {
    sensorValue2 = map(sensorValue2, sensorMin2, sensorMax2, 0, 45);
    switch (b){
    sensorValue2 = constrain(sensorValue2, 0, 45);
    sensorValue3 = analogRead(sensorPin3);
    sensorValue3 = map(sensorValue3, sensorMin3, sensorMax3, 0, 45);
    sensorValue3 = constrain(sensorValue3, 0, 45);
    r1 = (random (sensorValue3, sensorValue2));
    switch (r1){
    case 0:
    aD1digitalWrite(8,HIGH);
    d1digitalWrite(9,HIGH);
    digitalWrite(10,HIGH);
    digitalWrite(11,HIGH);
    digitalWrite(12,HIGH);
    break;
    case 1:
    aD2digitalWrite(8,HIGH);
    d1digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    digitalWrite(12,LOW);
    break;
    case 2:
    digitalWrite(8,LOW);
    digitalWrite(9,HIGH);
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    digitalWrite(12,LOW);
    break;
    case 3:
    digitalWrite(8,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,HIGH);
    digitalWrite(11,LOW);
    digitalWrite(12,LOW);
    break;
    case 4:
    digitalWrite(8,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    digitalWrite(11,HIGH);
    digitalWrite(12,LOW);
    break;
    case 5:
    digitalWrite(8,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    digitalWrite(12,HIGH);
    break;
    }
    switch (a) {
    case 1:
    digitalWrite(22,LOW);
    digitalWrite(23,LOW);
    digitalWrite(24,LOW);
    digitalWrite(25,LOW);
    digitalWrite(26,LOW);
    break;
    case 2:
    aD3digitalWrite(30,LOW);
    d1digitalWrite(31,LOW);
    digitalWrite(32,LOW);
    digitalWrite(33,LOW);
    digitalWrite(34,LOW);
    break;
    case 3:
    aD4digitalWrite(38,LOW);
    d1digitalWrite(39,LOW);
    digitalWrite(40,LOW);
    digitalWrite(41,LOW);
    digitalWrite(42,LOW);
    break;
    case 4:
    aD5digitalWrite(46,LOW);
    d1digitalWrite(47,LOW);
    digitalWrite(48,LOW);
    digitalWrite(49,LOW);
    digitalWrite(50,LOW);
    break;
    case 5:
    aD6digitalWrite(70,LOW);
    d1digitalWrite(71,LOW);
    digitalWrite(72,LOW);
    digitalWrite(73,LOW);
    digitalWrite(74,LOW);
    break;
    default:
    heartBeat(1.0);
    break;
    }
    }
    ///// flaeche (1 hinten - 5 vorn, 0 alle 1 rechts - 5 links)
    void flaeche(int a, int b)
    {
    switch (b){
    case 0:
    digitalWrite(8,HIGH);
    digitalWrite(9,HIGH);
    digitalWrite(10,HIGH);
    digitalWrite(11,HIGH);
    digitalWrite(12,HIGH);
    break;
    case 1:
    digitalWrite(8,HIGH);
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    digitalWrite(12,LOW);
    break;
    case 2:
    digitalWrite(8,LOW);
    digitalWrite(9,HIGH);
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    digitalWrite(12,LOW);
    break;
    case 3:
    digitalWrite(8,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,HIGH);
    digitalWrite(11,LOW);
    digitalWrite(12,LOW);
    break;
    case 4:
    digitalWrite(8,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    digitalWrite(11,HIGH);
    digitalWrite(12,LOW);
    break;
    case 5:
    digitalWrite(8,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    digitalWrite(12,HIGH);
    break;
    }
    switch (a) {
    case 1:
    digitalWrite(22,LOW);
    digitalWrite(30,LOW);
    digitalWrite(38,LOW);
    digitalWrite(46,LOW);
    digitalWrite(70,LOW);
    break;
    case 2:
    digitalWrite(23,LOW);
    digitalWrite(31,LOW);
    digitalWrite(39,LOW);
    digitalWrite(47,LOW);
    digitalWrite(71,LOW);
    break;
    case 3:
    digitalWrite(24,LOW);
    digitalWrite(32,LOW);
    digitalWrite(40,LOW);
    digitalWrite(48,LOW);
    digitalWrite(72,LOW);
    break;
    case 4:
    digitalWrite(25,LOW);
    digitalWrite(33,LOW);
    digitalWrite(41,LOW);
    digitalWrite(49,LOW);
    digitalWrite(73,LOW);
    break;
    case 5:
    digitalWrite(26,LOW);
    digitalWrite(34,LOW);
    digitalWrite(42,LOW);
    digitalWrite(50,LOW);
    digitalWrite(74,LOW);
    break;
    default:
    heartBeat(1.0);
    break;
    }
    }
    // reihe 25 0-5 mit null ganze reihe 1-5 jeweils die einzelne LED dieser reihe
    void reihe(int a, int b)
    {
    switch (b){
    case 0:
    digitalWrite(8,HIGH);
    digitalWrite(9,HIGH);
    digitalWrite(10,HIGH);
    digitalWrite(11,HIGH);
    digitalWrite(12,HIGH);
    break;
    case 1:
    digitalWrite(8,HIGH);
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    digitalWrite(12,LOW);
    break;
    case 2:
    digitalWrite(8,LOW);
    digitalWrite(9,HIGH);
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    digitalWrite(12,LOW);
    break;
    case 3:
    digitalWrite(8,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,HIGH);
    digitalWrite(11,LOW);
    digitalWrite(12,LOW);
    break;
    case 4:
    digitalWrite(8,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    digitalWrite(11,HIGH);
    digitalWrite(12,LOW);
    break;
    case 5:
    digitalWrite(8,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    digitalWrite(12,HIGH);
    break;
    }
    switch (a) {
    case 1:
    digitalWrite(22,LOW);
    digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 2:
    digitalWrite(22,HIGH);
    digitalWrite(23,LOW);
    digitalWrite(24,HIGH);
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 3:
    digitalWrite(22,HIGH);
    digitalWrite(23,HIGH);
    digitalWrite(24,LOW);
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 4:
    digitalWrite(22,HIGH);
    digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    digitalWrite(25,LOW);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 5:
    digitalWrite(22,HIGH);
    digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    digitalWrite(25,HIGH);
    digitalWrite(26,LOW);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 6:
    aD7digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,LOW);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 7:
    aD8digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,LOW);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 8:
    aD9digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,LOW);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 9:
    aD10digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,LOW);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 10:
    aD11digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,LOW);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 11:
    aD12digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,LOW);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 12:
    aD13digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,LOW);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 13:
    aD14digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,LOW);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 14:
    aD15digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,LOW);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 15:
    bD1digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,LOW);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 16:
    bD2digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,LOW);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 17:
    bD3digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,LOW);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 18:
    bD4digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,LOW);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 19:
    bD5digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,LOW);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 20:
    bD6digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,LOW);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 21:
    bD7digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,LOW);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 22:
    bD8digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,LOW);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 23:
    bD9digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,LOW);
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
    break;
    case 24:
    bD10digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
    digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    digitalWrite(32,HIGH);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    digitalWrite(46,HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
    digitalWrite(70,HIGH);
    digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,LOW);
    digitalWrite(74,HIGH);
    break;
    case 25:
    bD11digitalWrite(22,HIGH);
    d1digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    break;
    digitalWrite(25,HIGH);
    case 26:
    bD12digitalWrite(26,HIGH);
    d1digitalWrite(30,HIGH);
    digitalWrite(31,HIGH);
    break;
    digitalWrite(32,HIGH);
    case 27:
    bD13digitalWrite(33,HIGH);
    d1digitalWrite(34,HIGH);
    digitalWrite(38,HIGH);
    break;
    digitalWrite(39,HIGH);
    case 28:
    bD14digitalWrite(40,HIGH);
    d1digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
    break;
    digitalWrite(46,HIGH);
    case 29:
    bD15digitalWrite(47,HIGH);
    d1digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    break;
    digitalWrite(50,HIGH);
    case 30:
    cD1digitalWrite(70,HIGH);
    d1digitalWrite(71,HIGH);
    digitalWrite(72,HIGH);
    digitalWrite(73,HIGH);
    digitalWrite(74,LOW);
    break;
     
     
    default:
    heartBeat(1.0);
    break;
    }
    case 31:
    }
    cD2();
     
    d1();
    void fa1() {
    for(int c = 0; c < 5; c++) { // Alle Ebenen nacheinander
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(ce1[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(ce1[c], HIGH);
    }
    }
    }
     
    void fb1() {
    for(int c = 0; c < 5; c++) { // Alle Ebenen nacheinander
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(ce2[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(ce2[c], HIGH);
    }
    }
    }
     
    void fc1() {
    for(int c = 0; c < 5; c++) { // Alle Ebenen nacheinander
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(ce3[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(ce3[c], HIGH);
    }
    }
    }
     
    void fd1() {
    for(int c = 0; c < 5; c++) { // Alle Ebenen nacheinander
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(ce4[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(ce4[c], HIGH);
    }
    }
    }
    void fe1() {
    for(int c = 0; c < 5; c++) { // Alle Ebenen nacheinander
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(ce5[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(ce5[c], HIGH);
    }
    }
    }
    void fa1random(){
    R = random(1, 6);
    switch (R) {
    case 1:
    fa1();
    break;
    case 322:
    cD3fb1();
    d1();
    break;
    case 333:
    cD4fc1();
    d1();
    break;
    case 344:
    cD5fd1();
    d1();
    break;
    case 355:
    cD6fe1();
    d1();
    break;
    case} 36:
    }
    cD7();
    void d1ff1(); {
    for(int c = 0; c < 5; c++) { // Alle Ebenen nacheinander
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(cf1[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(cf1[c], HIGH);
    }
    }
    }
    void fg1() {
    for(int c = 0; c < 5; c++) { // Alle Ebenen nacheinander
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(cf2[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(cf2[c], HIGH);
    }
    }
    }
    void fh1() {
    for(int c = 0; c < 5; c++) { // Alle Ebenen nacheinander
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(cf3[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(cf3[c], HIGH);
    }
    }
    }
    void fi1() {
    for(int c = 0; c < 5; c++) { // Alle Ebenen nacheinander
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(cf4[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(cf4[c], HIGH);
    }
    }
    }
    void fj1() {
    for(int c = 0; c < 5; c++) { // Alle Ebenen nacheinander
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(cf5[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(cf5[c], HIGH);
    }
    }
    }
    void ff1random(){
    R = random(1, 6);
    switch (R) {
    case 1:
    ff1();
    break;
    case 372:
    cD8fg1();
    d1();
    break;
    case 383:
    cD9fh1();
    d1();
    break;
    case 39:
    cD10();
    d1();
    break;
    case 40:
    cD11();
    d1();
    break;
    case 41:
    cD12();
    d1();
    break;
    case 42:
    cD13();
    d1();
    break;
    case 43:
    cD14();
    d1();
    break;
    case 44:
    cD15();
    d1();
    break;
    default:
    aus();
    break;
    case 4:
    fi1();
    break;
    case 5:
    fj1();
    break;
    }
    }
    void fa2() {
    for(int a = 0; a < 5; a++) { // Alle Ebenen nacheinander
    for(int c = 0; c < 5; c++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(ce1[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(ce1[c], HIGH);
    }
    }
    }
    void oneByOnefb2() {
    for(int a = 0; a < 5; a++) { // Alle Ebenen nacheinander
     
    for(int c = 0; c < 95; c++) { // Alle EbenenLEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
     
    digitalWrite(ce2[c], LOW);
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    d1();
     
    digitalWrite(anode[a], HIGH); // LED anschalten
     
    digitalWrite(cathode[c], LOW);
    sensorValue = analogRead(sensorPin);
    delay(sensorValue);
     
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(ce2[c], HIGH);
     
    digitalWrite(cathode[c], HIGH);
     
    }
     
    }
     
    }
    void fc2() {
     
    for(int a = 0; a < 5; a++) { // Alle Ebenen nacheinander
    void oneByOne1() {
    for(int c = 0; c < 5; c++) { // Alle LEDs einer Ebene nacheinander
     
    for(int c = 0; c < 9;digitalWrite(anode[a], c++HIGH) { ; // Alle EbenenLED nacheinanderanschalten
    digitalWrite(ce3[c], LOW);
     
    d1();
    for(int a = 0; a < 5; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], LOW); // LED ausschalten
     
    digitalWrite(anodece3[ac], LOWHIGH); // LED anschalten
     
    digitalWrite(cathode[c], HIGH);
    sensorValue = analogRead(sensorPin);
    delay(sensorValue);
     
    digitalWrite(anode[a], HIGH); // LED ausschalten
     
    digitalWrite(cathode[c], LOW);
     
    }
     
    }
     
    }
    void fd2() {
     
    for(int a = 0; a < 5; a++) { // Alle Ebenen nacheinander
    void oneByOne2() {
    for(int c = 0; c < 5; c++) { // Alle LEDs einer Ebene nacheinander
     
    for(int c = 0; c < 5;digitalWrite(anode[a], c++HIGH) { ; // Alle EbenenLED nacheinanderanschalten
    digitalWrite(ce4[c], LOW);
     
    d1();
    for(int a = 0; a < 9; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], LOW); // LED ausschalten
     
    digitalWrite(anode1ce4[ac], LOWHIGH); // LED anschalten
     
    digitalWrite(cathode1[c], HIGH);
    sensorValue = analogRead(sensorPin);
    delay(sensorValue);
     
    digitalWrite(anode1[a], HIGH); // LED ausschalten
     
    digitalWrite(cathode1[c], LOW);
     
    }
     
    }
     
    }
    void oneByOne3fe2() {
    for(int a = 0; a < 5; a++) { // Alle Ebenen nacheinander
     
    for(int c = 0; c < 5; c++) { // Alle EbenenLEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
     
    digitalWrite(ce5[c], LOW);
    for(int a = 0; a < 9; a++) { // Alle LEDs einer Ebene nacheinander
    d1();
     
    digitalWrite(anode1anode[a], HIGHLOW); // LED anschaltenausschalten
    digitalWrite(ce5[c], HIGH);
     
    digitalWrite(cathode1[c], LOW);
    sensorValue = analogRead(sensorPin);
    delay(sensorValue);
     
    digitalWrite(anode1[a], LOW); // LED ausschalten
     
    digitalWrite(cathode1[c], HIGH);
     
    }
     
    }
     
    }
    void fa2random(){
    R = random(1, 6);
    switch (R) {
    case 1:
    fa2();
    break;
    case 2:
    fb2();
    break;
    case 3:
    fc2();
    break;
    case 4:
    fd2();
    break;
    case 5:
    fe2();
    break;
    }
    }
    void ff2() {
    for(int a = 0; a < 5; a++) { // Alle Ebenen nacheinander
    for(int c = 0; c < 5; c++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(cf1[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(cf1[c], HIGH);
    }
    }
    }
    void fg2() {
    for(int a = 0; a < 5; a++) { // Alle Ebenen nacheinander
    for(int c = 0; c < 5; c++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(cf2[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(cf2[c], HIGH);
    }
    }
    }
    void fh2() {
    for(int a = 0; a < 5; a++) { // Alle Ebenen nacheinander
    for(int c = 0; c < 5; c++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(cf3[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(cf3[c], HIGH);
    }
    }
    }
    void fi2() {
    for(int a = 0; a < 5; a++) { // Alle Ebenen nacheinander
    for(int c = 0; c < 5; c++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(cf4[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(cf4[c], HIGH);
    }
    }
    }
    void fj2() {
    for(int a = 0; a < 5; a++) { // Alle Ebenen nacheinander
    for(int c = 0; c < 5; c++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(anode[a], HIGH); // LED anschalten
    digitalWrite(cf5[c], LOW);
    d1();
    digitalWrite(anode[a], LOW); // LED ausschalten
    digitalWrite(cf5[c], HIGH);
    }
    }
    }
    void ff2random(){
    R = random(1, 6);
    switch (R) {
    case 1:
    ff2();
    break;
    case 2:
    fg2();
    break;
    case 3:
    fh2();
    break;
    case 4:
    fi2();
    break;
    case 5:
    fj2();
    break;
    }
    }
    void f2(){
    for(int a = 21; a > 0; a--){
    switch (a)
    {
    case 1:
    fa1();
    break;
    case 2:
    fb1();
    break;
    case 3:
    fc1();
    break;
    case 4:
    fd1();
    break;
    case 5:
    fe1();
    break;
    case 6:
    ff1();
    break;
    case 7:
    fg1();
    break;
    case 8:
    fh1();
    break;
    case 9:
    fi1();
    break;
    case 10:
    fj1();
    break;
    case 11:
    fa2();
    break;
    case 12:
    fb2();
    break;
    case 13:
    fc2();
    break;
    case 14:
    fd2();
    break;
    case 15:
    fe2();
    break;
    case 16:
    ff2();
    break;
    case 17:
    fg2();
    break;
    case 18:
    fh2();
    break;
    case 19:
    fi2();
    break;
    case 20:
    fj2();
    break;
    }
    }
    }
    void f1(){
    for(int a = 0; a < 21; a++){
    switch (a)
    {
    case 1:
    fa1();
    break;
    case 2:
    fb1();
    break;
    case 3:
    fc1();
    break;
    case 4:
    fd1();
    break;
    case 5:
    fe1();
    break;
    case 6:
    ff1();
    break;
    case 7:
    fg1();
    break;
    case 8:
    fh1();
    break;
    case 9:
    fi1();
    break;
    case 10:
    fj1();
    break;
    case 11:
    fa2();
    break;
    case 12:
    fb2();
    break;
    case 13:
    fc2();
    break;
    case 14:
    fd2();
    break;
    case 15:
    fe2();
    break;
    case 16:
    ff2();
    break;
    case 17:
    fg2();
    break;
    case 18:
    fh2();
    break;
    case 19:
    fi2();
    break;
    case 20:
    fj2();
    break;
    }
    }
    }
    void an(){
    digitalWrite(8,HIGH);
    digitalWrite(9,HIGH);
    digitalWrite(10,HIGH);
    digitalWrite(11,HIGH);
    digitalWrite(12,HIGH);
     
    digitalWrite(22,LOW);
    digitalWrite(23,LOW);
    digitalWrite(24,LOW);
    digitalWrite(25,LOW);
    digitalWrite(26,LOW);
     
    digitalWrite(30,LOW);
    digitalWrite(31,LOW);
    digitalWrite(32,LOW);
    digitalWrite(33,LOW);
    digitalWrite(34,LOW);
     
    digitalWrite(38,LOW);
    void oneByOne4() {
    digitalWrite(39,LOW);
    digitalWrite(40,LOW);
    sensorValue2 = analogRead(sensorPin2);
    digitalWrite(41,LOW);
    sensorValue2 = map(sensorValue2, sensorMin2, sensorMax2, 0, 5);
    digitalWrite(42,LOW);
    sensorValue2 = constrain(sensorValue2, 0, 5);
    sensorValue3 = analogRead(sensorPin3);
    sensorValue3 = map(sensorValue3, sensorMin3, sensorMax3, 0, 9);
    sensorValue3 = constrain(sensorValue3, 0, 9);
     
    digitalWrite(46,LOW);
    for(int c = 0; c < sensorValue2; c++) { // Alle Ebenen nacheinander
    digitalWrite(47,LOW);
    digitalWrite(48,LOW);
    digitalWrite(49,LOW);
    digitalWrite(50,LOW);
     
    digitalWrite(70,LOW);
    for(int a = 0; a < sensorValue3; a++) { // Alle LEDs einer Ebene nacheinander
    digitalWrite(71,LOW);
    digitalWrite(72,LOW);
    digitalWrite(73,LOW);
    digitalWrite(74,LOW);
    }
    void aus(){
    digitalWrite(8,LOW);
    digitalWrite(9,LOW);
    digitalWrite(10,LOW);
    digitalWrite(11,LOW);
    digitalWrite(12,LOW);
     
    digitalWrite(anode1[a]22, HIGH); // LED anschalten
    digitalWrite(23,HIGH);
    digitalWrite(24,HIGH);
    digitalWrite(25,HIGH);
    digitalWrite(26,HIGH);
     
    digitalWrite(cathode1[c]30, LOWHIGH);
    digitalWrite(31,HIGH);
    sensorValue = analogRead(sensorPin);
    digitalWrite(32,HIGH);
    delay(sensorValue);
    digitalWrite(33,HIGH);
    digitalWrite(34,HIGH);
     
    digitalWrite(anode1[a]38, LOWHIGH); // LED ausschalten
    digitalWrite(39,HIGH);
    digitalWrite(40,HIGH);
    digitalWrite(41,HIGH);
    digitalWrite(42,HIGH);
     
    digitalWrite(cathode1[c]46, HIGH);
    digitalWrite(47,HIGH);
    digitalWrite(48,HIGH);
    digitalWrite(49,HIGH);
    digitalWrite(50,HIGH);
     
    digitalWrite(70,HIGH);
    }
    digitalWrite(71,HIGH);
     
    digitalWrite(72,HIGH);
    }
    digitalWrite(73,HIGH);
    digitalWrite(74,HIGH);
     
    }
     
    </pre>
     
     
    [[User:Talisman|Talisman]] 11:16, 27 February 2010 (UTC)
    [[Category:Arduino]]

    Revision as of 17:38, 28 February 2010

    5x5x5 Led Cube

    5x5x5 LED Cube

    <youtube>1zFYon6LY4E</youtube>

    Juhu der groessere Bruder ist da xD endlich genug Pins um den 5x5x5 komplett anzusteuern

    --Talisman 17:38, 28 February 2010 (UTC)

    schaltung:

    der wuerfel 5x5x5 (5 Anoden 25 Kathoden) jeweils pro ausgang am wuerfel ein pin

    3x drehpoti 10k + 1x schiebepoti 1k diese sind jeweils an einen analogen eingang angeschlossen und liefern linearen wert zurueck

    zb um das delay einzustellen oder durch die programme zu wechseln


    code:

    int sensorPin = 0;
    int sensorValue = 0;
    int sensorMin = 0; 
    int sensorMax = 1023; 
    int sensorPin2 = 1;
    int sensorValue2 = 0;
    int sensorMin2 = 0; 
    int sensorMax2 = 1023; 
    int sensorPin3 = 2;
    int sensorValue3 = 0;
    int sensorMin3 = 0;  
    int sensorMax3 = 1023; 
    int sensorPin4 = 3;
    int sensorValue4 = 0;
    int sensorMin4 = 0;  
    int sensorMax4 = 1023; 
    
    // Anoden der 125 LEDs
    int anode[] = {
      8, 9, 10, 11, 12};
    
    int R;
    
    // 5 Kathodenebenen
    int ce1[] = { 
      22, 23, 24, 25, 26};
    int ce2[] = { 
      30, 31, 32, 33, 34};
    int ce3[] = { 
      38, 39, 40, 41, 42};
    int ce4[] = { 
      46, 47, 48, 49, 50}; 
    int ce5[] = { 
      70, 71, 72, 73, 74};
    // alle Kathodenebenen  
    int ce[] = { 
      22, 23, 24, 25, 26, 30, 31, 32, 33, 34, 38, 39, 40, 41, 42, 46, 47, 48, 49, 50,70, 71, 72, 73, 74}; 
    
    // 5 Kathodenflächen
    int cf1[] = { 
      22, 30, 38, 46, 70};
    int cf2[] = { 
      23, 31, 39, 47, 71};
    int cf3[] = { 
      24, 32, 40, 48, 72};
    int cf4[] = { 
      25, 33, 41, 49, 73}; 
    int cf5[] = { 
      26, 34, 42, 50, 74};
    // alle Kathodenflächen   
    int cf[] = { 
      22, 30, 38, 46, 70, 23, 31, 39, 47, 71, 24, 32, 40, 48, 72, 25, 33, 41, 49, 73, 26, 34, 42, 50, 74};
    
    /// zur fehler suche
    long heartBeatArray[] = {  
      50, 100, 15, 1200};
    int hbeatIndex = 1;   // this initialization is important or it starts on the "wrong foot"
    long prevMillis;
    
    
    void setup() {
      randomSeed(analogRead(15));   //// hier wird random initizialisiert, nicht aendern!!!!
      for (int a = 0; a < 5; a++) {  // Alle Anoden auf OUTPUT
        pinMode(anode[a], OUTPUT); 
      }
      for (int c = 0; c < 25; c++) {         // Alle Kathoden auf OUTPUT
        pinMode(ce[c], OUTPUT);
        digitalWrite(ce[c], HIGH);     // Alles ausstellen
      }
    
    }
    
    void loop() {
    
    
      sensorValue = analogRead(sensorPin); 
      sensorValue = map(sensorValue, sensorMin, sensorMax, 0, 1023);
      sensorValue = constrain(sensorValue, 0, 1023);
      sensorValue2 = analogRead(sensorPin2); 
      sensorValue2 = map(sensorValue2, sensorMin2, sensorMax2, 0, 255);
      sensorValue2 = constrain(sensorValue2, 0, 255);
      sensorValue3 = analogRead(sensorPin3); 
      sensorValue3 = map(sensorValue3, sensorMin3, sensorMax3, 0, 27);
      sensorValue3 = constrain(sensorValue3, 0, 27);
      sensorValue4 = analogRead(sensorPin4); 
      sensorValue4 = map(sensorValue4, sensorMin4, sensorMax4, 0, 27);
      sensorValue4 = constrain(sensorValue4, 0, 27);
    
    
      int PW;
      PW = (sensorValue4);
      switch (PW) 
      {
      case 0:
        ///alle Potis auf null und anmachen hier ist start (spielplatz)
    
        ebene(1, 1);
        d1();
        aus();
        ebene(2, 2);
        d1();
        aus();
        ebene(3, 3);
        d1();
        aus();
        ebene(4, 4);
        d1();
        aus();
        ebene(5, 5);
        d1();
        aus();
    
        //// ende spielplatz
    
        break;
      case 1:
        fa1random();
        break;
      case 2:
        ff1random();
        break;
      case 3:
    
        R = random(1, 3);
        switch(R){
        case 1:
          fa1random();
          break;
        case 2:
          ff1random();
          break;
        }
    
        break;
      case 4:
        fa2random();
        break;
      case 5:
        ff2random();
        break;
      case 6:
    
        R = random(1, 3);
        switch(R){
        case 1:
          fa2random();
          break;
        case 2:
          ff2random();
          break;
        }
    
        break;
      case 7:
    
        R = random(1, 5);
        switch(R){
        case 1:
          fa1random();
          break;
        case 2:
          ff2random();
          break;
        case 3:
          fa1random();
          break;
        case 4:
          ff2random();
          break;
        }
    
        break;
      case 8:
    
        R = random(0, 3);
        switch (R){
        case 0:
          ebene(random(1, 6),random(1, 6));
          d1();
          aus();
          break;
        case 1:
          flaeche(random(1, 6),random(1, 6));
          d1();
          aus();
          break;
        case 2:
          reihe(random(1, 26),0);
          d1();
          aus();
          break;
        }
    
        break;
      default: 
        aus();
        break;
      }  
    
      int PW2;
      PW2 = (sensorValue3);
      switch (PW2) 
      {
      case 0:
        aus();
        break;    
      case 1:
        f1();
        break;
      case 2:
        f2();
        break;
      case 3:
        f1(); 
        f2();
        break;
      case 4:
        f1(); 
        f2();
        f2();
        f1();
        break;
      case 5:
    
        R = random(1, 3);
        switch (R){
        case 1:
          f1();
          break;
        case 2:
          f2();
          break;
        }
    
        break;
      default:
        aus();
        break;
      }
    }
    
    /////////////////////////////////
    ///// void zone!!!!!/////////////
    ///// void zone!!!!!/////////////
    ///// void zone!!!!!/////////////
    ////////////////////////////////
    void d1(){
      delay(sensorValue);
      sensorValue = analogRead(sensorPin);
      sensorValue2 = analogRead(sensorPin2); 
      sensorValue3 = analogRead(sensorPin3);
      sensorValue4 = analogRead(sensorPin4); 
    }
    
    void anaus(int x) {
      switch (x){
      case 0:
        aus();
        break;
      case 1:
        an();
        break; 
      case 2:
    
        R =  random (1, 3);
        switch (R){
        case 1:
          an();
          break;
        case 2:
          aus();
          break;
        }
    
        break; 
      }
    }
    void heartBeat(float tempo){
      if ((millis() - prevMillis) > (long)(heartBeatArray[hbeatIndex] * tempo)){
        hbeatIndex++;
        if (hbeatIndex > 3) hbeatIndex = 0;
        if ((hbeatIndex % 2) == 0){ 
          an();
          delay((int)heartBeatArray[hbeatIndex]) ;   
          aus(); 
        }
        hbeatIndex++;
        prevMillis = millis();
      }
    }
    ///// ebene (1 oben - 5 unten,  0 alle 1 links - 5 rechts)
    void ebene(int a, int b)
    {
      switch (b){
      case 0:
        digitalWrite(8,HIGH);
        digitalWrite(9,HIGH);
        digitalWrite(10,HIGH);
        digitalWrite(11,HIGH);
        digitalWrite(12,HIGH);
        break;
      case 1:
        digitalWrite(8,HIGH);
        digitalWrite(9,LOW);
        digitalWrite(10,LOW);
        digitalWrite(11,LOW);
        digitalWrite(12,LOW);
        break;    
      case 2:
        digitalWrite(8,LOW);
        digitalWrite(9,HIGH);
        digitalWrite(10,LOW);
        digitalWrite(11,LOW);
        digitalWrite(12,LOW);
        break;
      case 3:
        digitalWrite(8,LOW);
        digitalWrite(9,LOW);
        digitalWrite(10,HIGH);
        digitalWrite(11,LOW);
        digitalWrite(12,LOW);
        break;   
      case 4:
        digitalWrite(8,LOW);
        digitalWrite(9,LOW);
        digitalWrite(10,LOW);
        digitalWrite(11,HIGH);
        digitalWrite(12,LOW);
        break;    
      case 5:
        digitalWrite(8,LOW);
        digitalWrite(9,LOW);
        digitalWrite(10,LOW);
        digitalWrite(11,LOW);
        digitalWrite(12,HIGH);
        break;    
      }
      switch (a) {
      case 1:
        digitalWrite(22,LOW);
        digitalWrite(23,LOW);
        digitalWrite(24,LOW);
        digitalWrite(25,LOW);
        digitalWrite(26,LOW);
        break;
      case 2:
        digitalWrite(30,LOW);
        digitalWrite(31,LOW);
        digitalWrite(32,LOW);
        digitalWrite(33,LOW);
        digitalWrite(34,LOW);
        break;
      case 3:
        digitalWrite(38,LOW);
        digitalWrite(39,LOW);
        digitalWrite(40,LOW);
        digitalWrite(41,LOW);
        digitalWrite(42,LOW);
        break;
      case 4:
        digitalWrite(46,LOW);
        digitalWrite(47,LOW);
        digitalWrite(48,LOW);
        digitalWrite(49,LOW);
        digitalWrite(50,LOW);
        break;
      case 5:
        digitalWrite(70,LOW);
        digitalWrite(71,LOW);
        digitalWrite(72,LOW);
        digitalWrite(73,LOW);
        digitalWrite(74,LOW);
        break;
      default:
        heartBeat(1.0);
        break;
      }
    }
    ///// flaeche (1 hinten - 5 vorn,  0 alle 1 rechts - 5 links)
    void flaeche(int a, int b) 
    {
      switch (b){
      case 0:
        digitalWrite(8,HIGH);
        digitalWrite(9,HIGH);
        digitalWrite(10,HIGH);
        digitalWrite(11,HIGH);
        digitalWrite(12,HIGH);
        break;
      case 1:
        digitalWrite(8,HIGH);
        digitalWrite(9,LOW);
        digitalWrite(10,LOW);
        digitalWrite(11,LOW);
        digitalWrite(12,LOW);
        break;    
      case 2:
        digitalWrite(8,LOW);
        digitalWrite(9,HIGH);
        digitalWrite(10,LOW);
        digitalWrite(11,LOW);
        digitalWrite(12,LOW);
        break;
      case 3:
        digitalWrite(8,LOW);
        digitalWrite(9,LOW);
        digitalWrite(10,HIGH);
        digitalWrite(11,LOW);
        digitalWrite(12,LOW);
        break;   
      case 4:
        digitalWrite(8,LOW);
        digitalWrite(9,LOW);
        digitalWrite(10,LOW);
        digitalWrite(11,HIGH);
        digitalWrite(12,LOW);
        break;    
      case 5:
        digitalWrite(8,LOW);
        digitalWrite(9,LOW);
        digitalWrite(10,LOW);
        digitalWrite(11,LOW);
        digitalWrite(12,HIGH);
        break;    
      }
      switch (a) {
      case 1:
        digitalWrite(22,LOW);
        digitalWrite(30,LOW);
        digitalWrite(38,LOW);
        digitalWrite(46,LOW);
        digitalWrite(70,LOW);
        break;
      case 2:
        digitalWrite(23,LOW);
        digitalWrite(31,LOW);
        digitalWrite(39,LOW);
        digitalWrite(47,LOW);
        digitalWrite(71,LOW);
        break;
      case 3:
        digitalWrite(24,LOW);
        digitalWrite(32,LOW);
        digitalWrite(40,LOW);
        digitalWrite(48,LOW);
        digitalWrite(72,LOW);
        break;
      case 4:
        digitalWrite(25,LOW);
        digitalWrite(33,LOW);
        digitalWrite(41,LOW);
        digitalWrite(49,LOW);
        digitalWrite(73,LOW);
        break;
      case 5:
        digitalWrite(26,LOW);
        digitalWrite(34,LOW);
        digitalWrite(42,LOW);
        digitalWrite(50,LOW);
        digitalWrite(74,LOW);
        break;
      default:
        heartBeat(1.0);
        break;
      }
    } 
    // reihe 25 0-5 mit null ganze reihe 1-5 jeweils die einzelne LED dieser reihe
    void reihe(int a, int b)
    {
      switch (b){
      case 0:
        digitalWrite(8,HIGH);
        digitalWrite(9,HIGH);
        digitalWrite(10,HIGH);
        digitalWrite(11,HIGH);
        digitalWrite(12,HIGH);
        break;
      case 1:
        digitalWrite(8,HIGH);
        digitalWrite(9,LOW);
        digitalWrite(10,LOW);
        digitalWrite(11,LOW);
        digitalWrite(12,LOW);
        break;    
      case 2:
        digitalWrite(8,LOW);
        digitalWrite(9,HIGH);
        digitalWrite(10,LOW);
        digitalWrite(11,LOW);
        digitalWrite(12,LOW);
        break;
      case 3:
        digitalWrite(8,LOW);
        digitalWrite(9,LOW);
        digitalWrite(10,HIGH);
        digitalWrite(11,LOW);
        digitalWrite(12,LOW);
        break;   
      case 4:
        digitalWrite(8,LOW);
        digitalWrite(9,LOW);
        digitalWrite(10,LOW);
        digitalWrite(11,HIGH);
        digitalWrite(12,LOW);
        break;    
      case 5:
        digitalWrite(8,LOW);
        digitalWrite(9,LOW);
        digitalWrite(10,LOW);
        digitalWrite(11,LOW);
        digitalWrite(12,HIGH);
        break;    
      }
      switch (a) {
      case 1:
        digitalWrite(22,LOW);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 2:
        digitalWrite(22,HIGH);
        digitalWrite(23,LOW);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 3:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,LOW);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 4:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,LOW);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 5:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,LOW);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 6:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,LOW);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 7:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,LOW);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 8:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,LOW);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 9:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,LOW);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 10:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,LOW);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 11:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,LOW);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 12:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,LOW);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 13:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,LOW);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 14:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,LOW);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 15:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,LOW);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;
      case 16:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,LOW);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;    
      case 17:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,LOW);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;      
      case 18:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,LOW);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;      
      case 19:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,LOW);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;      
      case 20:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,LOW);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;      
      case 21:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,LOW);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;      
      case 22:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,LOW);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;      
      case 23:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,LOW);
        digitalWrite(73,HIGH);
        digitalWrite(74,HIGH);
        break;      
      case 24:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,LOW);
        digitalWrite(74,HIGH);
        break;      
      case 25:
        digitalWrite(22,HIGH);
        digitalWrite(23,HIGH);
        digitalWrite(24,HIGH);
        digitalWrite(25,HIGH);
        digitalWrite(26,HIGH);
        digitalWrite(30,HIGH);
        digitalWrite(31,HIGH);
        digitalWrite(32,HIGH);
        digitalWrite(33,HIGH);
        digitalWrite(34,HIGH);
        digitalWrite(38,HIGH);
        digitalWrite(39,HIGH);
        digitalWrite(40,HIGH);
        digitalWrite(41,HIGH);
        digitalWrite(42,HIGH);
        digitalWrite(46,HIGH);
        digitalWrite(47,HIGH);
        digitalWrite(48,HIGH);
        digitalWrite(49,HIGH);
        digitalWrite(50,HIGH);
        digitalWrite(70,HIGH);
        digitalWrite(71,HIGH);
        digitalWrite(72,HIGH);
        digitalWrite(73,HIGH);
        digitalWrite(74,LOW);
        break;      
    
    
      default:
        heartBeat(1.0);
        break;
      }
    } 
    
    void fa1() {
      for(int c = 0; c < 5; c++) {          // Alle Ebenen nacheinander
        for(int a = 0; a < 5; a++) {        // Alle LEDs einer Ebene nacheinander
          digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(ce1[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(ce1[c], HIGH);
        } 
      }
    }
    
    void fb1() {
      for(int c = 0; c < 5; c++) {          // Alle Ebenen nacheinander
          for(int a = 0; a < 5; a++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(ce2[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(ce2[c], HIGH);
        }
      }
    }
    
    void fc1() {
      for(int c = 0; c < 5; c++) {          // Alle Ebenen nacheinander
          for(int a = 0; a < 5; a++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(ce3[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(ce3[c], HIGH);
        }
      }
    }
    
    void fd1() {
      for(int c = 0; c < 5; c++) {          // Alle Ebenen nacheinander
          for(int a = 0; a < 5; a++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(ce4[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(ce4[c], HIGH);
        }
      }
    }
    void fe1() {
      for(int c = 0; c < 5; c++) {          // Alle Ebenen nacheinander
          for(int a = 0; a < 5; a++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(ce5[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(ce5[c], HIGH);
        }
      }
    }
    void fa1random(){   
      R = random(1, 6);
      switch (R) {
      case 1:
        fa1();
        break;
      case 2:
        fb1();
        break;
      case 3:
        fc1();
        break;
      case 4:
        fd1();
        break;
      case 5:
        fe1();
        break;
      } 
    }
    void ff1() {
      for(int c = 0; c < 5; c++) {          // Alle Ebenen nacheinander
          for(int a = 0; a < 5; a++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(cf1[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(cf1[c], HIGH);
        }
      }
    }
    void fg1() {
      for(int c = 0; c < 5; c++) {          // Alle Ebenen nacheinander
          for(int a = 0; a < 5; a++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(cf2[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(cf2[c], HIGH);
        }
      }
    }
    void fh1() {
      for(int c = 0; c < 5; c++) {          // Alle Ebenen nacheinander
          for(int a = 0; a < 5; a++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(cf3[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(cf3[c], HIGH);
        }
      }
    }
    void fi1() {
      for(int c = 0; c < 5; c++) {          // Alle Ebenen nacheinander
          for(int a = 0; a < 5; a++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(cf4[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(cf4[c], HIGH);
        }
      }
    }
    void fj1() {
      for(int c = 0; c < 5; c++) {          // Alle Ebenen nacheinander
          for(int a = 0; a < 5; a++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(cf5[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(cf5[c], HIGH);
        }
      }
    }
    void ff1random(){    
      R = random(1, 6);
      switch (R) {
      case 1:
        ff1();
        break;
      case 2:
        fg1();
        break;
      case 3:
        fh1();
        break;
      case 4:
        fi1();
        break;
      case 5:
        fj1();
        break;
      } 
    }
    void fa2() {
      for(int a = 0; a < 5; a++) {          // Alle Ebenen nacheinander
          for(int c = 0; c < 5; c++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(ce1[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(ce1[c], HIGH);
        }
      }
    }
    void fb2() {
      for(int a = 0; a < 5; a++) {          // Alle Ebenen nacheinander
          for(int c = 0; c < 5; c++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(ce2[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(ce2[c], HIGH);
        }
      }
    }
    void fc2() {
      for(int a = 0; a < 5; a++) {          // Alle Ebenen nacheinander
          for(int c = 0; c < 5; c++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(ce3[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(ce3[c], HIGH);
        }
      }
    }
    void fd2() {
      for(int a = 0; a < 5; a++) {          // Alle Ebenen nacheinander
          for(int c = 0; c < 5; c++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(ce4[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(ce4[c], HIGH);
        }
      }
    }
    void fe2() {
      for(int a = 0; a < 5; a++) {          // Alle Ebenen nacheinander
          for(int c = 0; c < 5; c++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(ce5[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(ce5[c], HIGH);
        }
      }
    }
    void fa2random(){   
      R = random(1, 6);
      switch (R) {
      case 1:
        fa2();
        break;
      case 2:
        fb2();
        break;
      case 3:
        fc2();
        break;
      case 4:
        fd2();
        break;
      case 5:
        fe2();
        break;
      } 
    }
    void ff2() {
      for(int a = 0; a < 5; a++) {          // Alle Ebenen nacheinander
          for(int c = 0; c < 5; c++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(cf1[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(cf1[c], HIGH);
        }
      }
    }
    void fg2() {
      for(int a = 0; a < 5; a++) {          // Alle Ebenen nacheinander
          for(int c = 0; c < 5; c++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(cf2[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(cf2[c], HIGH);
        }
      }
    }
    void fh2() {
      for(int a = 0; a < 5; a++) {          // Alle Ebenen nacheinander
          for(int c = 0; c < 5; c++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(cf3[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(cf3[c], HIGH);
        }
      }
    }
    void fi2() {
      for(int a = 0; a < 5; a++) {          // Alle Ebenen nacheinander
          for(int c = 0; c < 5; c++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(cf4[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(cf4[c], HIGH);
        }
      }
    }
    void fj2() {
      for(int a = 0; a < 5; a++) {          // Alle Ebenen nacheinander
          for(int c = 0; c < 5; c++) {        // Alle LEDs einer Ebene nacheinander
            digitalWrite(anode[a], HIGH);     // LED anschalten
          digitalWrite(cf5[c], LOW);
          d1();
          digitalWrite(anode[a], LOW);      // LED ausschalten
          digitalWrite(cf5[c], HIGH);
        }
      }
    }
    void ff2random(){    
      R = random(1, 6);
      switch (R) {
      case 1:
        ff2();
        break;
      case 2:
        fg2();
        break;
      case 3:
        fh2();
        break;
      case 4:
        fi2();
        break;
      case 5:
        fj2();
        break;
      } 
    }
    void f2(){ 
      for(int a = 21; a > 0; a--){
        switch (a) 
        {
        case 1:
          fa1();
          break;
        case 2:
          fb1();
          break;  
        case 3:
          fc1();
          break; 
        case 4:
          fd1();
          break; 
        case 5:
          fe1();
          break; 
        case 6:
          ff1();
          break;
        case 7:
          fg1();
          break;  
        case 8:
          fh1();
          break; 
        case 9:
          fi1();
          break; 
        case 10:
          fj1();
          break; 
        case 11:
          fa2();
          break;
        case 12:
          fb2();
          break;  
        case 13:
          fc2();
          break; 
        case 14:
          fd2();
          break; 
        case 15:
          fe2();
          break; 
        case 16:
          ff2();
          break;
        case 17:
          fg2();
          break;  
        case 18:
          fh2();
          break; 
        case 19:
          fi2();
          break; 
        case 20:
          fj2();
          break; 
        }  
      }
    }  
    void f1(){  
      for(int a = 0; a < 21; a++){
        switch (a) 
        {
        case 1:
          fa1();
          break;
        case 2:
          fb1();
          break;  
        case 3:
          fc1();
          break; 
        case 4:
          fd1();
          break; 
        case 5:
          fe1();
          break; 
        case 6:
          ff1();
          break;
        case 7:
          fg1();
          break;  
        case 8:
          fh1();
          break; 
        case 9:
          fi1();
          break; 
        case 10:
          fj1();
          break; 
        case 11:
          fa2();
          break;
        case 12:
          fb2();
          break;  
        case 13:
          fc2();
          break; 
        case 14:
          fd2();
          break; 
        case 15:
          fe2();
          break; 
        case 16:
          ff2();
          break;
        case 17:
          fg2();
          break;  
        case 18:
          fh2();
          break; 
        case 19:
          fi2();
          break; 
        case 20:
          fj2();
          break; 
        }  
      }
    }
    void an(){
      digitalWrite(8,HIGH);
      digitalWrite(9,HIGH);
      digitalWrite(10,HIGH);
      digitalWrite(11,HIGH);
      digitalWrite(12,HIGH);
    
      digitalWrite(22,LOW);
      digitalWrite(23,LOW);
      digitalWrite(24,LOW);
      digitalWrite(25,LOW);
      digitalWrite(26,LOW);
    
      digitalWrite(30,LOW);
      digitalWrite(31,LOW);
      digitalWrite(32,LOW);
      digitalWrite(33,LOW);
      digitalWrite(34,LOW);
    
      digitalWrite(38,LOW);
      digitalWrite(39,LOW);
      digitalWrite(40,LOW);
      digitalWrite(41,LOW);
      digitalWrite(42,LOW);
    
      digitalWrite(46,LOW);
      digitalWrite(47,LOW);
      digitalWrite(48,LOW);
      digitalWrite(49,LOW);
      digitalWrite(50,LOW);
    
      digitalWrite(70,LOW);
      digitalWrite(71,LOW);
      digitalWrite(72,LOW);
      digitalWrite(73,LOW);
      digitalWrite(74,LOW);
    }
    void aus(){
      digitalWrite(8,LOW);
      digitalWrite(9,LOW);
      digitalWrite(10,LOW);
      digitalWrite(11,LOW);
      digitalWrite(12,LOW);
    
      digitalWrite(22,HIGH);
      digitalWrite(23,HIGH);
      digitalWrite(24,HIGH);
      digitalWrite(25,HIGH);
      digitalWrite(26,HIGH);
    
      digitalWrite(30,HIGH);
      digitalWrite(31,HIGH);
      digitalWrite(32,HIGH);
      digitalWrite(33,HIGH);
      digitalWrite(34,HIGH);
    
      digitalWrite(38,HIGH);
      digitalWrite(39,HIGH);
      digitalWrite(40,HIGH);
      digitalWrite(41,HIGH);
      digitalWrite(42,HIGH);
    
      digitalWrite(46,HIGH);
      digitalWrite(47,HIGH);
      digitalWrite(48,HIGH);
      digitalWrite(49,HIGH);
      digitalWrite(50,HIGH);
    
      digitalWrite(70,HIGH);
      digitalWrite(71,HIGH);
      digitalWrite(72,HIGH);
      digitalWrite(73,HIGH);
      digitalWrite(74,HIGH);
    
    }
    
    
    Cookies help us deliver our services. By using our services, you agree to our use of cookies.
    Cookies help us deliver our services. By using our services, you agree to our use of cookies.