Q: arduino 7sement clock?


I am reading up on all the various articles about creating a LED display clock with the arduino.

Does this combination (or equivalent) sound right?

arduino pro mini http://www.sparkfun.com/commerce/product_info.php?products_id=9218
7-Segment Red 6.5" http://www.sparkfun.com/commerce/product_info.php?products_id=8530
RTC module SparkFun Real Time Clock Module - BOB-12708 - SparkFun Electronics
shift regs Shift Register 8-Bit - SN74HC595 - COM-13699 - SparkFun Electronics

The RTC would supply the arduino with the current time and I use one shift register per module.
is this the way to go about it?

thank you


6.5 inches? Did the Russians hire you to make a clock that Sarah Palin could see from her house? ;D

There's one problem in your approach: the LEDs run off 12V, so you'll need an open-collector/open-drain output to drive them, like this one (You should be able to use the TPIC6C595, which has a lower current rating, too. Or the 596 series, which have a lower max voltage). And a 12V regulated supply to power them.

Keep in mind that you'll have hundreds of LEDs turned on most of the time. If the clock is going to be someplace like a bedroom, you'll probably want to have a dimming method. Which can be done by feeding a PWM signal to the "enable" pin on the TPIC chips.


I hear ya, they are big (love it!). but it's for an art installation in public.

Thanks for the tip with the high power units - I was wondering about that. Am I right to assume that i need one per segment? I never worked with shift registers but i will figure it out. just need to know what to buy...

And using the RTC makes sense right?


Yes, you will need one per segment. If you do a search for "74HC595", while it isnt the exact chip you need, a thread of mine will show up, including samples and how I hooked up the shift registers and 7-seg's.

You'll need one shift register per digit: each register has eight outputs, so it will drive the seven segments, plus the decimal point, that make up the digit.

(Just wanted to make sure you had the new-to-you terminology straight).


ok got it! I found the mentioned post. looked very useful

thanks everybody

Why not use an AS1107 which can drive 8 x 7-segment displays at once?

wow, nice chip!

the shop i found (spezial.com)has three options and no info, pl+?, wl+?:

austriamicrosystems / AS1107PL+
8-Digit Common-Cathode LED Display Driver
2.7V-5.5V/1mA10µA SHDNSPI Interface

austriamicrosystems / AS1107WL+
8-Digit Common-Cathode LED Display Driver
2.7V-5.5V/1mA10µA SHDNSPI Interface

austriamicrosystems / AS1107WL+T
8-Digit Common-Cathode LED Display Driver
2.7V-5.5V/1mA10µA SHDNSPI Interface

I think it's the PL one you want but you'd have to check the datasheet.

I've currently got one of these chips running 4 x 7-segment displays for a test. I'd do 8 but it's on a small breadboard and hence no room.

The AS1107 is driving both the high and low sides of the displays, and runs off 5V. It can’t directly handle the 6-LED-per-segment displays that fubbi is using.

It might be feasible to add external high-side drivers to get it up to 12V, but it might not: e.g., how will the low-side drivers feel about being presented with 12V? It’s probably not a problem, but it’s not the sort of experiment I’d encourage a relative newbie to tackle.


Sounds like a challenge to me :wink:

so I should either
a. find a 12v chip
b. find a big 5v seven seg
c. figure out how to pipe in the extra juice

I have done a few projects along the lines of the "driving bigger loads" tutorial, using transistors or mosfets. would this be different?


An AS1107 with it's outputs going through a transistor array rated at 12v would do the trick.

Since you're only building one, don't need to update the display frequently, and probably want maximum brightness, I'd go with the TPIC series shift register.

Bit-banging the data into shift registers is slower than an I2C- or SPI-based solution, but there's not much else going on for it to interfere with.

It also makes wiring pretty simple: you need a few lines to daisy-chain the serial data, clock, and Vcc. You can make the LEDs and their associated shift registers into modules that can be easily strung together with simple jumpers going to header connectors. I would feed the 12V to the LEDs with a "star" connection, since it looks like they may be drawing 280mA per digit, but I'm probably being overly cautious in suggesting that.


ok wow.

thank you for all the advice, I am looking forward to digging in. I’ll report how it worked when the parts get here in 10 days