Well we wired it all up and uploaded our program to the Arduino and lots of LEDs flashed a lot. So much constant flashing that we figured there was a problem somewhere. Somewhere amongst the 5000 solders there was a problem. Or was there?
A closer inspection showed that actually we had two slightly erroneous lines in the Arduino code. The first problem was that the numbers were displaying backwards eg 254 was showing as 11111110 rather than 01111111. The second was the cause of the constant flashing. We were returning the latch pin between readings from the serial port so by moving the line " digitalWrite(latchPin, 1);" out of our loop that runs when there is new data we were able to go flashing free.
There is one small problem still which is that confusion seems to build up over a period of about half an hour but we suspect this is because we haven't used enough capacitors. Thats our next little task before we can start using the LED array for displaying camera imagery.
Check out the video clip for the classic Hello World.
Thursday, June 5, 2008
Tuesday, May 20, 2008
Monday, May 5, 2008
LED Matrix part three





Another five boards etched. The circuit is printed onto the transfer sheet on a laser printer. The transfer is then ironed onto a sheet of copper backed board. After sawing into five individual boards we drop it all in the etching fluid for a half hour. The boards then need scrubbing (to remove the ink) and drilling.
We've soldered a bunch of the LEDs to wires in readiness for when we get drilling and soldering tomorrow.
Thursday, May 1, 2008
POV part one

Another thing we are looking at is persistence of vision. So far we have a prototype that can display fonts on a line of 8 LEDs. Whats needed is a mechanism to move the LEDs but you can see in the photo that it is working. (For the photo the camera shutter was kept open for two seconds and the camera moved.)
LED Matrix part two



Some code has been written to communicate with our as yet unfinished array of LEDs.
We are not sending a long string of ones and zeros but an integer between 0 and 255 which then controls 8 LEDs. If we send 255 then all eight will turn on. If we send 127 then the first one is off while the next seven are on. What's happening is that the shift registers display binary numbers.
So far we have 64 LEDs being controlled. They're being controlled from one pin on the Arduino via eight shift registers. In the next week or so we should have the remaining 576 LEDs wired up.
To date we have designed the PCBs, etched them, drilled the holes and soldered the components on. We need ten of these boards in total which is a lot of etching, drilling and soldering.
Gareth
Subscribe to:
Posts (Atom)














