Hello everyone,
I've made a board with an atmega328 running the arduino bootloader to drive an 11x15 LED matrix.
I'm using two 74HC595s to step through each row of the matrix and as far as I can tell the hardware is all correct, but there is one very small problem that's causing major issues - when I switch to the next row the LED just below in the previous row will stay lit at about 50% power.
I'll post a link to a video of a slow scan through each row with all columns "on" after this post (first posts don't allow links) so you can see the problem.
After a bit of googling i've read that "blanking" the shift registers will fix it, but.. how? Sending '0' 15 times to shiftout doesn't do it (and I hope it's just that i'm doing something stupid).
Here's basically the code i'm using (i'm at work right now so don't have access to the actual file):
Set all column pins to LOW
for j=0-14{
r = 1<<j
latchPin LOW
shiftOut(data,clock,MSBFIRST,r)
latchPin HIGH
}
Could someone kindly explain to me the proper way to do this? I'm still new to the world of making electronics, but it seems like such a simple thing: power one and only one row one after the other. I can't seem to get it right.
Thank you very much for your time,
Travis