Sorry for being finicky but in your code you wrote that "The 8 LEDs light for one second *exactly* on each pass", but isn't there some extra time used by the microcontroller to run the "for" instructions between a Timer Interrupt (or wathever the delay is) and an another one? I'm not really sure of this, infact I'm asking..! ;)
But I guess you forgot the current limiter resistors on the LEDs.
BTW, I'm planing on making a big LED matrix using my arduino, I'll use 9 8x8 matrices, it'll be a 24x24 LED matrix and I'll use 6 74HC595 to drive the matrix, I'll use a bunch of BC547 to source the current to the LEDs, but I'm not sure if the 74HC595 will be able to sink all that current from 24 LEDs since a whole column might be lit at the same time, any ideas on how I can address this issue?
@sanosukke Thanks. There is a resistor R1 on the cathode side of the diodes that limits the current. In this case I have lit only one LED at a time, but if I was to light more than one LED they would be be less bright.
On your second question - have a look at my video on 8x8 arrays as it deals with this issue exactly. You will need a ULN2803 to sink the current or you could overload your 74HC595. Good luck!
@DerekMolloyDCU I'll use a bunch of BC547 instead of ULN2803, since it'll be cheaper, I have one ULN2803 that I used with one matrix, worked fine, but there was only one matrix, hence only 8 LEDs per row/column, with three matrices there'll be 24(48) per row/column (bicolor matrices), I'll use transistors as drivers on the anodes, but as for the cathodes, the LEDs will bedriven by the 74HC595 itself, I would like another driver here just to be on the safe side.
Very good tutorial! Thanks! :D
ThePhilleboy 1 month ago in playlist Arduino
Sorry for being finicky but in your code you wrote that "The 8 LEDs light for one second *exactly* on each pass", but isn't there some extra time used by the microcontroller to run the "for" instructions between a Timer Interrupt (or wathever the delay is) and an another one? I'm not really sure of this, infact I'm asking..! ;)
merovingio89 5 months ago
Great video. I was looking for the difference between the two and your explanation was right on!
demestavr 6 months ago
Nice vid.
But I guess you forgot the current limiter resistors on the LEDs.
BTW, I'm planing on making a big LED matrix using my arduino, I'll use 9 8x8 matrices, it'll be a 24x24 LED matrix and I'll use 6 74HC595 to drive the matrix, I'll use a bunch of BC547 to source the current to the LEDs, but I'm not sure if the 74HC595 will be able to sink all that current from 24 LEDs since a whole column might be lit at the same time, any ideas on how I can address this issue?
sanosukke 10 months ago
@sanosukke Thanks. There is a resistor R1 on the cathode side of the diodes that limits the current. In this case I have lit only one LED at a time, but if I was to light more than one LED they would be be less bright.
On your second question - have a look at my video on 8x8 arrays as it deals with this issue exactly. You will need a ULN2803 to sink the current or you could overload your 74HC595. Good luck!
DerekMolloyDCU 10 months ago
@DerekMolloyDCU I'll use a bunch of BC547 instead of ULN2803, since it'll be cheaper, I have one ULN2803 that I used with one matrix, worked fine, but there was only one matrix, hence only 8 LEDs per row/column, with three matrices there'll be 24(48) per row/column (bicolor matrices), I'll use transistors as drivers on the anodes, but as for the cathodes, the LEDs will bedriven by the 74HC595 itself, I would like another driver here just to be on the safe side.
sanosukke 10 months ago