Electronic – TLC59116 will not drive LEDs

i2cintegrated-circuitled-drivermbedtexas instruments

Having the hardest time with this TLC59116 LED Driver IC from Texas Instruments. I have done a crazy amount of debugging and still cannot get it to drive a single LED. I have followed all the instructions on the datasheet, as well as referenced every software library/tutorial I could find to make sure I am doing everything properly, but it still will just not drive an LED.

I have double checked the validity of the chip and can confirm it is stable.

Here is how I currently have it hooked up:

enter image description here

And here is my I2C code:

  void writeRegister(char reg, char data) {    
    char buffer[2];
    buffer[0] = reg;
    buffer[1] = data;
    i2c->write(address, buffer, 2);
  }

  writeRegister(MODE1, 0b00000000); // defaults
  writeRegister(MODE2, 0b00000000); // defaults

  writeRegister(GRPPWM, 0xFF);      
  writeRegister(GRPFREQ, 0xFF);

  writeRegister(LEDOUT0, 0b11111111); // led "fully on"
  writeRegister(LEDOUT1, 0b11111111);
  writeRegister(LEDOUT2, 0b11111111);
  writeRegister(LEDOUT3, 0b11111111);


  writeRegister(PWM0, 0xFF);   // full brightness
  writeRegister(PWM1, 0xFF);
  writeRegister(PWM2, 0xFF);
  writeRegister(PWM3, 0xFF);
  writeRegister(PWM4, 0xFF);
  writeRegister(PWM5, 0xFF);
  writeRegister(PWM6, 0xFF);
  writeRegister(PWM7, 0xFF);

I have tried several enumerations of this code but it makes zero difference.

Like… am I missing something integral here?

Best Answer

I was using the wrong I2C address. I was using the 7-bit address of 0b1100000 instead of the 8-bit address 0b11000000...

Related Topic