Hi, I'm making one of those word clock's and plan on powering the arduino with a 9v battery or the usb. For the LED's im using a seperate 5v 2A DC supply.
The clock will have 26 groups of LED's varying from 1 - 6 LED's per group but no more than 28 LED's will be on at a time so at max 700mA, too much for arduino but well below the 5v supply.
The Arduino will control 3 595 shift registers which in turn control 3 ULN2803A transistor arrays (capable of 500mA per channel), these will control the ground for the groups of LED's.
I'm confused on how to wire the seperate power supply. Is it simply share the Arduino and PSU ground or does the ULN2903A's need to be grounded to the PSU only.
Thanks James, decent links but im really after a book that will teach me those types of things and the proper terms for things. Like the link for transistors there decribes it as the base bias resisitor.
Why not power the arduino from the same 5v supply? Connect it to the 5V header pin.
Gnd too.
Decoupling - put 0.1uF/100nF on each pins power pin. Nothing to work out. Very standard.
Base resitor - most times transistors are being used as switches. You want to turn them full on or full off.
For NPN/PNPs: need to limit current out of the Arduino. Voltage across the Base to Emitter is usually around 1 Diode forward voltage, ~0.7V.
So (Varduino - Vbe)/35mA = lowest resistor value to be used. (5V - 0.7V)/0.035 = 123 ohm, so a 150 ohm will work nice. No lower than 120.
For N-Channel/P-Channel Mosfet - these take very little current, but can have high gate capacitance. So a 150 ohm in series will prevent Arduino pin damage as the capacitance charges up. A 10K pulldown (N) or pullup (P) transistor will keep the gate low while the arduino boots up and the pin floats prior to the sketch driving it high or low.
Multiplexing - this is easiest to see with a picture.
One common method is to have the a,b,c,d,e,f,g anodes of multiple displays connected in parallel. The common cathode from each device is then controlled seperately. Drive the anodes, drive 1 cathode. Drive the anodes, drive the next cathode. Repeat. Cycle thru all of them fast enough so the eye doesn't detect flickering.
For an n-digit display: 8 anodes, n common cathodes.
MAX7219/7221 controls this for 8 digits, refreshing at an 800 Hz rate.
Can also be paralleled cathodes, and n common anodes.
Charlieplexing - this Maxim application note provides a great description.
Charlieplexing - only 9 pins to drive 8 digits.
MAX6951 does this for 8 digits.
I don't know that any one specific book will cover everything.