项目结构与功能实现概述:定时器、按键处理及LCD显示

该思维导图概述了项目的主要结构,包括setup函数的初始化工作,如启动定时器和清屏,主循环loop中的频率更新和LED状态管理,以及按键处理函数key_proc的参数调整和界面切换。定时器中断回调每10毫秒触发,用于进行统计处理recd_proc,包括超限和波动检测。最后,LCD显示更新根据当前界面内容进行相应显示。

源码
# 项目结构与功能实现概述
## setup 函数
- 启动定时器6中断
- 启用TIM3和TIM8的输入捕获
- 初始化硬件
  - 初始化LED
  - 初始化LCD
- 清除屏幕
  - 设置初始显示内容
## 主循环 loop
- 更新频率值
  - 读取传感器数据
  - 计算频率
- 处理按键事件
  - 按键检测
  - 按键去抖
- 更新LED状态
  - LED开关管理
  - 根据状态变化调整LED模式
- 每100ms更新LCD显示
  - 刷新屏幕内容
  - 更新显示信息
## 按键处理 key_proc
- 调整参数
  - PD(比例调整)
  - PH(高频调整)
  - PX(时间调整)
- 切换显示界面
  - 主界面
  - 设置界面
  - 统计界面
- 复位统计值
  - 清零各类统计信息
## 定时器中断回调
- 每10ms触发一次
  - 处理中断任务
- 每100ms调用一次 recd_proc 进行统计处理
  - 定时任务调度
## 统计处理 recd_proc
- 超限检测
  - 定义超限阈值
  - 记录超限事件
- 波动范围检测
  - 计算波动范围
  - 记录波动事件
- 更新统计次数
  - 增加事件计数
  - 维护统计数据
## LCD 显示更新
- 根据当前界面显示不同内容
  - 显示频率值
  - 显示LED状态
  - 显示统计信息
图片
项目结构与功能实现概述:定时器、按键处理及LCD显示