Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Leakage current issue in LED matrix interfacing

Status
Not open for further replies.

scorrpeio

Full Member level 5
Joined
Dec 26, 2006
Messages
286
Helped
10
Reputation
20
Reaction score
9
Trophy points
1,298
Activity points
3,496
Hello,

I have interfaced the LED matrix(16x16) to the 89v51rd2.
The ckt diagram is as follows...

Code:
P1 -> 330ohm -> base of BD140 -> collector of BD140 to Anode of LED -> cathode of LED to 180 ohm -> P0 or P2

P3.5-P3.7 -> A0, A1, A2 of 74LS138 ->o/p pins of decoder to 330ohm -> base of BD140 -> collector of BD140 to Anode of LED -> cathode of LED to 180 ohm -> P0 or P2

I am using scanning technique with Putting data over P0 and P2 i.e. rows and making columns that is pins of P1 and then P3 serially ON.

The delay I used between two successive Columns ON is 1msec.

However, when I make any column driven by 74LS138 ON, and put the data over P0 and P2, all the rows Turn ON.

Even though I deliberately make few rows OFF, in my code, all of them turns ON.

Can anyone tell me, what is the real problem here?
I have checked out voltages and controller pins and even at transistor...it looks fine.
 

You do realize the output of the 74LS138 is active low I hope! Sounds like you have an "anti-multiplexer" where everything is turned on except the digit you want!

Brian.
 

Please find the attached schematic.
 

Attachments

  • Schematic.JPG
    Schematic.JPG
    57.4 KB · Views: 118

I see a mismatch between your first post and the attached schematic, about the rows and columns ...
And ... one of the LS138's outputs is always on (you need an additional output pin to inhibit it).

Use an LS154 (4to16 demux) with 4 address and one inhibit pin (for ex.: P1.0...3 and P1.4):
row 0...15 = 0...15 on P1 port, and P1=16 switch off all rows.
 
Yes...I had connected the enable pin of decoder to p3 pin but didnt show in ckt as it would not have affected the issue of leakage current.
anyways, thanx for the help
 

Hi;
If the real circuit corresponds exactly to the attached schematic above (for ex.: the ls138 drives 8 rows, NOT columns)
then it should work, of course with the addidional and well-handled enable pin. If not, the error is in the led-matrix or in
your program (sorry : - ), leakage current doesn't an issue in LED matrix, it's small (all power transistors are PNP and good).

Proposed experiments:
1.
P0 = P1 = P2 = 255 (all inactive) and P3.5..7 are 1 and your enable pin for the ls138 is 1 (inhibit) then all leds off
2.
change only the enable pin to 0 (active) then all leds remain off
3.
change P0 to 254 (only the lsb is active) then only one led lits !!!
4.
Now P0 = P2 = 0 (switch on all COLUMNs) then only one ROW (16 leds)will lit;
ls138 gets 111 as address, its output 7 is active (low).

If not, then remove the processor from the circuit if possible (all the port pullups are extern, right?) and repeat the above but now in "static mode".
 
Last edited:
Hello,
Thank you for the help!!!
Your guess was correct...the problem was with program. In program... I changed the row data first and then switched on next column...it took few micro seconds because of which the LEDs of previous column got the current to glow and looked as if it is leakage current.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top