Skip to content

caotrongphuoc/mini-clock

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

717 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Repo Traffic

Mini Clock - Digital Desk Clock built on AK Embedded Base Kit

Demo

Documentation

File Description
README.md Main project overview, hardware information, operation, and object descriptions.

Introduction

Mini Clock is a digital desk clock built on the AK Embedded Base Kit.

This project focuses on building a simple clock application using an event-driven approach. It handles basic features such as displaying time, updating the screen, reading button inputs, and triggering an hourly chime.

Through this project, I practiced several embedded concepts:

  • System design: Organizing the main features and logic of the clock.
  • Task management: Splitting the program into small tasks such as time update, display update, and button handling.
  • Communication: Using signals, timers, and messages to handle events.
  • State machine: Managing clock modes such as normal display, setting time, and chime control.

I. Hardware

AK Embedded Base Kit - STM32L151 - v3.0

Figure 1: AK Embedded Base Kit - STM32L151

AK Embedded Base Kit is a development kit for people who already have some experience with embedded programming and want to learn more through practice.

The board includes a 1.54-inch OLED display, 3 push buttons, and a buzzer that can play simple sounds or short melodies. With these built-in parts, you can create small games, menu systems, clocks, and other interactive projects. It is also a good way to learn how event-driven programming works in a real embedded system.

The kit also supports RS485, Qwiic, and Grove connections. This makes it easy to connect sensors, modules, and other devices when testing or building embedded projects.

MCU Overview:

SoC Name : STM32L151CBT6
RAM      : 16 KB

Flash Partitions Layout
----------------------
[ 0x08000000 - 0x08001FFF ] : Bootloader Partition (8 KB)
=> AK Bootloader

[ 0x08002000 - 0x08002FFF ] : BSF Shared Partition (4 KB)
=> Used for data sharing between Bootloader and Application

[ 0x08003000 - 0x0801FFFF ] : Application Partition (116 KB)
=> Mini Clock firmware

MCU Naming Convention:

Part Meaning
STM32 STMicroelectronics 32-bit MCU family.
L Low-power series.
151 STM32L151 product line.
C 48-pin package.
B 128 KB Flash memory.
T LQFP package.
6 Industrial temperature grade.

Figure 2: Board view Top + Bottom

Contact & Support

Cao Trong Phuoc - Software Engineer - Embedded Systems

Thank you for visiting this repository.
If you have any questions, suggestions, or feedback about this project or firmware development, feel free to contact me directly.

Josef Tan - Software Engineer - Embedded Systems

For questions related to this project, embedded systems, or firmware development, please feel free to reach out through GitHub or LinkedIn.

About

A smart desk clock built on the AK Embedded Kit (STM32L151), using the hardware RTC.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages