野火指南者课程设计:基于STM32的多功能网络同步时钟

📅 2026/7/26 18:41:36 👁️ 阅读次数 📝 编程学习
野火指南者课程设计:基于STM32的多功能网络同步时钟

一、系统简介

基于STM32F103VET6微控制器的多功能网络同步时钟系统是一款集成了时间显示、倒计时、闹钟和计时器功能的智能设备。系统在初始化时通过WiFi模块进行网络时间同步,确保时间的准确性。结合ILI9341 LCD显示屏、物理按键和触摸按键,系统提供直观的用户交互体验,支持多种功能模式切换,并通过EEPROM存储用户设置,具有高集成度和实用性。

二、准备工具

1.硬件准备

  • PC电脑一台
  • 手机(发射热点2.4G)
  • STM32F103vet6(野火指南者)

2.软件准备

  • Keil5 (开发/烧录工具)

三、系统硬件

1.硬件结构图

2.硬件连接图

使用野火指南者(STM32F103vet6)的开发板无需任何连线,烧录后即可使用!

四、系统软件

1.软件程序设计

在系统启动之初,会进行一系列全面的初始化操作。这包括配置所有必要的硬件组件,如用于时间计算的内部时钟(定时器)、与用户交互的按键(KEY)、输出视觉信息的显示屏幕(LCD)、提供听觉反馈的蜂鸣器(BEEP),以及负责数据存储的非易失性存储器(EEPROM)。在此阶段,系统会主动连接到网络,并利用网络时间协议进行一次性高精度的时间校准。完成校准后,网络连接的功能即告一段落。同时,系统还会从非易失性存储器中读取并恢复之前保存的闹钟信息

系统随后进入一个持续运行的主循环,其核心任务是精确地维护当前时间,并将其以清晰直观的格式呈现在显示屏幕上,包括日期、星期和精确的时分秒。屏幕还会动态显示各项辅助功能的状态,如倒计时闹钟计时器的激活或禁用情况。

用户与设备的交互主要通过物理按键实现。系统会持续监测按键的按下事件,并根据按下的类型(短按或长按)和当前所处的界面模式,触发不同的响应。这些按键操作使得用户能够便捷地切换不同的功能模式、调整时间数值(如设置倒计时或闹钟的具体时间)、启动或暂停特定的计时任务,以及启用或关闭闹钟。所有开启闹钟的配置信息,都会被及时保存到非易失性存储器(EEPROM)中,以确保设备在断电后仍能保留用户的闹钟信息

除了基本的时间显示,设备还集成了倒计时功能。用户可以设定特定的时间长度,系统将进行递减计时,并在倒计时结束时发出视觉和听觉的双重警报。闹钟功能则提供了两种灵活的模式:一种允许用户设定具体的日期和时间点作为闹钟触发点,另一种则可设定每周的特定日期和时间重复响铃。闹钟到达时,系统会通过显示信息和蜂鸣器发出警告。此外,设备还内置了计时器功能,可用于测量任意时长的时间段,并能将多达六组历史计时记录存储起来供用户随时查阅。整个运行过程中,系统会通过显示屏幕提供实时的状态更新和信息呈现,并通过蜂鸣器发出各种提示音效,增强用户体验。

2.按键程序设计

在该基于STM32的多功能网络同步时钟系统中,用户与设备的主要交互是通过三种类型的按键实现的:两个物理按键(KEY1和KEY2)和一个电容按键(Cap_KEY)。系统持续监测这些按键的按下状态,并根据按键类型、按下时长(短按或长按)以及当前设备所处的功能模式来执行不同的操作。

在任何状态下电容按键(Cap_KEY)长按都是切换功能,短按是功能的选择;物理按键(KEY1)拥有功能增加调节时间/选择模式/开始计时等功能;物理按键(KEY2)拥有功能减少调节时间/选择模式/暂停计时(长按计时清零)等功能,详细的控制流程请看下面的界面控制细则。

3.程序流程图

4.本地程序

char wifiname[100]= "tao" ; //WiFi名称 char wifipassword[100] = "12345678"; //WiFi密码 int beep_on=1; //报警蜂鸣器开关

五、运行测试

1.WiFi配置界面

2.主页界面

3.倒计时界面

4.闹钟界面

5.计时器界面

6.报警界面

六、下载地址

项目地址:基于STM32(vet6)的多功能网络同步时钟 - 零度空间