// //******************************************
// // 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 turningoffDiamond[] = {1, 211, 15, 225, 6, 7, 8, 9, 10, 22, 23, 24, 38, 216, 217, 218, 219, 220, 202, 203, 204, 188 };
byte turningoffDiamond2[] = {4, 5, 11, 12, 20, 21, 25, 26, 36, 37, 39, 40, 52, 53, 54, 68, 158, 172, 173, 174, 186, 187, 189, 190, 200, 201, 205, 206, 214, 215, 221, 222};
byte turningoffDiamond3[] = {3, 19, 35, 51, 67, 83, 69, 55, 41, 27, 13, 143, 157, 159, 171, 175, 185, 191, 199, 207, 213, 223 };
byte turningoffDiamond4[] = {217, 18, 33, 34, 49, 50, 65, 66, 81, 82, 97, 99, 84, 85, 70, 71, 56, 57, 42, 43, 28, 127, 129, 141, 142, 144, 145, 155, 156, 160, 161, 169, 170, 176, 177, 183, 184, 192, 193, 198, 208, };
byte turningoffDiamond5[] = {113, 16, 14, 29, 2, 13, 17, 23, 224, 209, 197, 212, 32, 48, 64, 80, 96, 112, 98, 114, 100, 86, 72, 58, 44, 30, 126, 128, 130, 140, 146, 154, 162, 168, 178, 182, 194, 196, 210, 211, 225 };
byte turningoffDiamond6[] = {45, 59, 73, 87, 101, 115, 131, 147, 163, 179, 195, 31, 47, 63, 79, 95, 111, 125, 139, 153, 167, 181 };
byte turningoffDiamond7[] = {60, 75, 165, 180, 74, 89, 88, 103, 102, 117, 132, 116, 133, 148, 149, 164, 46, 61, 62, 77, 151, 166, 137, 152, 78, 93, 123, 138, 94, 109, 124, 110 };
byte turningoffDiamond8[] = {76, 91, 121, 136, 92, 107, 122, 108, 90, 105, 135, 150, 104, 119, 134, 118 };
byte heart1 [] = {24, 40, 56, 72, 88, 104, 204, 190, 176, 162, 148, 134, 92, 107, 122, 46, 61, 76, 91, 121, 136, 151, 166};
byte heart2 [] = {3, 17, 31, 181, 197, 213, 4, 5, 6, 7, 8, 214, 215, 216, 217, 218};
byte heart3 [] = {119, 103, 87, 71, 55, 39, 23, 22, 21, 20, 19, 18, 32, 47, 62, 77, 108, 137, 152, 167, 182, 198, 199, 200, 201, 202, 203, 189, 175, 161, 147, 133, 118, 102, 86, 70, 54, 38, 37, 36, 35, 34, 33, 48, 63, 78, 93, 109, 123, 138, 153, 168, 183, 184, 185, 186, 187, 188, 174, 160, 146, 132, 117, 101, 85, 69, 53, 52, 51, 50, 49, 64, 79, 94, 110, 124, 139, 154, 169, 170, 171, 172, 173, 159, 145, 131, 116, 115, 100, 84, 68, 67, 66, 65, 80, 95, 111, 125, 140, 155, 156, 157, 158, 144, 130, 114, 99, 83, 82, 81, 96, 112, 126, 141, 142, 143, 129 };
byte heartLast [] = {97, 98, 127, 128};
byte lowHeart3 [] = {97, 98, 127, 128, 113, 119, 103, 87, 71, 55, 39, 23, 22, 21, 20, 19, 18, 32, 47, 62, 77, 108, 137, 152, 167, 182, 198, 199, 200, 201, 202, 203, 189, 175, 161, 147, 133, 118, 102, 86, 70, 54, 38, 37, 36, 35, 34, 33, 48, 63, 78, 93, 109, 123, 138, 153, 168, 183, 184, 185, 186, 187, 188, 174, 160, 146, 132, 117, 101, 85, 69, 53, 52, 51, 50, 49, 64, 79, 94, 110, 124, 139, 154, 169, 170, 171, 172, 173, 159, 145, 131, 116, 115, 100, 84, 68, 67, 66, 65, 80, 95, 111, 125, 140, 155, 156, 157, 158, 144, 130, 114, 99, 83, 82, 81, 96, 112, 126, 141, 142, 143, 129 };
byte layer1 [] = {103, 118, 133, 119, 87, 102, 117, 132, 147, 71, 86, 101, 116, 131, 146, 161, 55, 70, 85, 100, 115, 130, 145, 160, 175 };
byte layer2 [] = {39, 54, 69, 84, 99, 114, 129, 144, 159, 174, 189, 23, 38, 53, 68, 83, 98, 113, 128, 143, 158, 173, 188, 203 };
byte layer3 [] = {22, 37, 52, 67, 82, 97, 112, 127, 142, 157, 172, 187, 202, 21, 36, 51, 66, 81, 96, 111, 126, 141, 156, 171, 186, 201};
byte layer4 [] = {20, 35, 50, 65, 80, 95, 110, 125, 140, 155, 170, 185, 200, 19, 34, 49, 64, 79, 94, 109, 124, 139, 154, 169, 184, 199 };
byte layer5 [] = {18, 33, 48, 63, 78, 93, 108, 123, 138, 153, 168, 183, 198, 32, 47, 62, 77, 92, 107, 122, 137, 152, 167, 182 };
void setup() {
//You don't need to write anything here
iParol_Init();
}
void loop() {
//Call your user-define functions here
onAll();
removeDiamond();
removeDiamond2();
removeDiamond3();
removeDiamond4();
removeDiamond5();
removeDiamond6();
removeDiamond7();
removeDiamond8();
off();
onHeart1();
onHeart2();
onHeart3();
onheartLast();
onheartLastnatalaga();
offHeart3();
heartLayer1();
heartLayer2();
heartLayer3();
heartLayer4();
heartLayer5();
}
//Create your own user-defined funtions here
void removeDiamond() {
for (int i=0; i<=21; i++){
write(turningoffDiamond[i], LOW);
}
delay(100);
}
void onAll() {
for (int i=1; i<=225; i++){
write(i, HIGH);
}
delay(2);
}
void removeDiamond2() {
for (int i=0; i<=31; i++){
write(turningoffDiamond2[i], LOW);
}
delay(400);
}
void removeDiamond3() {
for (int i=0; i<=21; i++){
write(turningoffDiamond3[i], LOW);
}
delay(1200);
}
void removeDiamond4() {
for (int i=0; i<=41; i++){
write(turningoffDiamond4[i], LOW);
}
delay(700);
}
void removeDiamond5() {
for (int i=0; i<=40; i++){
write(turningoffDiamond5[i], LOW);
}
delay(500);
}
void removeDiamond6() {
for (int i=0; i<=21; i++){
write(turningoffDiamond6[i], LOW);
}
delay(500);
}
void removeDiamond7 () {
for (int i=0; i<=31; i++){
write(turningoffDiamond7[i], LOW);
}
delay(200);
}
void removeDiamond8 () {
for (int i=0; i<=15; i++){
write(turningoffDiamond8[i], LOW);
}
delay(200);
}
void off () {
write (106, LOW);
delay(500);
}
void onHeart1 () {
for (int i=0; i<=22; i++){
write(heart1[i], HIGH);
}
delay(1000);
}
void onHeart2 () {
for (int i=0; i<=15; i++){
write(heart2[i], HIGH);
}
delay(200);
}
void onHeart3 () {
for (int i=0; i<=116; i++){
write(heart3[i], HIGH);
delay(15);
}
}
void onheartLast () {
for (int i=0; i<=3; i++){
write(heartLast[i], HIGH);
}
delay(200);
}
void onheartLastnatalaga () {
for (int i=113; i<=113; i++){
write(i, HIGH);
}
delay(200);
}
void offHeart3 () {
for (int i=0; i<=121; i++){
write(lowHeart3[i], LOW);
}
delay(200);
}
void heartLayer1 () {
for (int i=0; i<=24; i++){
write(layer1[i], HIGH);
}
delay(200);
}
void heartLayer2 () {
for (int i=0; i<=23; i++){
write(layer2[i], HIGH);
}
delay(200);
}
void heartLayer3 () {
for (int i=0; i<=25; i++){
write(layer3[i], HIGH);
}
delay(200);
}
void heartLayer4 () {
for (int i=0; i<=25; i++){
write(layer4[i], HIGH);
}
delay(200);
}
void heartLayer5 () {
for (int i=0; i<=23; i++){
write(layer5[i], HIGH);
}
delay(200);
}