Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: MMA8451Q SPI_TFT_ILI9341 TFT_fonts mbed
Homepage
Smart clock by Duncan and Kieran¶
Photo¶
Equipment¶
- PCB: FRDM-KL25Z
- TFT Color Display: MI0283QT-9A
- Buzzer
- 3 x buttons
- 3 x 2kΩ resistors and 1 x 100Ω resistor
- Stripboard
- Wires (stranded is preferable due to their flexibility)
- USB to Mini-USB cable, and computer
Setup¶
PCB to TFT (Output)¶
| FRDM-KL25Z | MI0283QT-9A |
|---|---|
| P3V3 | 3.3V, IM1, IM2, IM3 |
| GND | RD, IM0, LEDK |
| PTD5 | CS |
| PTD1 | RS |
| PTD0 | RST |
| PTD2 | SDI |
| PTD3 | SDO |
| PTA13 | WR |
| P5V_USB through 100Ω resistor (approx. 20mA) | LEDA |
The buzzer should be connected between PTA12 and ground.
Note: The resistance between P5V_USB and LEDA can be reduced to increase the brightness of the screen. However, resistors lower than 30Ω have not been tested, and may result in the current causing damage to the PCB.
PCB to Buttons (Inputs)¶
| FRDM-KL25Z | Input |
|---|---|
| PTA5 | Minute button |
| PTC8 | Hour button |
| PTC9 | Time change button - toggles between changing the alarm time and the clock time |
Each button should be connected in series with a 2kΩ resistor between 3.3V and 0V, so that pressing the button switches between these two voltages.
Features¶
- A digital clock, displayed in 24-hour format
- An analogue clock, displaying the time in standard 12-hour format
- Alarm can be changed using the minute and hour buttons
- Time can be changed by holding the third button
- Alarm will sound for one minute at the displayed time
- Putting the alarm on its side will snooze the alarm if the alarm is going off (or just disable it if the alarm is not sounding)