PCA9632 driver

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

PCA9632 driver

603 Views
tma
Contributor II

Hi, I need more hw PWM drivers than provides Raspberry. PCA9632 is options (3V3 support, manually solderable TSSOP-8). Unfortunately datasheet is not too transparent.

  • if more 8-pin  chips can be used on one I2C bus. There are no external address pin datasheet mentions SUBADRx register to configure I2C slave address to respond. But address disappears after power cycle and is programmable only via I2C. So what is sense of this feature when multiple ICs are on the same bus and programming affects all of them ? 
  • Next one: ALLCALLADR the similar issue. If is intented to drive group of Ics on bus so it is intended as write/only ?
  • If I understand correctly .... In "Individual LED brightness control signals" we have 8-bit PWM at 1.5kHz and when frequency is not enough we can even have 6-bit PWM at 6.25kHz in  "Brightness + group dimming signals" if GRPPWM = 16, i.e. no dimming, 64 levels for each channel.
  • Seems will work with 3V3 I2C when Vdd=5V, correct?
  • the most important: what is schema of output section. I have external driver for 24V LEDs and I need default state OFF. So N-Channel FET is solution. But what INVRT, OUTDRV settings is relevant and probably I need pull down resistor, true? Seems there is hi transistor which can drive 10mA and low to sink 25mA

Thanks in advance

0 Kudos
Reply
6 Replies

586 Views
diazmarin09
NXP TechSupport
NXP TechSupport

Hello tma,

I hope all is great with you. Thank you for using the NXP communities.

  • I am afraid that only the 10-pin package option (TSSOP10), features two hardware address pins allowing four devices to operate on the same bus. In any case, have you considered an I2C switch such as PCA9546A?
  • The LED All Call I2C-bus address allows all the PCA9632s in the bus to be programmed at the same time (ALLCALL bit in register MODE1 must be equal to 1, power-up default state). This address is programmable through the I2C-bus and can be used during either an I2C-bus read or write sequence.
  • Correct, as long as your design is similar to the typical application below:diazmarin09_0-1710350778256.png

     

  • Correct, be aware that the device is programmed to be open-drain with a 25 mA current sink capability.

I hope this information helps.

Regards,

David

0 Kudos
Reply

575 Views
tma
Contributor II

Thanks David so I mean circuit of one channel with FET is

tma_0-1710369377803.png

After power cycle LEDx is in High-Z so driver is safely closed by pull-down resistor. I need positive PWM output as I potentially want to use 6-bit PWM at 5.25kHz (fully undimmed).

I there a protection on output in IC ? I use 1k serial resistor just as case or is not needed ? Alternatively more protection with Zener on LED# output?

What I see extra confusing is Table 15. Entries references hi/low transistors to PWM value. But transistors must have complementar values because at least on-on case is short circuit Vdd-Vss. 

 

tma_1-1710370013226.png

-Tomas

0 Kudos
Reply

528 Views
diazmarin09
NXP TechSupport
NXP TechSupport

Hello tma,

Once again, thank you for using the NXP community. My apologies for the delayed response.

You are correct, the LED output port will be in high impedance as a default state after the POR event.

Your design seems correct to me. I have one comment, have you considered using a series resistor on the LED side?

diazmarin09_0-1710800540847.png

 

Regards,

David

0 Kudos
Reply

419 Views
tma
Contributor II

Hi David,

I have series resistor as LED strip is connected. I have reconsidered component and use PCA9634 which offers 97kHz. I assembled, I can control via I2C, nice! But I see unexpected behaviour, when I connect power then all outputs are 5V so all LEDs are shining. I cannot wait to I2C to switch them off. I have gate resistor to GND so gate should be charged through LED when Hi-Z. Seems 5V come from PCA output. OE is hardwired to GND.

PCAxx has no internal EEPROM to remember default state after power cycle, right? OE=1 won't help, right ? Seems only soulution is add general external switch for 24V.

 

tma_1-1712906634541.png

 

 

0 Kudos
Reply

370 Views
diazmarin09
NXP TechSupport
NXP TechSupport

Hello tma,

I am pleased to contact you again. Please accept my apologies for the delayed response.

The PCA9634 is a great option. I am pleased that you decided to use it.

As we know, when a LOW level is applied to OE pin (which is your case), all the LED outputs are enabled and follow the output state defined in the LEDOUT register. Such value is OFF by default. I guess you may change your circuit logic.

I am afraid that the PCA9634 does not feature an internal EEPROM.

Have you tried to apply a HIGH level to the OE pin?

diazmarin09_0-1713521052968.png

 

Regards,

David

0 Kudos
Reply

365 Views
tma
Contributor II

Hi David, I planned to check OE=1 but seems when I reread PDF more thoroughly that default values always will keep LEDn=5V which is considered as LED off for default case: totem-pole, LED connected +5V->A->K->LEDn.

Default values after power cycle:

OE=1

  • OUTDRV = 1 ... totem-pole output
  • OUTNE=01 -> LEDn=1 when OUTDRV=1

OE=0

  • INVRT = 0
  • OUTDRV = 1
  • LEDOUT = 00 
  • Table 16: Driver off -> Upper transistor On, Lower off -> LEDn = Vdd

So I believe I have no chance to simply arrange LED off after power cycle with N-MOSFET driver. Am I right?

Meanwhile I rearranged circuit and use not-used LED7 output to control general 24V hi-side P-MOSFET (with level shifter 5V -> 24V) which is power for all LEDs driven by LED0-6. Default 5V will keep 24V off after power cycle. It should work.

tma_0-1713523424157.png