Nick Lowyck / Mbed 2 deprecated Ledcube

Dependencies:   mbed mbed-rtos

Revision:
1:53b8c6b13010
Parent:
0:333c9abcd919
Child:
2:f2700008c9d9
--- a/main.cpp	Wed Apr 23 09:51:33 2014 +0000
+++ b/main.cpp	Wed Apr 30 11:49:26 2014 +0000
@@ -1,170 +1,140 @@
 #include "mbed.h"
 
 bool printed = false;
-bool sent = false;
+bool testprinted = false;
 char layer = 1;
 bool first = true;
 int success = 1;
 
-char ledexample[8][8][8] = {{{6,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
-                            {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
-                            {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
-                            {{4,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,3}},
-                            {{4,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,3}},
-                            {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
-                            {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
-                            {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,5}}};
-
-const char rsolution[8][8] = {{153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,152},
-                              {153,129,129,129,129,129,129,152},
-                              {153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153}};
+int counter1 = 0;
+int counter2 = 0;
+int counter3 = 0;
 
-const char gsolution[8][8] = {{153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153},
-                              {25,129,129,129,129,129,129,153},
-                              {25,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,152}};
+char ledexample[8][8][8] = {{{6,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
+    {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
+    {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
+    {{4,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,3}},
+    {{4,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,3}},
+    {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
+    {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
+    {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,5}}
+};
 
-const char bsolution[8][8] = {{25,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153},
-                              {25,129,129,129,129,129,129,153},
-                              {25,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153},
-                              {153,129,129,129,129,129,129,153}};
+char ledbuffer[8][8][8] = {{{6,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
+    {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
+    {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
+    {{4,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,3}},
+    {{4,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,3}},
+    {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
+    {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,7}},
+    {{7,0,0,7,7,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,0,0,0,0,7},{7,0,0,7,7,0,0,5}}
+};
 
 //matrix (8*8*8): top to bottom, eerst r dan g dan b dan laag (per laag, dus 33 chars)(één char:rij voor één kleur)
 const char matrix[8][3][8] = {{{18,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,16}},
-                              {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129}},
-                              {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129}},
-                              {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129}},
-                              {{11,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,3}},
-                              {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129}},
-                              {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129}},
-                              {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{19,0,0,0,0,0,0,17}}};
+    {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129}},
+    {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129}},
+    {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129}},
+    {{11,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,3}},
+    {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129}},
+    {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129}},
+    {{129,0,0,0,0,0,0,129},{129,0,0,0,0,0,0,129},{19,0,0,0,0,0,0,17}}
+};
+
+char testrmatrix[8][8] = {{255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255}
+};
+
+char testgmatrix[8][8] = {{255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255}
+};
 
-char rmatrix[8][8] = {{153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,152},
-                      {153,129,129,129,129,129,129,152},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153}};
+char testbmatrix[8][8] = {{255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255},
+    {255,255,255,255,255,255,255,255}
+};
 
-char gmatrix[8][8] = {{153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,152},
-                      {153,129,129,129,129,129,129,152},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153}};
+char rmatrix[8][8] = {{3,129,129,129,129,129,129,153},
+    {3,129,129,129,129,129,129,153},
+    {153,129,129,129,129,129,129,153},
+    {153,129,129,129,129,129,129,152},
+    {153,129,129,129,129,129,129,152},
+    {153,129,129,129,129,129,129,153},
+    {153,129,129,129,129,129,129,153},
+    {153,129,129,129,129,129,129,3}
+};
+
+char gmatrix[8][8] = {{25,129,129,129,129,129,129,153},
+    {153,129,129,129,129,129,129,153},
+    {153,129,129,129,129,129,129,153},
+    {25,129,129,129,129,129,129,153},
+    {25,129,129,129,3,129,129,153},
+    {153,129,129,129,129,129,129,153},
+    {153,129,129,129,129,129,129,153},
+    {2,129,129,129,129,129,129,153}
+};
 
 char bmatrix[8][8] = {{153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,152},
-                      {153,129,129,129,129,129,129,152},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153},
-                      {153,129,129,129,129,129,129,153}};
+    {153,129,129,129,129,129,129,153},
+    {153,129,129,129,129,129,129,153},
+    {153,129,129,129,129,129,129,152},
+    {153,129,129,129,129,129,129,152},
+    {153,129,129,129,129,129,129,153},
+    {153,129,129,129,129,129,129,153},
+    {153,129,129,129,129,129,129,3}
+};
 
 SPI spi(p5, NC, p7); // mosi, miso, sclk
