// /*
// Empowerment Technology
// iParol v2 (PHS - STEM)
// s.2023
// */
// //******************************************
// // USE write() in replace to digitalWrite()
// // The diagram uses 16x16 matrix. Note that the 16th adress will not work
// // This will work with 15x15 boards
// //******************************************
#include "MUX_iParol.h"
byte firstDiag[]={2,16,14,30,196,212,224,210,211,15,18,32,48,34,64,50,80,66,208,194,192,178,176,162,160,146,182,198,168,184,154,170,140,156,28,44,42,58,56,72,70,86,197,183,169,155,71,57,43,29,113};
byte secondDiag[]={1,15,211,225,197,183,169,155,71,57,43,29,17,33,49,65,161,177,193,209,113};
byte thirdDiag[]={1,15,211,225,197,183,169,155,71,57,43,29,17,33,49,65,161,177,193,209,13,8,3,31,181,213,218,223,45,120,195,106,113};
byte fourthDiag[]={1,15,211,225,197,183,169,155,71,57,43,29,17,33,49,65,161,177,193,209,13,8,3,31,181,213,218,223,45,120,195,106,12,60,4,46,166,180,214,222,113,97,99,127,129,32,18,28,44,182,198,208,194,80,66,70,86,140,156,146,160};
byte fifthDiag[]={1,16,2,196,211,212,210,224,225,14,15,30,45,60,105,120,135,180,195,12,13,3,4,7,8,9,213,214,217,218,219,222,223,31,46,166,181,91,106,121,18,32,34,48,50,64,66,80,182,198,168,184,154,170,140,156,194,208,178,192,162,176,146,160,28,44,58,42,56,72,70,86,17,47,19,33,49,65,197,167,199,183,169,155,209,193,179,207,177,161,29,43,59,27,57,71,81,111,141,85,145,115,97,112,127,83,98,113,128,143,99,114,129};
byte sixthDiag[]={1,2,16,14,15,30,196,211,212,224,225,210,3,4,12,13,31,46,166,181,180,195,45,60,213,214,17,33,44,65,29,43,57,71,209,193,177,161,197,183,169,155,47,19,167,199,207,179,27,59,222,223,81,83,85,97,98,99,111,112,113,114,115,127,128,129,141,143,145,32,18,48,34,64,50,80,66,28,44,42,58,56,72,70,86,182,198,168,184,154,170,140,156,208,194,192,178,176,162,160,146,49};
byte seventhDiag[]={64,50,80,66,70,86,56,72,140,156,154,170,146,160,162,176,65,71,155,161,81,83,85,98,111,112,114,115,128,141,143,145};
byte eighthDiag[]={64,50,80,66,70,86,56,72,140,156,154,170,146,160,162,176,48,34,32,18,42,58,28,44,168,184,182,198,178,192,208,194,65,71,155,161,81,83,85,98,111,112,114,115,128,141,143,145,1,2,16,14,15,30,196,211,212,224,210,224};
byte ninethDiag[]={64,50,80,66,70,86,56,72,140,156,154,170,146,160,162,176,48,34,32,18,42,58,28,44,168,184,182,198,178,192,208,194,65,71,155,161,17,33,49,29,43,57,177,193,209,169,183,197,96,97,82,84,98,100,126,127,142,129,130,144,1,2,16,14,15,30,196,211,212,224,210,224,99,113};
byte tenthDiag[]={1,2,16,14,15,196,211,212,224,225,210,50,64,66,80,70,86,56,72,146,160,162,176,140,156,154,170,81,85,141,145,98,111,112,114,115,128,143,65,71,155,161,30};
byte cessone[]={1,2,14,15,16,17,18,23,28,29,30,32,33,34,37,39,42,43,44,48,49,50,51,53,55,56,57,58,64,65,66,67,69,70,71,72,79,80,82,84,86,87,93,95,96,97,99,100,101,103,107,109,117,119,123,125,126,127,129,130,131,133,139,140,142,144,146,147,154,155,156,157,159,160,161,162,168,189,170,171,173,175,176,177,178,182,183,184,187,189,192,193,194,196,197,198,203,208,209,210,211,212,224,225};
byte cesstwo[]={1,2,14,15,16,17,18,23,28,29,30,32,33,34,37,38,39,42,43,44,48,49,50,51,52,53,54,55,56,57,58,64,65,67,69,71,72,79,82,84,87,93,94,95,96,97,99,100,101,102,103,107,108,109,117,118,119,123,124,125,126,127,129,130,131,132,133,139,142,144,147,154,155,156,157,159,160,161,162,168,189,170,171,72,173,174,175,176,177,178,182,183,184,187,188,189,192,193,194,196,197,198,203,208,209,210,211,212,224,225};
byte cessthree[]={1,2,14,15,16,17,18,23,28,29,30,32,33,37,38,39,43,44,49,51,52,53,54,55,57,65,67,69,71,79,82,84,87,93,94,95,96,97,99,100,101,102,103,107,108,109,113,117,118,119,123,124,125,126,130,131,132,133,139,142,144,147,155,157,159,161,189,171,72,173,174175,177,182,183,187,188,189,193,194,196,197,198,203,208,209,210,211,212,224,225};
byte cessfour[]={1,2,14,15,16,17,23,29,30,33,37,38,39,43,49,51,52,53,54,55,57,67,69,79,82,84,87,93,94,95,96,100,101,102,103,107,108,109,117,118,119,123,124,125,126,130,131,132,133,139,142,144,147,157,159,169,171,172,173,174,175,177,183,187,188,189,193,196,197,203,209,210,211,212,224,225};
byte cessfive[]={1,2,14,15,16,17,18,23,28,29,30,32,33,34,37,38,39,42,43,44,48,49,51,52,53,54,55,57,58,65,67,69,71,79,82,84,87,93,94,95,96,97,99,100,101,102,103,107,108,109,117,118,119,123,124,125,126,127,129,130,131,132,133,139,142,144,147,155,156,157,159,160,161,168,189,171,72,173,174,175,177,178,182,183,184,187,188,189,192,193,194,196,197,198,203,208,209,210,211,212,224,225};
byte cesssix[]={1,2,14,15,16,17,23,29,30,33,37,38,39,43,51,52,53,54,55,67,69,79,87,93,94,95,101,102,103,107,108,109,113,117,118,119,123,124,125,131,132,133,139,147,157,159,171,172,173,174,175,183,187,188,189,193,196,197,203,209,210,211,212,224,225};
byte cessseven[]={1,2,14,15,16,17,23,29,30,37,38,39,51,52,53,54,55,67,69,79,87,93,94,95,101,102,103,107,108,109,117,118,119,123,124,125,131,132,133,139,147,157,159,171,172,173,174,175,187,188,189,196,197,203,209,210,211,212,224,225};
byte cesseight[]={1,2,14,15,16,23,30,37,38,39,51,52,53,54,55,67,69,79,87,93,94,95,101,102,103,107,108,109,117,118,119,123,124,125,131,132,133,139,147,157,159,171,172,173,174,175,187,188,189,196,203,210,211,212,224,225};
byte cessnine[]={23,37,38,39,51,52,53,54,55,67,69,79,87,93,94,95,101,102,103,107,108,109,117,118,119,123,124,125,131,132,133,139,147,157,159,171,172,173,174,175,187,188,189,203};
byte cessten[]={1,2,14,15,16,17,23,29,30,37,38,39,51,52,53,54,55,67,69,79,83,87,93,94,95,101,102,103,107,108,109,111,113,115,117,118,119,123,124,125,131,132,133,139,143,147,157,159,171,172,173,174,175,187,188,189,196,197,203,209,210,211,212,224,225};
byte toshone[]={1,2,3,5,11,13,14,15,16,17,23,29,30,31,37,38,39,45,51,52,53,54,55,61,65,67,69,71,75,79,83,87,93,94,95,101,102,103,107,108,109,111,113,115,117,118,119,123,124,125,131,132,133,139,143,147,151,155,157,159,161,165,171,172,173,174,175,181,187,188,189,195,196,197,203,209,210,211,212,213,215,221,223,224,225};
byte toshtwo[]={1,2,3,5,6,10,11,13,14,15,16,17,18,23,28,29,30,31,32,33,37,38,39,43,44,45,49,51,52,53,54,55,57,61,65,67,69,71,75,76,79,81,83,85,87,90,93,94,95,101,102,103,107,108,109,111,113,115,117,118,119,123,124,125,131,132,133,136,139,141,143,145,147,150,151,155,157,159,161,165,169,171,172,173,174,175,177,181,182183,187,188,189,193,194,195,196,197,198,203,208,209,210,211,212,213,215,216,220,221,223,224,225};
byte toshthree[]={1,2,3,5,6,10,11,13,14,15,16,17,18,23,28,29,30,31,32,33,34,37,38,39,42,43,44,45,48,49,51,52,53,54,55,57,58,61,65,67,69,71,75,76,79,81,83,85,87,90,93,94,95,101,102,103,107,108,109,111,113,115,117,118,119,123,124,125,131,132,133,136,139,141,143,145,147,150,151,155,157,159,161,165,168,169,171,172,173,174,175,177,178,181,182,183,184,187,188,189,192,193,194,195,196,197,198,203,208,209,210,211,212,213,215,216,220,221,223,224,225};
byte toshfour[]={1,2,3,5,6,7,9,10,11,13,14,15,16,17,23,29,30,31,33,34,37,38,39,42,43,45,48,49,50,51,52,53,54,55,56,57,58,61,64,65,67,69,71,72,75,76,79,81,83,85,87,90,91,93,94,95,101,102,103,105,107,108,109,111,113,115,117,118,119,121,123,124,125,131,132,133,135,136,139,141,143,145,147,150,151,154,155,157,159,161,162,165,168,169,170,171,172,173,174,175,176,177,178,181,183,184,187,188,189,192,193,195,196,197,203,209,210,211,212,213,215,216,217,219,220,221,223,224,225};
byte toshfive[]={2,3,5,7,9,11,13,14,16,23,30,31,34,37,39,42,45,48,50,51,53,55,56,58,61,64,67,69,72,75,79,81,83,85,87,91,93,95,97,99,101,102,103,105,107,109,111,113,115,117,119,121,123,125,126,128,13,131,133,135,139,141,143,145,147,154,151,157,159,162,165,168,170,171,173,175,176,178,181,184,187,189,192,195,196,203,210,212,213,215,217,219,221,223,224};
byte toshsix[]={2,3,5,7,9,11,13,14,16,18,23,28,30,31,32,34,37,39,42,44,45,48,50,51,53,55,56,58,61,64,66,67,69,70,72,75,79,80,81,83,85,86,87,91,93,95,97,99,101,103,105,107,109,111,113,115,117,119,121,123,125,127,129,131,133,135,139,140,141,143,145,146,147,151,154,156,157,159,160,162,165,168,170,171,173,175,176,178,181,182,184,187,189,192,194,195,196,198,203,208,210,212,213,215,217,219,221,223,224};
byte toshseven[]={3,5,7,9,11,13,18,23,28,31,32,34,37,39,42,44,45,48,50,51,53,55,56,58,61,64,66,67,69,70,72,75,79,80,83,86,87,91,93,95,97,99,101,103,105,107,109,111,115,117,119,121,123,125,127,129,131,133,135,139,140,143,146,147,151,154,156,157,159,160,162,165,168,170,171,173,175,176,178,181,182,184,187,189,192,194,195,198,203,208,213,215,217,219,221,223};
byte tosheight[]={1,2,14,15,16,18,23,28,30,32,34,37,38,39,42,44,48,50,51,52,53,54,55,56,58,64,66,67,69,70,72,79,80,81,82,84,85,86,87,93,94,95,96,97,99,100,101,102,103,107,108,109,117,118,119,123,124,125,126,127,129,130,131,132,133,139,140,141,142,144,145,146,147,154,156,157,159,160,162,168,170,171,172,173,174,175,176,178,182,184,187,188,189,192,194,196,198,203,208,210,211,212,224,225};
byte toshnine[]={2,14,16,17,23,29,30,33,37,39,42,49,51,53,55,57,65,67,69,71,79,81,82,84,85,87,93,95,96,100,101,103,107,109,117,119,123,125,126,130,131,133,139,141,142,144,145,147,155,157,159,161,169,171,173,175,177,183,187,189,193,196,197,203,209,110,212,224};
byte toshten[]={0};
void setup() {
//you dont need to write anything here
iParol_Init();
}
void loop() {
for (byte i=0; i<=50; i++){
write(firstDiag[i], HIGH);
}
delay(500);
for (byte i=0; i<=50; i++){
write(firstDiag[i], LOW);
}
delay(500);
for (byte i=0; i<=20; i++){
write(secondDiag[i], HIGH);
}
delay(500);
for (byte i=0; i<=20; i++){
write(secondDiag[i], LOW);
}
delay(500);
for (byte i=0; i<=32; i++){
write(thirdDiag[i], HIGH);
}
delay(500);
for (byte i=0; i<=32; i++){
write(thirdDiag[i], LOW);
}
delay(500);
for (byte i=0; i<=60; i++){
write(fourthDiag[i], HIGH);
}
delay(500);
for (byte i=0; i<=60; i++){
write(fourthDiag[i], LOW);
}
delay(500);
for (byte i=0; i<=112; i++){
write(fifthDiag[i], HIGH);
}
delay(500);
for (byte i=0; i<=112; i++){
write(fifthDiag[i], LOW);
}
delay(500);
for (byte i=0; i<=101; i++){
write(sixthDiag[i], HIGH);
}
delay(500);
for (byte i=0; i<=101; i++){
write(sixthDiag[i], LOW);
}
delay(500);
for (byte i=0; i<=31; i++){
write(seventhDiag[i], HIGH);
}
delay(500);
for (byte i=0; i<=31; i++){
write(seventhDiag[i], LOW);
}
delay(500);
for (byte i=0; i<=59; i++){
write(eighthDiag[i], HIGH);
}
delay(500);
for (byte i=0; i<=59; i++){
write(eighthDiag[i], LOW);
delay(500);
for (byte i=0; i<=73; i++){
write(ninethDiag[i], HIGH);
}
delay(500);
for (byte i=0; i<=73; i++){
write(ninethDiag[i], LOW);
}
delay(500);
for (byte i=0; i<=42; i++){
write(tenthDiag[i], HIGH);
}
delay(500);
for (byte i=0; i<=42; i++){
write(tenthDiag[i], LOW);
}
delay(500);
for (byte i=0; i<=104; i++){
write(cessone[i], HIGH);
}
delay(500);
for (byte i=0; i<=104; i++){
write(cessone[i], LOW);
}
delay(500);
for (byte i=0; i<=109; i++){
write(cesstwo[i], HIGH);
}
delay(500);
for (byte i=0; i<=109; i++){
write(cesstwo[i], LOW);
}
delay(500);
for (byte i=0; i<=90; i++){
write(cessthree[i], HIGH);
}
delay(500);
for (byte i=0; i<=90; i++){
write(cessthree[i], LOW);
}
delay(500);
for (byte i=0; i<=75; i++){
write(cessfour[i], HIGH);
}
delay(500);
for (byte i=0; i<=75; i++){
write(cessfour[i], LOW);
}
delay(500);
for (byte i=0; i<=101; i++){
write(cessfive[i], HIGH);
}
delay(500);
for (byte i=0; i<=101; i++){
write(cessfive[i], LOW);
}
delay(500);
for (byte i=0; i<=64; i++){
write(cesssix[i], HIGH);
}
delay(500);
for (byte i=0; i<=64; i++){
write(cesssix[i], LOW);
}
delay(500);
for (byte i=0; i<=59; i++){
write(cessseven[i], HIGH);
}
delay(500);
for (byte i=0; i<=59; i++){
write(cessseven[i], LOW);
}
delay(500);
for (byte i=0; i<=55; i++){
write(cesseight[i], HIGH);
}
delay(500);
for (byte i=0; i<=55; i++){
write(cesseight[i], LOW);
}
delay(500);
for (byte i=0; i<=43; i++){
write(cessnine[i], HIGH);
}
delay(500);
for (byte i=0; i<=43; i++){
write(cessnine[i], LOW);
}
delay(500);
for (byte i=0; i<=64; i++){
write(cessten[i], HIGH);
}
delay(500);
for (byte i=0; i<=64; i++){
write(cessten[i], LOW);
}
delay(500);
for (byte i=0; i<84; i++){
write(toshone[i], HIGH);
}
delay(500);
for (byte i=0; i<84; i++){
write(toshone[i], LOW);
}
delay(500);
for (byte i=0; i<112; i++){
write(toshtwo[i], HIGH);
}
delay(500);
for (byte i=0; i<112; i++){
write(toshtwo[i], LOW);
}
delay(500);
for (byte i=0; i<102; i++){
write(toshthree[i], HIGH);
}
delay(500);
for (byte i=0; i<102; i++){
write(toshthree[i], LOW);
}
delay(500);
for (byte i=0; i<109; i++){
write(toshfour[i], HIGH);
}
delay(500);
for (byte i=0; i<109; i++){
write(toshfour[i], LOW);
}
delay(500);
for (byte i=0; i<94; i++){
write(toshfive[i], HIGH);
}
delay(500);
for (byte i=0; i<94; i++){
write(toshfive[i], LOW);
}
delay(500);
for (byte i=0; i<93; i++){
write(toshsix[i], HIGH);
}
delay(500);
for (byte i=0; i<93; i++){
write(toshsix[i], LOW);
}
delay(500);
for (byte i=0; i<95; i++){
write(toshseven[i], HIGH);
}
delay(500);
for (byte i=0; i<95; i++){
write(toshseven[i], LOW);
}
delay(500);
for (byte i=0; i<103; i++){
write(tosheight[i], HIGH);
}
delay(500);
for (byte i=0; i<103; i++){
write(tosheight[i], LOW);
}
delay(500);
for (byte i=0; i<67; i++){
write(toshnine[i], HIGH);
}
delay(500);
for (byte i=0; i<67; i++){
write(toshnine[i], LOW);
}
delay(500);
for (byte i=0; i<0; i++){
write(toshten[i], HIGH);
}
delay(500);
for (byte i=0; i<0; i++){
write(toshten[i], LOW);
}
}
}