Simple timer using a 12F675
I needed a simple timer that would sound a beeper after a preset time. I didn't need a fancy
display to show remaining time - the thing just had to have a few selectable times and give a
warning beep one minute before the time was up. The unit operates on 3V (2x AA batteries) and
has only a reset button and a rotary pot for selecting the 7 time intervals. A small piezo
beeper is plenty loud enough for this application. I used a pot instead of a switch as the micro
has not many I/O pins but does have an inbuilt A/D converter just begging to be used! The reset
button literally resets the micro which reads the pot position upon starting to get the time
interval and then starts counting down. One minute before the time is up, it pulses the piezo
quickly three times as a warning and then continuously for 3 seconds upon expiry of the time.
This makes it great for stopping the kids hogging the shower! We also use it to time their
turns on the Playstation. After the final beep, the micro is put into sleep mode to lower
power consumption until the next time it's required. The time interval pot is fed from another
port pin to that it's only pulling current for the few milliseconds that the A/D conversion is
taking place. I haven't measured the current consumption but the batteries should last quite
some time even with fairly regular use. The assembler code is
available for those interested in making a timer for themselves. The circuit diagram is simple
as can be seen below. I threw it all together in no time with bits I had handy.
E-mail: David Duffy