+I2CSlave slave(p28, p27); //sda, scl
 DigitalOut latch(p8);
 //DigitalOut blank(p9);
 DigitalOut cs(p10);
 Serial pc(USBTX, USBRX);
 
 uint8_t reverse_byte(uint8_t byte);
-void torgbmatrix(char ledm[8][8][8], char rmat[8][8], char gmat[8][8], char bmat[8][8]);
+void initialtest();
+void sendbuffer();
+void modifybuffer();
+void torgbmatrix(const char ledm[8][8][8], char rmat[8][8], char gmat[8][8], char bmat[8][8]);
 
 int main()
 {
-    /*
-    torgbmatrix(ledexample, rmatrix, gmatrix, bmatrix);
-
-    for(int i = 0; i < 8; i++){
-        for(int j = 0; j < 8; j++){
-            if((rmatrix[i][j] != rsolution[i][j]) || (gmatrix[i][j] != gsolution[i][j]) || (bmatrix[i][j] != bsolution[i][j])){
-                success = 0;
-            }
-        }
-    }
-    while(true){}*/
-
     spi.format(8,3);
     spi.frequency(10000000);
+    slave.address(0xA0);        //bevestigen!
     //  blank = 0;
     latch = 0;
     cs = 1;
 
-    /* for(int i = 7; i >= 0; i--){
-         for(int j = 2; j >= 0; j--){
-             pc.printf("%d", matrix[i][j][k]
-         }
-     }*/
+    for(int i = 0; i < 400; i++) {
+        initialtest();
+    }
 
     while(true) {
-        if(!sent) {                 //eerst laag selecteren, SPI zendt normaal gezien MSB first
-            for(int i = 7; i >= 0; i--) {
-                cs = 0;
-                spi.write(layer);
-                cs = 1;
-                if(!printed) pc.printf("%d  ", layer);
-                for(int j = 2; j >= 0; j--) {
-                    for(int k = 7; k >= 0; k--) {
-                        if (j == 2) {
-                            if(!printed) pc.printf("%d ", bmatrix[i][k]);
-                            cs = 0;
-                            spi.write(reverse_byte(bmatrix[i][k]));
-                            cs = 1;
-                        }
-
-                        if (j == 1) {
-                            if(!printed) pc.printf("%d ", gmatrix[i][k]);
-                            cs = 0;
-                            spi.write(reverse_byte(gmatrix[i][k]));
-                            cs = 1;
-                        }
-
-                        if (j == 0) {
-                            if(!printed) pc.printf("%d ", rmatrix[i][k]);
-                            cs = 0;
-                            spi.write(reverse_byte(rmatrix[i][k]));
-                            cs = 1;
-                        }
-                    }
-                    if(!printed) pc.printf("  ");
-                    if(!printed) pc.printf("\n\r");
-
-                    wait(0.00125);    //vragen aan tommy, buffer per laag?
-
-                    //blank = 1;
-                    latch = 1;
-                    latch = 0;
-                    //blank = 0;
-
-                    layer = layer << 1;
-                    if(layer == 0) layer = 1;
-                }
-                if(!printed) pc.printf("\n\r");
-                printed = true;
-                sent = true;
-                latch = 1;
-            }//end outer for loop
+        if (slave.receive() == I2CSlave::WriteAddressed) {
+            pc.printf("Waarde ontvangen!\n\r");
+            modifybuffer();
+            printed = false;
         }
-    }//end if send
-
+        sendbuffer();
+    }//while loop
 }//end main
 
 unsigned char reverse_bits(unsigned char b)
@@ -177,14 +147,152 @@
     return (__rbit(byte) >> 24) & 0xFF; // reverse a byte in a 32-bit value, and extract the byte
 }
 
