This forum is for the Verbose Clock project. I do not have a detailed project page written yet. If you are interested, please post here and I will put up a project page and draw a schematic. The source code and design description is available here.
The Verbose Clock is a unique digital clock: a 24-character LED display, made up of 14-segment alphanumerics, displays the time in words. The clock uses a few different formats in each hour:
EIGHT P.M. EXACTLY
ONE PAST EIGHT P.M.
...
TEN PAST EIGHT P.M.
EIGHT ELEVEN P.M.
...
EIGHT FOURTEEN P.M.
QUARTER PAST EIGHT P.M.
EIGHT SIXTEEN P.M.
...
EIGHT TWENTY-NINE P.M.
HALF PAST EIGHT P.M.
EIGHT THIRTY-ONE P.M.
...
EIGHT FIFTY-NINE P.M.
NINE P.M. EXACTLY
The clock has three buttons: Select, Up, and Down. The display brightness is continuously adjustable (256 levels) from barely visible to very bright. The display can also be turned off while the clock continues to keep time.
The clock has a serial port, and can display text from a computer. It can display email alerts, stock quotes, caller ID, etc. and then return to clock mode automatically.
The serial port runs at 9600 baud. The clock will display ASCII text directly. Using escape codes, the computer can display text, return to clock mode, set the clock, read the clock setting, change the brightness, read the brightness, select centered or left-aligned mode, and display custom characters.
The display is 6X multiplexed, lighting four characters at a time. It is driven by a 64-bit shift register connected to the SPI port of the microcontroller, and six transistors to select the active digits. The Timer0 overflow interrupt provides the display refresh, and the Timer0 CompA register controls the duty cycle to vary the brightness. The clock requires 3.5 - 5 volts at up to 200 ma depending on brightness. I used a cell phone charger for power.
The clock requires an ATMEGA48 or larger MCU (88P/168P/328P), an 8 MHz crystal, eight 74AC164E shift registers, 60 LED resistors (I use 220 ohm SIP resistor packs), six power transistors (ZTX790A), and six resistors to drive the transistors. There are also some capacitors and three pushbuttons.
The displays are Mouser 604-PDA54-11SRWA 0.54 inch red two-character modules, and you need twelve of them. This display is about 12 inches long. Most common-cathode or common-anode 14-segment displays could be used instead. The program size is 2KB, and 96 bytes of RAM are used.
I mounted the driver ICs and SIP resistors on the backs of the display modules. This approach requires several hundred point to point connections. To make more than a few of these clocks will require a PC board.
Source code is at http://www.opengpstracker.org/vclock.asm
Mike