diff options
-rw-r--r-- | _3x3Matrix.pde | 97 |
1 files changed, 16 insertions, 81 deletions
diff --git a/_3x3Matrix.pde b/_3x3Matrix.pde index 377eda2..6a2a147 100644 --- a/_3x3Matrix.pde +++ b/_3x3Matrix.pde @@ -6,66 +6,18 @@ */ #define ROW 3 #define COL 0 -#define ROWCNT 7 -#define COLCNT 13 -#define CHARWIDTH 5 -#define FRAMELEN 10 +#define ROWCNT 3 +#define COLCNT 3 #define DELAY 3 -int frame[COLCNT][ROWCNT] = {0}; - -/*const int frame_A[ROWCNT][CHARWIDTH] = { - {0, 0, 1, 0, 0}, - {0, 0, 1, 0, 0}, - {0, 1, 0, 1, 0}, - {0, 1, 0, 1, 0}, - {1, 1, 1, 1, 1}, - {1, 0, 0, 0, 1}, - {1, 0, 0, 0, 1}, -};*/ - -/*const int frame_C[CHARWIDTH][ROWCNT] = { - {0, 0, 1, 1, 1}, - {0, 1, 1, 0, 0}, - {1, 1, 0, 0, 0}, - {1, 0, 0, 0, 0}, - {1, 1, 0, 0, 0}, - {0, 1, 1, 0, 0}, - {0, 0, 1, 1, 1}, +int frame[3][3] = { + {0, 0, 0}, + {0, 0, 0}, + {0, 0, 0}, }; -const int frame_H[ROWCNT][CHARWIDTH] = { - {1, 0, 0, 0, 1}, - {1, 0, 0, 0, 1}, - {1, 0, 0, 0, 1}, - {1, 1, 1, 1, 1}, - {1, 0, 0, 0, 1}, - {1, 0, 0, 0, 1}, - {1, 0, 0, 0, 1}, -}; - -const int frame_L[ROWCNT][CHARWIDTH] = { - {1, 0, 0, 0, 0}, - {1, 0, 0, 0, 0}, - {1, 0, 0, 0, 0}, - {1, 0, 0, 0, 0}, - {1, 0, 0, 0, 0}, - {1, 0, 0, 0, 0}, - {1, 1, 1, 1, 1}, -};*/ - -const int frame_MINUS[CHARWIDTH][ROWCNT] = { - {0, 0, 0, 1, 0, 0, 0}, - {0, 0, 0, 1, 0, 0, 0}, - {0, 0, 0, 1, 0, 0, 0}, - {0, 0, 0, 1, 0, 0, 0}, - {0, 0, 0, 1, 0, 0, 0}, -}; - -const int emptyCol[ROWCNT] = {0}; - -unsigned long int framenr = 0; +int framenr = 0; int rownr = 0; void setup() { // initialize the digital pin as an output. @@ -77,33 +29,16 @@ void setup() { pinMode(COL + i, OUTPUT); } -void setCol(int c, const int data[ROWCNT]) { - int r; - - if (c > 0 && c <= COLCNT) { - for (r = 0; r < ROWCNT; r++) - frame[c][r] = data[r]; - } -} - -void setChar(int c, const int data[CHARWIDTH][ROWCNT]) { - int i; - for (i = 0; i < CHARWIDTH; i++) - setCol(c+i, data[i]); -} - -void clearFrame() { - int i = 0; - for (i = 0; i < COLCNT; i++) - setCol(i, emptyCol); -} - void nextFrame() { - int c; - int f2 = (framenr/FRAMELEN) % (COLCNT+CHARWIDTH); - - clearFrame(); - setChar(COLCNT-f2, frame_MINUS); + frame[0][0] = (framenr % 100) < 50; + frame[0][1] = (framenr % 100) < 50; + frame[0][2] = (framenr % 100) < 50; + frame[1][0] = (framenr % 100) < 50; + frame[1][1] = (framenr % 100) >= 50; + frame[1][2] = (framenr % 100) < 50; + frame[2][0] = (framenr % 100) < 50; + frame[2][1] = (framenr % 100) < 50; + frame[2][2] = (framenr % 100) < 50; } void loop() { |