This clock project is a
little bit different. It
combines digital logic
and modern electronic
components with the
positional display (almost).
The approach lends
itself to all sorts of
variations so you can
choose to make your
clock in whatever
way suits your taste.
It should be noted that
while the example built
only displays hours and
minutes, the software
(and schematic) fully
minutes, and seconds.
■ PHOTO 1. The clock has three hands:
hours, tens of minutes, and ones of
minutes, and is read outer ring inwards.
The red LED indicates 10 hours. The yellow
LED “points” to 40 minutes and the green
LED shows eight minutes. This makes the
time 10: 48. If you incorporate the seconds,
then the clock will have five hands.
There is a simple technique to
reading the clock. There are three
“rings” of LEDs for the clock shown.
The outer ring represents hours. The
middle ring represents tens of minutes, and the inner ring represents
individual minutes. There is only
one LED per ring lit. The analog
clock-face position of this LED
indicates the value. Straight up (or
topmost) is 12. Straight down is 6
and so forth. There are 12 positions
for the hours, six positions for the
tens of minutes, and 10 positions for
the ones of minutes. In effect, the
clock has three hands: hours, tens of
minutes, and ones of minutes. The
center LED is necessary to provide a
visual reference in a darkened room.
(I used a bi-color central LED that
flashes back and forth between red
and green.) Note that the “ 12”
o’clock position indicates zero for
anything other than hours. So 12:00
noon (or midnight) will have a line
of LEDs straight up.
Looking at Photo 1, you can see
that the time is 10: 48. The red outer
ring LED that’s on is in the 10 o’clock
position. The lit LED for the tens of
minutes (yellow) is in the 4 o’clock
position, and the ones of minutes
(green) is in the 8 o’clock position.
If you choose to implement the
The source code for the software
is available on the Nuts & Volts
website at www.nutsvolts.com.
design to display seconds, there will
be two additional rings for the tens
of seconds and ones of seconds
(identical in layout to the two minutes rings). In this case, your clock
will have five hands: hours, tens of
minutes, ones of minutes, tens of
seconds, and ones of seconds. You
will probably also have to make it
physically larger to accommodate
the two additional rings.
The design shown has the hours
as the outermost ring. This is
arbitrary. You can place your rings in
any order you want. However, I like
reading from the outside ring,
inward. It seems more natural and
the most significant digit has the
biggest ring. I also used different
colors for different rings for easier
In order to keep the design simple and manageable, an LED matrix
was used with a microprocessor
(µP). Instead of calling out rows and
columns of a conventional matrix,
we use rings and spokes for clarity.
The rings have already been defined
(hours, tens of minutes, etc.). The
spokes are unit values (0-9 for
minutes, 0-5 for tens of minutes,
etc.). By driving one ring and one
spoke, a single LED can be made to
light up. The actual design does this
very quickly (a standard technique
called multiplexing) so it appears
that several LEDs are on at one time.
Using a matrix significantly reduces
the number of wires and microprocessor I/Os needed. In this case,