My favorites | Sign in
Project Home Downloads Wiki Issues Source
Search
for
ArduinoDiecimilaHardwareSetup  
Hardware setup for the Arduino Diecimila/Duemilanove
Updated Mar 23, 2010 by acle...@gmail.com

Wiring Diagram

Note: pin 1 of the Tlc is the lower right pin in the breadboard picture above.

Required Pins

  • Arduino digital pin 7 (MOSI) -> SIN (Tlc pin 26)
  • Arduino digital pin 13 (SCK) -> SCLK (Tlc pin 25)
  • Arduino digital pin 9 (OC1A) -> XLAT (Tlc pin 24)
  • Arduino digital pin 10 (OC1B) -> BLANK (Tlc pin 23)
  • Arduino digital pin 3 (OC2B) -> GSCLK (Tlc pin 18)
  • Tlc VPRG (pin 27) is at ground. This selects between serial data going to the "greyscale" normal PWM register (VPRG=gnd) vs serial data going into the "dot-correction" register (VPRG=Vcc) (this individually adjusts the max-current through each output channel to account for differences in LED brightness). If using the dot-correction functions in the library, this pin should be hooked to the Arduino (NOT gnd or Vcc) - see the Optional Pins section below.
  • Tlc DCPRG (pin 19) is at Vcc. This selects between the dot-correction data in the device EEPROM (DCPRG=gnd) vs dot-correction data from the DC register in the device (DCPRG=Vcc). If using the library dot-correction functions, this should be at Vcc.

Optional Pins

VPRG - for setting dot correction (per-channel current adjustment)

  • Arduino digital pin 8 -> VPRG (Tlc pin 27)
XERR - for checking for thermal overloads or disconnected LEDs
  • Arduino digital pin 12 -> XERR (Tlc pin 16)

More Pictures

(SVG source)

Comment by ek.hamb...@gmail.com, Jun 10, 2009

"You will also have to connect Arduino digital pin 6 to TLC pin 27. (The pin to be used can be changed in tlc_config.h). "

"•Arduino digital pin 8 -> VPRG (Tlc pin 27)"

pin 6 or 8, whats true? ;-)

Comment by ek.hamb...@gmail.com, Jun 11, 2009

Try and error fised my Problem, but Ive got another question:

Is it possible to set VPRG pin with a pull-down resistor to GROUND? I like to switch VPRG on and off just with connecting the VPRG pin to the Arduino or not.

So while Arduino is connected the the TLC-VPRG pin, he sets the pin to HIGH (when needed) and while the Arduino isnt connected, the ressistor sets it to LOW. Is it possible, or is the Arduino not strong enaugh to "override" the pull-down?

Comment by r...@mda.org.au, Jul 12, 2009

why is VPRG connected to GND on the diagram? I am using it for servos, should I just disconnect it?

Comment by intellig...@gmail.com, Sep 4, 2009

@ek hamburg: that could work. simply tie it to gnd via ~10k. arduino may drive (5V / 10.000 Ohm) A then. that's way lower than the max 40mA.

Lars Schreiner

Comment by intellig...@gmail.com, Sep 4, 2009

@r...@mda.org.au: just tie it to GND. you won't be using the dot-correction feature with your servos.

Lars Schreiner

Comment by chkdes...@gmail.com, Oct 3, 2009

How can I use another Pin for Blank? I tried to change it in Atmega_xx8.h for my Arduino but it only works with PIN10 :( I need Pin10 for the Ethershield. Is there a solution?

Comment by project member acle...@gmail.com, Mar 23, 2010

BLANK, GSCLK and XLAT are all running on the PWM timers in the device, which have fixed output pins, so unfortunately not. With a bit of hacking XLAT could be changed to any pin but the timing would be off (XLAT needs to be inside the BLANK pulses)

Comment by G.Andrew...@gmail.com, Jan 26, 2012

"Arduino digital pin 7 (MOSI) -> SIN (Tlc pin 26)"

MOSI is digital pin 11

Comment by dan.hei...@gmail.com, Mar 29, 2012

Important! It is indeed digital pin 11 (MOSI) -> SIN. I ended up making a bad batch of PCBs because of this!


Sign in to add a comment
Powered by Google Project Hosting