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.

Powering down TLC5940 with MCU

Status
Not open for further replies.

tubos

New Member
I want to be able to power down (switch off)
the power to my TLC5940 for a low current application.
See circuit below.

It seems to work but somehow there is still some leak current
going through the Iref resistor ( 2mA)

What can i do to fix this?


View attachment 64697
 
There has to be something wrong with your measurement or something is missing from your schematic, in order to get 2ma through the IREF resistor it would need to be attached to a 9.4volt source. At the voltage the chip is being supplied the max current through IREF should be .8ma

Keep in mind you're cutting ground NOT VCC, one of the other leads to the chip probably still has a valid ground which is where the IREF current is leaking to (if that's in fact where it's coming from)

Even if you cut both VCC and GND when the chip has no power applied signals to the I/O lines can cause either damage to the chip or cause currents like this to flow, the effects of an IC when no power is applied but signals are applied to their I/O lines are virtually unpredictable and not advisable in the slightest.
 
Last edited:
The current through the resistor is .260mA
but the consequence in total is 2mA.

It must mean the resistor causes some other pin to
draw that current. but its not one of the outputs on the TLC
because I've removed the matrix alltogether and it still persists
 
You're not describing what the other 25 pins of this chip are connected to. You could be bleeding a little current through every single I/O line. IC's were not meant to be run with applied VCC and a disconnected ground, it completely violates their electrical characteristics.

Your assumption the resistor is the cause is without any justification or measurement to prove that it is.

You are more than likely grounding through multiple I/O lines to attached circuitry. You could start by adjusting the disconnect circuit to remove the VCC supply as well as GND, but this is not guaranteed to stop the power draw as current may still be able to flow between the I/O lines that have externally applied signals. IC's were simply not designed to be powered down in this matter, and when VCC and GND are disconnected like that they could be at risk from ESD as well.
 
Last edited:
Is there another solution to limit the current consumption
of the TLC while my MCU is sleeping?
 
Remove it from the circuit...
Unless you can ensure that all voltage potentials to the chip, VCC/GND and all I/O lines will be at a known state and that they'll all be the same there really isn't. This could possibly be done but it would require a complete and fully detailed schematic of every component that the chip is attached to. The possibility of getting the 0 current you want given what little info you've provided so far though is not very promising.
 
The load could be from I/O pins because leakage current is only specified with properly applied VCC and GND voltages. Doesn't matter if it's disconnected or not.

You have NO IDEA where internal currents could be occurring when you improperly power a chip like this. It could be from internal substrate resistance due to voltage differentials occurring on the IC die itself.

The fact that it is drawing more than the .8ma that could possibly flow through the given resistor proves completely that there is either another source of voltage, or another source of ground that you are failing to take into account. If this difference is coming from the resistor itself then it's simple, remove the resistor effectively with another transistor. If you still get current draw after that it's not possible to know where it's coming from without detailed knowledge of the IC's internal construction itself.
 
Last edited:
I was the one who mentioned using a fet switch to possibly remove the tlc5940 from the circuit. The problem is multiple supply voltages Vcc, Vprgm, Iref, and Vo or led supply voltage. I have used fet's to disconnect, and port pins to supply, external circuitry like comparators, voltage dividers, and voltage references with success. The tlc5940 is quite a bit more complicated.

Microchip has a power management Tip's and Tricks on using a port pin to supply an external eeprom. So, using this type of methodology is valid and worthwhile to obtain a low power mode.

Too bad this wasn't continued in the previous thread, so the background on how big the led matrix was, and other factors would be up for consideration. If I remember correctly it was an 8x16 green/red array? Using 32 soft pwm's would work in a x8 multiplex row arrangement. It just takes extra work on the processor to interrupt and decrement the duty cycle info from the buffers values. There was a post here on Electro-Tech not too awful long ago where a large number of soft PWM's were implemented.
 
I found the problem , its the CLKOUT pin connected to the GSCLK on the TLC5940
that is drawing the extra current while in sleep mode.
My 18F14K22 is set in CONFIG1H as INT OSC with CLKOUT function.

Unfortunately I cant find a way in the datasheet to change the pin function
in software when it was set to CLKOUT in CONFIG1H.
 
Don't use the CLKOUT pin. Use instead a PWM out pin for the GSCLK, and split off that for the tick input to TMR1. That way you can use the TMR1 interrupt after 4096 ticks for Blanking the tlc5940.
 
@nickelflippr

thx I've connected GSCLK pin to a CCP1 pin and after a bit of tweaking the PORT states that are connected
to the TLC5940 I've got total current draw down to about 5uA in sleep.

I never knew the CCP1 could be set at such high freq.I've set it at 2Mhz
I didnt have to change my ISR code at all.
 
Status
Not open for further replies.

Latest threads

Back
Top