Shop OBEX P1 Docs P2 Docs Learn Events
Control lots of LEDs with PCA9673 — Parallax Forums

Control lots of LEDs with PCA9673

Was looking for solution to control many (>100) LEDs (many of them white or blue) and decided that PCA9673 is best solution.

I've attached a driver that seems to work (input mode not tested) [See Attached]

Great things about PCA9673 are:
small surface mount package (sorry, no DIP), and 16 outputs with just 2 Prop Pins
5V tolerant outputs (lets me drive white/blue LEDs with +5V and series resistor to control current)
Up to 16 devices on I2C bus with just 2 address pins (neat trick they pulled off here!)
Can sink >20 mA on all output pins at the same time!
Super simple I2C commands
Can work up to 1 MHz (but my driver is rigged for 400 kHz) (fast enough to allow digital dimming)

Comments

  • Nice work Ray. Did you write the pasm i2c driver yourself?

  • RaymanRayman Posts: 14,646
    edited 2018-01-30 02:59
    yes, I adapted one from a long time ago...

    Assembly will let me change led states quickly...

    One thing I need to do though is make sure it is playing nice with SDA and SCL.
    Sometimes I force these high instead of letting them float up...
  • RaymanRayman Posts: 14,646
    edited 2018-01-31 14:31
    That TLC5955 does look pretty nice.
    If you want a ton of LEDs and want to offload the brightness to the chip, that makes a lot of sense.
    It would be very nice for a video display. But, with maximum current of 30 mA, that would mean
    each LED gets it's own pin, so no multiplexing. Makes it easier, but you'd need a lot of chips.
    The Adafruit 16x32 LED panel used just a few chips, but had a complex multiplexing scheme...

    For what I'm doing, I just need the LEDs either on or off, so don't really need this complexity.
    On the other hand, this would give me a brightness control that I don't currently have (although I could PWM the outputs to dim the LEDs if I wanted to).

    Interesting to think about. If I'd seen this TLC5955, I might have picked it instead, not sure... Price seems about equivalent.
    PCA9673 can be also used as input, so maybe could be useful in other applications.
Sign In or Register to comment.