Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

ULN2803 driving a matrix of LEDs -- a problem

Status
Not open for further replies.

dmcole

New Member
Hiya. New to this board and somewhat new to microcontrollers and integrated circuits. I made my bones back in the Heathkit days and then put it all away, only to come back in the last year or so.

Anyway, I'm building a project that drives a matrix of 64 LEDs; when hard-wired (connecting a coin battery to the anodes and cathodes) all is well; I can light individual LEDs as well as multiple ones simultaneously. The circuit, which is 5v regulated and filtered, uses a Pic18F2620 and the LED anodes (rows) are connected to Pins RA0-RA7 with proper resistors in place, while the cathodes (columns) are connected to a ULN2803, which in turn is connected to the Pic pins RB0-RB7.

Only 48 LEDs are being driven correctly by the Pic; two columns never get lit.

I went about attempting to debug the problem and placed a multimeter in continuity setting between the pin of one of the dead columns and ground and started the Pic; the column lit up fine (as did the meter). Tried the same configuration with the other dead column, and it too worked fine when the multimeter was in place (though now the first column was dead again).

While I haven't the foggest clue as to why this problem occurs, my guess is that all I need to do is to ground the two output pins with resistors to solve the problem on a more permanent basis.

As an educational point, I'd appreciate hearing any theories on why this problem has happened; on an pragmatic point, I'd appreciate any ideas about what rating of a resistor to use that would solve the problem.

Thanks.

\dmc
 
Welcome.

Post your code and maybe a schematic.

A guess:

If you are using a debugger this would be expected because RB6 and RB7 are used to communicate debug info to the target. Switch MPLAB from programmer to debugger and try it.
 
ULN2003 problem

check pin8 of your second ULN2003A.

Supposedly missing ground connection.
 
Status
Not open for further replies.

Latest threads

Back
Top