This is a toy project my sister and I developed together which times extraction time of espresso. It's essentially a manually multiplexed 7-segment display which acts as a clock and 25-second timer.
Here's a picture of the timer when it is off
This is the backside. It uses 0805 SMD components:
In clock mode:
And in timer mode:
After reset the timer clock is in "set time" mode. Pressing the inner button sets hours, the outer button sets minutes.
Pressing both buttons at the same time changes between clock and stopwatch mode. In stopwatch mode, the outer button starts/stops the timer. The inner button resets the timer. The timer starts at 25.0 seconds and counts down towards -99.9 seconds, at which point it stops.
- ATmega88PA (Datasheet)
- 8 MHz external crystal
- Fuse configuration
-U lfuse:w:0xf6:m -U hfuse:w:0xdf:m -U efuse:w:0xf9:m
(no CKDIV, Ext. Full Swing, Startup 14 CK + 4.1ms)
- External connections, viewed from top: +5V, GND, Switch
- Digit 4 (+): Pin 2, PD0
- Segment D (-): Pin 3, PD1
- Segment C (-): Pin 4, PD2
- Digit 3 (+): Pin 24, PC1
- Digit 2 (+): Pin 6, PD4
- Segment E (-): Pin 14, PB0
- Digit 1 (+): Pin 13, PD7
- Segment G (-): Pin 12, PD6
- Segment F (-): Pin 11, PD5
- Segment Dot (-): Pin 15, PB1
- Segment A (-): Pin 16, PB2
- Segment B (-): Pin 23, PC0
- Outer switch: Pin 28, PC5
- Inner switch: Pin 27, PC4,
- External switch: Pin 26, PC3 (unused)
- Buzzer (+): Pin 5, PD3
GNU GPL-3.