controlling ZXLD1360 LED drivers from 74hc595 ShiftPWM

Hi all. I have got some MR16 LED bulbs from ebay that use ZXLD1360 driver IC's. I have managed to get a TLC6940 to control the ADJ pins on them for dimming.

If you ground the ADJ pin it turns LED off so you can dim it easily - I am playing about with some 74hc595 and ShiftPWM and would like to control them this way.

I have tried a BC337 (transistor connects ADJ to ground) but of course this is inverted so the LED is off when the 74hc595 output is high. is there a very simple way to get around this? I would rather not have to use inverters if I can help it.

The aim is to be able to control these LED bulbs and install some in my ceiling, but also be able to control some Common anode LED strips. The current issue that I am experiencing is to be able to control both with a simple solution ie. a TLC5940 or some 74hc595's with minimal circuitry.

The simple way round this is to subtract your required brightness value from the full on value. So suppose you have eight bits control and brightness level in a variable called bright. Then just use 255 - brightness where you would normally use just brightness.

I guess so, This would just mean that the LED's would light up full until the arduino was booted but I don't really see this as an issue.

So there is not really another simple solution without inverting the signal?

Thanks Mike

edit - I forgot to say that the LED will not turn fully off when the 74HC595 output is high, I've connected the base of the BC337 via a 1k resistor?

dtokez:
So there is not really another simple solution without inverting the signal?

You've got the source code for ShiftPWM ... invert the output in there and you can dump the transistors.

fungus:

dtokez:
So there is not really another simple solution without inverting the signal?

You've got the source code for ShiftPWM ... invert the output in there and you can dump the transistors.

is it possible to only invert some of the outputs? I still want to control some LED strips from mosfets.
So basically I could just sink the ZXLD1360 pin to GND through the shift registers?

Thanks

dtokez:
is it possible to only invert some of the outputs?

You can do anything, that's the whole point of software.

I forgot to say that the LED will not turn fully off when the 74HC595 output is high, I've connected the base of the BC337 via a 1k resistor

What is the rest of the circuit?
The BC337 is an NPN transistor so the emitter should go to ground with the load in the collector to the +ve.

Grumpy_Mike:

I forgot to say that the LED will not turn fully off when the 74HC595 output is high, I've connected the base of the BC337 via a 1k resistor

What is the rest of the circuit?
The BC337 is an NPN transistor so the emitter should go to ground with the load in the collector to the +ve.

It was as you say with a 1k res on between the base and the 75HC595?

Measuring the ADJ pin when the lamp is on I get 5.5V, as fungus said I have tried the ADJ pin connected directly to the 74HC595 and it seems to work nicely, I'll just have to figure out how to invert it in software now :slight_smile: the only thing is it doesnt turn fully off, very nearly and hardly noticeable. Would a resistor between the ADJ pin and GND help to pull it low when the 74HC595 pin is not high?

Would a resistor between the ADJ pin and GND help to pull it low when the 74HC595 pin is not high?

No because when it is low it is connected to ground by a much lower impedance that you get with a pull down resistor.