项目结构与功能实现概述:定时器、按键处理及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状态
- 显示统计信息
图片
