// //******************************************
// // 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"
//Create your array below
byte listGreenBorderLeftUp[] = {7,6,5,4,3,2,1,16,31,46,61,76,91};
byte listGreenBorderRightUp[] = {121,136,151,166,181,196,211,212,213,214,215,216,217};
byte listGreenBorderRightDown[] = {219,220,221,222,223,224,225,210,195,180,165,150,135};
byte listGreenBorderLeftDown[] = {105,90,75,60,45,30,15,14,13,12,11,10,9};
byte listMidOrange[] = {97,127,99,129};
byte listMidBlue[] = {112,128,114,98};
byte listMidGreen[] = {111,83,115,143};
byte listMidRed[] = {110,96,82,68,84,100,116,130,144,158,142,126};
byte listMidPurpleUp[] = {95,94,109,124,125};
byte listMidPurpleRight[] = {157,172,173,174,159};
byte listMidPurpleDown[] = {131,132,117,102,101};
byte listMidPurpleLeft [] = {69,54,53,52,67};
byte listMidYellowLeftUp[] = {66,81,80};
byte listMidYellowLeftDown[] = {70,85,86};
byte listMidYellowRightUp[] = {156,141,140};
byte listMidYellowRightDown[] = {160,145,146};
byte listParralelBlueRightUp[] = {123,139,155,171,187};
byte listParralelBlueLeftDown[] = {103,87,71,55,39};
byte listParralelPinkLeftUp[] = {37,51,65,79,93};
byte listParralelPinkRightDown[] = {189,175,161,147,133};
byte listRedEdges[] = {108,188,118,38};
byte listYellowEdges[] = {107,203,119,23};
byte listYellowCorners[] = {33,183,193,43};
byte listBigRedDiamond[] = {106,122,138,154,170,186,202,218,204,190,176,162,148,134,120,104,88,72,56,40,24,8,22,36,50,64,78,92};
byte listOrangeZigzagLeftUp[] = {21,20,35,34,49,48,63,62,77};
byte listOrangeZigzagRightUp[] = {201,200,185,184,169,168,153,152,137};
byte listOrangeZigzagLeftDown[] = {25,26,41,42,57,58,73,74,89};
byte listOrangeZigzagRightDown[] = {205,206,191,192,177,178,163,164,149};
//patterns below
byte listCenter[] = {113};
byte listAllCorners[] = {1,15,211,225};
byte listGreenTopLeftH[] = {16,31,46,61,76,91};
byte listGreenTopLeftV[] = {2,3,4,5,6,7};
byte listGreenTopRightH[] = {196,181,166,151,136,121};
byte listGreenTopRightV[] = {212,213,214,215,216,217};
byte listGreenBottomLeftH[] = {30,45,60,75,90,105};
byte listGreenBottomLeftV[] = {14,13,12,11,10,9};
byte listGreenBottomRightH[] = {210,195,180,165,150,135};
byte listGreenBottomRightV[] = {224,223,222,221,220,219};
byte listBlinkingGreenBorderA[] = {1,31,61,91,121,151,181,211,213,215,217,219,221,223,225,195,165,135,105,75,60,45,15,13,11,9,7,5,3};
byte listBlinkingGreenBorderB[] = {16,46,76,136,166,196,212,214,216,220,222,224,210,180,150,90,60,30,14,12,10,6,4,2};
byte listLeftUp[] = {1,2,3,4,5,6,7,8,16,17,18,19,20,21,22,23,31,32,33,34,35,36,37,38,46,47,48,49,50,51,52,53,61,62,63,64,65,66,67,68,76,77,78,79,80,81,82,83,91,92,93,94,95,96,97,98};
byte listRightUp[] = {106,107,108,109,110,111,112,121,122,123,124,125,126,127,136,137,138,139,140,141,142,151,152,153,154,155,156,157,166,167,168,169,170,171,172,181,182,183,184,185,186,187,196,197,198,199,200,201,202,211,212,213,214,215,216,217};
byte listRightDown[] = {128,129,130,131,132,133,134,135,143,144,145,146,147,148,149,150,158,159,160,161,162,163,164,165,173,174,175,176,177,178,179,180,188,189,190,191,192,193,194,195,203,204,205,206,207,208,209,210,218,219,220,221,222,223,224,225};
byte listLeftDown[] = {9,10,11,12,13,14,15,24,25,26,27,28,29,30,39,40,41,42,43,44,45,54,55,56,57,58,59,60,69,70,71,72,73,74,75,84,85,86,87,88,89,90,99,100,101,102,103,104,105,114,115,116,117,118,119,120};
byte listMidShrinkingA[] = {107,123,139,155,171,187,203,189,175,161,147,133,119,103,87,71,55,39,23,37,51,65,79,93};
byte listMidShrinkingB[] = {108,124,140,156,172,188,174,160,146,132,118,102,86,70,54,38,52,66,80,94};
byte listMidShrinkingC[] = {109,125,141,157,173,159,145,131,117,101,85,69,53,67,81,95};
byte listMidShrinkingD[] = {110,126,142,158,144,130,116,100,84,68,82,96};
byte listMidShrinkingE[] = {111,127,143,129,115,99,83,97};
byte listSmallRedDiamondA[] = {96,142,130,84};
byte listSmallRedDiamondB[] = {126,144,100,82};
byte listCornerSquareLeftUp[] = {19,18,17,32,47,48,49,34,33};
byte listCornerSquareRightUp[] = {199,198,197,182,167,168,169,184,183};
byte listCornerSquareRightDown[] = {207,208,209,194,179,178,177,192,193};
byte listCornerSquareLeftDown[] = {27,28,29,44,59,58,57,42,43};
byte listCenterFlower[] = {112,128,114,98,113};
byte listTopFlower[] = {106,122,108,92,107};
byte listRightFlower[] = {202,218,204,188,203};
byte listDownFlower[] = {118,134,120,104,119};
byte listLeftFlower[] = {22,38,24,8,23};
byte listStarLeftUp[] = {97,96,95,82,67};
byte listStarRightUp[] = {127,126,125,142,157};
byte listStarLeftDown[] = {99,100,101,84,69};
byte listStarRightDown[] = {129,130,131,144,159};
byte listStarEnd[] = {109,173,117,53,66,81,80,156,141,140,160,145,146,70,85,86};
byte listShrinkingA[] = {1,16,31,46,61,76,91,106,121,136,151,166,181,196,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,210,195,180,165,150,135,120,105,90,75,60,45,30,15,14,13,12,11,10,9,8,7,6,5,4,3,2};
byte listShrinkingB[] = {17,32,47,62,77,92,107,122,137,152,167,182,197,198,199,200,201,202,203,204,205,206,207,208,209,194,179,164,149,134,119,104,89,74,59,44,29,28,27,26,25,24,23,22,21,20,19,18};
byte listShrinkingC[] = {33,48,63,78,93,108,123,138,153,168,183,184,185,186,187,188,189,190,178,163,148,133,118,103,88,73,58,43,42,41,40,39,38,37,36,35,34};
byte listShrinkingD[] = {49,64,79,94,109,124,139,154,169,170,171,172,173,174,175,176,177,162,147,132,117,102,87,72,57,56,55,54,53,52,51,50};
byte listShrinkingE[] = {65,80,95,110,125,140,155,156,157,158,159,160,161,146,131,116,101,86,71,70,69,68,67,66,};
byte listShrinkingF[] = {81,96,111,126,141,142,143,144,145,130,115,100,85,84,83,82};
byte listShrinkingG[] = {97,112,127,128,129,114,99,98,113};
void setup() {
//You don't need to write anything here
iParol_Init();
}
void loop() {
//Call your user-defined functions here
intro();
star();
}
//Create your own user-defined funtions here
void intro() {
write(1, HIGH);
write(113, HIGH);
write(225, HIGH);
delay(200);
write(2, HIGH);
write(16, HIGH);
write(128, HIGH);
write(224, HIGH);
write(210, HIGH);
delay(200);
write(3, HIGH);
write(31, HIGH);
write(112, HIGH);
write(223, HIGH);
write(195, HIGH);
delay(200);
write(4, HIGH);
write(46, HIGH);
write(114, HIGH);
write(222, HIGH);
write(180, HIGH);
delay(200);
write(5, HIGH);
write(61, HIGH);
write(98, HIGH);
write(221, HIGH);
write(165, HIGH);
delay(200);
for (int i = 0; i <= 3; i++) {
write(listMidBlue[i], LOW);
}
for (int i = 0; i <= 3; i++) {
write(listMidOrange[i], HIGH);
}
write(6, HIGH);
write(76, HIGH);
write(220, HIGH);
write(150, HIGH);
delay(200);
for (int i = 0; i <= 3; i++) {
write(listMidOrange[i], LOW);
}
for (imt i = 0; i <= 3; i++) {
write(listMidBlue[i], HIGH);
}
write(7, HIGH);
write(91, HIGH);
write(219, HIGH);
write(135, HIGH);
delay(200);
for (int i = 0; i <= 4; i++) {
write(listCornersAndCenter[i], LOW);
}
for (int i = 0; i <= 5; i++) {
write(listGreenTopLeftH[i], LOW);
}
for (int i = 0; i <= 5; i++) {
write(listGreenTopLeftV[i], LOW);
}
for (int i = 0; i <= 5; i++) {
write(listGreenBottomRightH[i], LOW);
}
for (int i = 0; i <= 5; i++) {
write(listGreenBottomRightV[i], LOW);
}
for (int i = 0; i <= 3; i++) {
write(listMidBlue[i], LOW);
}
for (int i = 0; i <= 3; i++) {
write(listMidOrange[i], HIGH);
}
write(15, HIGH);
write(211, HIGH);
delay(200);
for (int i = 0; i <= 3; i++) {
write(listMidOrange[i], LOW);
}
for (int i = 0; i <= 3; i++) {
write(listMidBlue[i], HIGH);
}
write(14, HIGH);
write(30, HIGH);
write(196, HIGH);
write(212, HIGH);
delay(200);
for (int i = 0; i <= 3; i++) {
write(listMidBlue[i], LOW);
}
for (int i = 0; i <= 3; i++) {
write(listMidOrange[i], HIGH);
}
write(13, HIGH);
write(45, HIGH);
write(181, HIGH);
write(213, HIGH);
delay(100);
write(97, LOW);
write(12, HIGH);
write(60, HIGH);
write(166, HIGH);
write(214, HIGH);
delay(100);
write(127, LOW);
write(11, HIGH);
write(75, HIGH);
write(151, HIGH);
write(215, HIGH);
delay(100);
write(129, LOW);
write(10, HIGH);
write(90, HIGH);
write(136, HIGH);
write(216, HIGH);
delay(100);
write(99, LOW);
write(9, HIGH);
write(105, HIGH);
write(121, HIGH);
write(217, HIGH);
delay(200);
for (int i = 0; i <= 5; i++) {
write(listGreenBottomLeftH[i], LOW);
}
for (int i = 0; i <= 5; i++) {
write(listGreenBottomLeftV[i], LOW);
}
for (int i = 0; i <= 5; i++) {
write(listGreenTopRightH[i], LOW);
}
for (int i = 0; i <= 5; i++) {
write(listGreenTopRightV[i], LOW);
}
delay(200);
for (int i = 0; i <= 3; i++) {
write(listMidOrange[i], HIGH);
delay(200);
}
for (int i = 0; i <= 3; i++) {
write(listMidBlue[i], HIGH);
delay(200);
}
for (int i = 0; i <= 3; i++) {
write(listMidGreen[i], HIGH);
delay(200);
}
for (int i = 0; i <= 11; i++) {
write(listMidRed[i], HIGH);
delay(200);
}
write(109, HIGH);
write(173, HIGH);
write(117, HIGH);
write(53, HIGH);
delay(200);
write(94, HIGH);
write(124, HIGH);
write(172, HIGH);
write(174, HIGH);
write(132, HIGH);
write(102, HIGH);
write(54, HIGH);
write(52, HIGH);
delay(200);
write(95, HIGH);
write(125, HIGH);
write(157, HIGH);
write(159, HIGH);
write(131, HIGH);
write(101, HIGH);
write(69, HIGH);
write(67, HIGH);
delay(200);
for (int i = 0; i <= 3; i++) {
write(listMidOrange[i], LOW);
}
for (int i = 0; i <= 3; i++) {
write(listMidBlue[i], LOW);
}
for (int i = 0; i <= 3; i++) {
write(listMidGreen[i], LOW);
}
for (int i = 0; i <= 11; i++) {
write(listMidRed[i], LOW);
}
write(109, LOW);
write(173, LOW);
write(117, LOW);
write(53, LOW);
write(94, LOW);
write(124, LOW);
write(172, LOW);
write(174, LOW);
write(132, LOW);
write(102, LOW);
write(54, LOW);
write(52, LOW);
write(95, LOW);
write(125, LOW);
write(157, LOW);
write(159, LOW);
write(131, LOW);
write(101, LOW);
write(69, LOW);
write(67, LOW);
delay(200);
}
void star() {
write(33, HIGH);
write(43, HIGH);
write(113, HIGH);
write(183, HIGH);
write(193, HIGH);
delay(200);
write(19, HIGH);
write(169, HIGH);
write(29, HIGH);
write(179, HIGH);
delay(200);
write(18, HIGH);
write(168, HIGH);
write(178, HIGH);
write(28, HIGH);
write(97, HIGH);
write(127, HIGH);
write(129, HIGH);
write(99, HIGH);
delay(200);
write(19, LOW);
write(169, LOW);
write(29, LOW);
write(179, LOW);
write(17, HIGH);
write(167, HIGH);
write(177, HIGH);
write(27, HIGH);
write(96, HIGH);
write(126, HIGH);
write(142, HIGH);
write(144, HIGH);
write(130, HIGH);
write(100, HIGH);
write(84, HIGH);
write(82, HIGH);
delay(200);
write(18, LOW);
write(168, LOW);
write(178, LOW);
write(28, LOW);
write(32, HIGH);
write(182, HIGH);
write(192, HIGH);
write(42, HIGH);
write(95, HIGH);
write(125, HIGH);
write(157, HIGH);
write(159, HIGH);
write(131, HIGH);
write(101, HIGH);
write(69, HIGH);
write(67, HIGH);
delay(200);
write(17, LOW);
write(167, LOW);
write(177, LOW);
write(27, LOW);
write(47, HIGH);
write(197, HIGH);
write(207, HIGH);
write(57, HIGH);
write(81, HIGH);
write(141, HIGH);
write(145, HIGH);
write(85, HIGH);
delay(200);
write(32, LOW);
write(182, LOW);
write(192, LOW);
write(42, LOW);
write(48, HIGH);
write(198, HIGH);
write(208, HIGH);
write(58, HIGH);
write(80, HIGH);
write(140, HIGH);
write(156, HIGH);
write(160, HIGH);
write(146, HIGH);
write(86, HIGH);
write(70, HIGH);
write(66, HIGH);
delay(200);
write(47, LOW);
write(197, LOW);
write(207, LOW);
write(57, LOW);
write(49, HIGH);
write(199, HIGH);
write(209, HIGH);
write(59, HIGH);
write(109, HIGH);
write(173, HIGH);
write(117, HIGH);
write(53, HIGH);
delay(200);
write(48, LOW);
write(198, LOW);
write(208, LOW);
write(58, LOW);
write(34, HIGH);
write(184, HIGH);
write(194, HIGH);
write(44, HIGH);
delay(200);
write(49, LOW);
write(199, LOW);
write(209, LOW);
write(59, LOW);
write(19, HIGH);
write(169, HIGH);
write(179, HIGH);
write(29, HIGH);
write(109, LOW);
write(173, LOW);
write(117, LOW);
write(53, LOW);
delay(200);
write(34, LOW);
write(184, LOW);
write(194, LOW);
write(44, LOW);
write(18, HIGH);
write(168, HIGH);
write(178, HIGH);
write(28, HIGH);
write(80, LOW);
write(140, LOW);
write(156, LOW);
write(160, LOW);
write(146, LOW);
write(86, LOW);
write(70, LOW);
write(66, LOW);
delay(200);
write(19, LOW);
write(169, LOW);
write(179, LOW);
write(29, LOW);
write(17, HIGH);
write(167, HIGH);
write(177, HIGH);
write(27, HIGH);
write(81, LOW);
write(141, LOW);
write(145, LOW);
write(85, LOW);
delay(200);
write(18, LOW);
write(168, LOW);
write(178, LOW);
write(28, LOW);
write(32, HIGH);
write(182, HIGH);
write(192, HIGH);
write(42, HIGH);
write(95, LOW):
write(125, LOW);
write(157, LOW);
write(159, LOW);
write(131, LOW);
write(101, LOW);
write(69, LOW);
write(67, LOW);
delay(200);
write(17, LOW);
write(167, LOW);
write(177, LOW);
write(27, LOW);
write(47, HIGH);
write(197, HIGH);
write(207, HIGH);
write(57, HIGH);
write(96, LOW);
write(126, LOW);
write(142, LOW);
write(144, LOW);
write(130, LOW);
write(100, LOW);
write(84, LOW);
write(82, LOW);
delay(200);
write(32, LOW);
write(182, LOW);
write(192, LOW);
write(42, LOW);
write(48, HIGH);
write(198, HIGH);
write(208, HIGH);
write(58, HIGH);
write(97, LOW);
write(127, LOW);
write(129, LOW);
write(99, LOW);
delay(200);
write(47, LOW);
write(197, LOW);
write(207, LOW);
write(57, LOW);
write(48, LOW);
write(198, LOW);
write(208, LOW);
write(58, LOW);
delay(200);
write(33, LOW);
write(43, LOW);
write(113, LOW);
write(183, LOW);
write(193, LOW);
}
void flowers() {
write(113, HIGH);
write(107, HIGH);
write(203, HIGH);
write(119, HIGH);
write(23, HIGH);
delay(200);
write(112, HIGH);
write(106, HIGH);
write(202, HIGH);
write(118, HIGH);
write(22, HIGH);
delay(200);
write(98, HIGH);
write(92, HIGH);
write(188, HIGH);
write(104, HIGH);
write(8, HIGH);
delay(200);
write(114, HIGH);
write(108, HIGH);
write(204, HIGH);
write(120, HIGH);
write(24, HIGH);
delay(200);
write(128, HIGH);
write(122, HIGH);
write(218, HIGH);
write(134, HIGH);
write(38, HIGH);
delay(200);
write(112, LOW);
write(106, LOW);
write(202, LOW);
write(118, LOW);
write(22, LOW);
write(98, LOW);
write(92, LOW);
write(188, LOW);
write(104, LOW);
write(8, LOW);
write(114, LOW);
write(108, LOW);
write(204, LOW);
write(120, LOW);
write(24, LOW);
write(128, LOW);
write(122, LOW);
write(218, LOW);
write(134, LOW);
write(38, LOW);
delay(200);
write(128, HIGH);
write(122, HIGH);
write(218, HIGH);
write(134, HIGH);
write(38, HIGH);
delay(200);
write(112, HIGH);
write(106, HIGH);
write(202, HIGH);
write(118, HIGH);
write(22, HIGH);
write(98, HIGH);
write(92, HIGH);
write(188, HIGH);
write(104, HIGH);
write(8, HIGH);
write(114, HIGH);
write(108, HIGH);
write(204, HIGH);
write(120, HIGH);
write(24, HIGH);
write(128, HIGH);
write(122, HIGH);
write(218, HIGH);
write(134, HIGH);
write(38, HIGH);
delay(200);
write(114, HIGH);
write(108, HIGH);
write(204, HIGH);
write(120, HIGH);
write(24, HIGH);
delay(200);
write(128, HIGH);
write(122, HIGH);
write(218, HIGH);
write(134, HIGH);
write(38, HIGH);
delay(200);
write(112, LOW);
write(106, LOW);
write(202, LOW);
write(118, LOW);
write(22, LOW);
write(98, LOW);
write(92, LOW);
write(188, LOW);
write(104, LOW);
write(8, LOW);
write(114, LOW);
write(108, LOW);
write(204, LOW);
write(120, LOW);
write(24, LOW);
write(128, LOW);
write(122, LOW);
write(218, LOW);
write(134, LOW);
write(38, LOW);
delay(200);
write(128, HIGH);
write(122, HIGH);
write(218, HIGH);
write(134, HIGH);
write(38, HIGH);
delay(200);
write(112, HIGH);
write(106, HIGH);
write(202, HIGH);
write(118, HIGH);
write(22, HIGH);
write(98, HIGH);
write(92, HIGH);
write(188, HIGH);
write(104, HIGH);
write(8, HIGH);
write(114, HIGH);
write(108, HIGH);
write(204, HIGH);
write(120, HIGH);
write(24, HIGH);
write(128, HIGH);
write(122, HIGH);
write(218, HIGH);
write(134, HIGH);
write(38, HIGH);
delay(200);
write(112, LOW);
write(106, LOW);
write(202, LOW);
write(118, LOW);
write(22, LOW);
delay(200);
write(128, LOW);
write(122, LOW);
write(218, LOW);
write(134, LOW);
write(38, LOW);
delay(200);
write(114, LOW);
write(108, LOW);
write(204, LOW);
write(120, LOW);
write(24, LOW);
delay(200);
write(98, LOW);
write(92, LOW);
write(188, LOW);
write(104, LOW);
write(8, LOW);
delay(200);
}