-void torgbmatrix(char ledm[8][8][8], char rmat[8][8], char gmat[8][8], char bmat[8][8])
+void initialtest()
+{
+    for(int i = 7; i >= 0; i--) {   //eerst laag selecteren, SPI zendt normaalgezien MSB first
+        cs = 0;
+        spi.write(layer);
+        cs = 1;
+        if(!testprinted) pc.printf("%d  ", layer);
+        for(int j = 2; j >= 0; j--) {
+            for(int k = 7; k >= 0; k--) {
+                if (j == 2) {
+                    if(!testprinted) pc.printf("%d ", testbmatrix[i][k]);
+                    cs = 0;
+                    spi.write(reverse_byte(testbmatrix[i][k]));
+                    cs = 1;
+                }
+
+                if (j == 1) {
+                    if(!testprinted) pc.printf("%d ", testgmatrix[i][k]);
+                    cs = 0;
+                    spi.write(reverse_byte(gmatrix[i][k]));
+                    cs = 1;
+                }
+
+                if (j == 0) {
+                    if(!testprinted) pc.printf("%d ", testrmatrix[i][k]);
+                    cs = 0;
+                    spi.write(reverse_byte(testrmatrix[i][k]));
+                    cs = 1;
+                }
+            }
+            if(!testprinted) pc.printf("  ");
+            if(!testprinted) pc.printf("\n\r");
+
+        }
+        if(!testprinted) pc.printf("\n\r");
+        wait(0.00125);    //vragen aan tommy, buffer per laag?
+
+        //blank = 1;
+        latch = 1;
+        latch = 0;
+        //blank = 0;
+
+        layer = layer << 1;
+        if(layer == 0) layer = 1;
+
+    }//end outer for loop
+    //  latch = 1;
+    if(!testprinted) pc.printf("\n\r");
+    testprinted = true;
+
+}
+
+void sendbuffer()
+{
+    for(int i = 7; i >= 0; i--) {
+        cs = 0;
+        spi.write(layer);
+        cs = 1;
+        if(!printed) pc.printf("%d  ", layer);
+        for(int j = 2; j >= 0; j--) {
+            for(int k = 7; k >= 0; k--) {
+                if (j == 2) {
+                    if(!printed) pc.printf("%d ", bmatrix[i][k]);
+                    cs = 0;
+                    spi.write(reverse_byte(bmatrix[i][k]));
+                    cs = 1;
+                }
+
+                if (j == 1) {
+                    if(!printed) pc.printf("%d ", gmatrix[i][k]);
+                    cs = 0;
+                    spi.write(reverse_byte(gmatrix[i][k]));
+                    cs = 1;
+                }
+
+                if (j == 0) {
+                    if(!printed) pc.printf("%d ", rmatrix[i][k]);
+                    cs = 0;
+                    spi.write(reverse_byte(rmatrix[i][k]));
+                    cs = 1;
+                }
+            }
+            if(!printed) pc.printf("  ");
+            if(!printed) pc.printf("\n\r");
+
+        }
+        if(!printed) pc.printf("\n\r");
+        wait(0.00125);    //vragen aan tommy, buffer per laag?
+
+        //blank = 1;
+        latch = 1;
+        latch = 0;
+        //blank = 0;
+
+        layer = layer << 1;
+        if(layer == 0) layer = 1;
+
+    }//end outer for loop
+    //  latch = 1;
+    if(!printed) pc.printf("\n\r");
+    printed = true;
+}
+
+void modifybuffer()
+{
+    char ledcolor;
+    while(!((counter1 == 8) && (counter2 == 0) && (counter3 == 1))) {
+        ledcolor = slave.read();
+        if (ledcolor == 8) {
+            counter1 = 0;
+            counter2 = 0;
+            counter3 = 0;
+        } else {
+            if (ledcolor == 9) {
+                torgbmatrix(ledbuffer, rmatrix, gmatrix, bmatrix);
+                break;
+            } else {
+                ledbuffer[counter1][counter2][counter3] = ledcolor;
+
+                if (counter3 < 7) {
+                    counter3++;
+                } else {
+                    if (counter2 < 7) {
+                        counter2++;
+                        counter3 = 0;
+                    } else {
+                        if (counter1 < 7) {
+                            counter1++;
+                            counter2 = 0;
+                            counter3 = 0;
+                        }
+                    }
+                }
+            }
+        }
+    }
+}
+
+void torgbmatrix(const char ledm[8][8][8], char rmat[8][8], char gmat[8][8], char bmat[8][8])
 {
     for(int i = 0; i < 8; i++) {                //ledmatrix (afkomstig van raspberry pi) omzetten naar rgb matrix (voor ledcube)
         for(int j = 0; j < 8; j++) {
             char weight = 128;
             for(int k = 0; k < 8; k++) {        //bij de rmatrix, gmatrix en bmatrix op de juiste plaatsen de juiste gewichten optellen indien nodig
                 char digitbuffer = ledm[i][j][k];       //bv voor rmatrix alleen gewicht bij optellen indien er een 1 op de derde positie is (binair)
-                if(k == 0) {                                                            //anders gezegd: als het getal in de ledmatrix groter of gelijk aan 4 is.
+                if(k == 0) {                             //anders gezegd: als het getal in de ledmatrix groter of gelijk aan 4 is.
                     rmat[i][j] = 0; //initialisatie
                     gmat[i][j] = 0;
                     bmat[i][j] = 0;