I am trying to use this board (setup tutorial on left hand nav) with my Arduino Uno. I have tried using their example code, as well as my own simplified code, to turn on a single blue LED.
The simplified code I "wrote" is as follows:
#include "Adafruit_TLC5947.h"
#define NUM_TLC5974 1
#define data 3
#define clock 5
#define latch 6
Adafruit_TLC5947 tlc = Adafruit_TLC5947(NUM_TLC5974, clock, data, latch);
void setup() {
tlc.begin();
}
void loop() {
tlc.setPWM(0, 4095);
tlc.write();
}
This compiles and uploads successfully. I have DIN connected to 3, CLK to 5, and LAT to 6. V+ is connected to the Arduino 5V pin, and GND to Arduino ground.
Using this setup, the LED does not turn on when connected to channel 0 on the board. Using a multimeter, I have verified that the voltage between common ground and the channel 0 pin is ~0V. Checking voltage on the board between GND and V+, I see 4.8V, which looks good. Connecting the LED directly to the V+ line lights it up, but obviously isn't switchable.
I have no clue why I'm not seeing anything on channel 0's output when I directly write it to 100% duty cycle.
Why is this not working?
1 Answer 1
... the LED does not turn on when connected to channel 0 on the board. [...] Connecting the LED directly to the v+ line lights it up, but obviously isn't switchable.
From this I suspect that you have connected the LED between pin 0 and ground. The problem with doing this is that the TLC594x LED driver outputs are current sinks, and connect the output to ground when on. The LEDs must connect between V+ and the output as shown in the datasheet.
Explore related questions
See similar questions with these tags.