Thanks to microcontrollers, RTC modules, and a plethora of cheap and interesting display options, digital clock projects have become pretty easy. Choose to base a clock build around a chip sporting a date code from the late 70s, though, and your build is bound to be more than run-of-the-mill.
This is the boat that [Fran Blanche] finds herself in with one of her ongoing projects. The chip in question is a Mostek MK50250 digital alarm clock chip, and her first hurdle was find a way to run the clock on 50 Hertz with North American 60-Hertz power. The reason for this is a lesson in the compromises engineers sometimes have to make during the design process, and how that sometimes leads to false assumptions. It seems that the Mostek designers assumed that a 24-hour display would only ever be needed in locales where the line frequency is 50 Hz. [Fran], however, wants military time at 60 Hz, so she came up with a circuit to fool the chip. It uses a 4017 decade counter to divide the 60-Hz signal by 10, and uses the 6-Hz output to turn on a transistor that pulls the 60-Hz output low for one pulse. The result is one dropped pulse out of every six, which gives the Mostek the 50-Hz signal it needs. Sure, the pulse chain is asymmetric, but the chip won’t care, and [Fran] gets the clock she wants. Pretty clever.
A lot of microcontroller projects out there need some sense of wall-clock time. Whether you’re making (yet another) crazy clock, logging data, or just counting down the time left for your tea to steep, having access to human time is key.
The simplest solution is to grab a real-time-clock (RTC) IC or module. And there’s good reason to do so, because keeping accurate time over long periods is very hard. One second per day is 1/86,400 or around eleven and a half parts per million (ppm), and it’s tricky to beat twenty ppm without serious engineering.
Good RTC ICs like Maxim’s DS3231, used in the Chronodot, can do that. They use temperature correction logic and a crystal oscillator to get as accurate as five parts per million, or under half a second per day. They even have internal calendar functions, taking care of leap years and the day of the week and so on. The downside is the cost: temperature-compensated RTCs cost around $10 in single quantity, which can break the budget for some simple hacks or installations where multiple modules are needed. But there is a very suitable alternative.
What we’re looking for is a middle way: a wall-time solution for a microcontroller project that won’t break the bank (free would be ideal) but that performs pretty well over long periods of time under mellow environmental conditions. The kind of thing you’d use for a clock in your office. We’ll first look at the “obvious” contender, a plain-crystal oscillator solution, and then move on to something experimental and touchy, but free and essentially perfectly accurate over the long term: using power-line frequency as a standard.