i am new with c programing and electronics but i can understand a little because i know the old gwbasic.
i did this project with arduino
but i can get it work only with usb power cable the ac doesnt seems to work with my arduino.it get it freeze.
i dont know if the problem is with arduino or my max 7219 what i used.
i also got a problem with my 8x8 hand made matrixes the last of each 8x8 matrix column or row (i am a little confused) not showing right(as showing on video zoom in) .
help please :-[
this is the sketch i used
p.s. the only reson that the forth 8x8 dosent work is that i cut axedently a pin on my forth max 7219
p.s. 2 the letters on the matrix are in Greek.
#include <Matrix.h>
#include <binary.h>
#include <Sprite.h>
// Sprite Animation
// by Nicholas Zambetti http://www.zambetti.com
// Demonstrates the use of the Matrix & Sprite libraries
// Displays animated waveform graphic on screen
// Created 29 March 2006
/* create a new Matrix instance
pin 0: data (din)
pin 1: load (load)
pin 2: clock (clk)
*/
Matrix myMatrix = Matrix(12, 11, 10,3);
/* create a new Sprite instance
8 pixels wide, 4 pixels tall
*/
Sprite space = Sprite(
8, 8,
B00000000,
B00000000,
B00000000,
B00000000,
B00000000,
B00000000,
B00000000,
B00000000
);
Sprite k = Sprite(
8, 8,
B00100001,
B00100001,
B00010001,
B00001111,
B00010011,
B00100011,
B00100011,
B00100011
);
Sprite a = Sprite(
8, 8,
B00011000,
B00100100,
B01000010,
B01000010,
B01111110,
B01100010,
B01100010,
B01100010
);
Sprite l = Sprite(
8, 8,
B00011000,
B00100100,
B01000010,
B01000010,
B01000010,
B01000110,
B01000110,
B01000110
);
Sprite e = Sprite(
8, 8,
B01111110,
B01111110,
B00000110,
B00011110,
B00011110,
B00000110,
B01111110,
B01111110
);
Sprite s = Sprite(
8, 8,
B01111110,
B00111110,
B00001100,
B00011000,
B00001100,
B00000110,
B01111111,
B01111111
);
Sprite g = Sprite(
8, 8,
B01111110,
B01111110,
B00000110,
B00000110,
B00001110,
B00001110,
B00001110,
B00001110
);
Sprite i = Sprite(
8, 8,
B01111100,
B00010000,
B00010000,
B00010000,
B00110000,
B00110000,
B00110000,
B01111100
);
Sprite o = Sprite(
8, 8,
B00111100,
B01100110,
B01000010,
B01000010,
B01000010,
B01000010,
B01100110,
B00111100
);
Sprite r = Sprite(
8, 8,
B00111110,
B01000110,
B01000110,
B00111110,
B00000110,
B00001110,
B00001110,
B00001110
);
Sprite t = Sprite(
8, 8,
B01111110,
B01111110,
B00010000,
B00010000,
B00110000,
B00110000,
B00110000,
B00110000
);
void setup()
{
}
int x = -8;
void loop()
{
if (x<32 & x>-8); {myMatrix.write(x, 0, k); };
if (x-8<32 & x-8>-8); {myMatrix.write(x - 8, 0,a); };
if (x-16<32 & x-16>-8); {myMatrix.write(x - 16, 0,l); };
if (x-24<32 & x-24>-8); {myMatrix.write(x - 24, 0,e); };
if (x-32<32 & x-52>-8);myMatrix.write(x - 32, 0,s);
if (x-48<32 & x-48>-8);myMatrix.write(x - 48, 0,g);
if (x-56<32 & x-56>-8);myMatrix.write(x - 56, 0,i);
if (x-64<32 & x-64>-8);myMatrix.write(x - 64, 0,o);
if (x-72<32 & x-72>-8);myMatrix.write(x - 72, 0,r);
if (x-80<32 & x-80>-8);myMatrix.write(x - 80, 0,t);
if (x-88<32 & x-88>-8);myMatrix.write(x - 88, 0,e);
if (x-96<32 & x-96>-8);myMatrix.write(x - 96, 0,s);
if(x == 120) // if reached end of animation sequence
{
x = -8; // start from beginning
}
x++; // advance x coordinate to the right
}