数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 405|回复: 10

[C51] 求助算平滑平均值的方法

[复制链接]
发表于 2025-5-19 11:40:19 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
问题是这样的,
有一个外部中断,来一个脉冲计一次数
然后在定时器中每秒钟累计一次外部中断的次数,
我想要显示更平滑一些,
我想要这样来实现

第2秒计算第1秒+第2秒的平均值,
第3秒计算第2秒+第3秒的平均值,

每秒更新一次显示,
一时没想到代码要怎样实现,


发表于 2025-5-19 12:14:00 来自手机浏览器 | 显示全部楼层
一共就计算俩数据的平均值。弄个数组,两个元素,每次都数据放到数组里,计算这两个数组数据的平均值。
回复 支持 反对

使用道具 举报

发表于 2025-5-19 12:25:47 | 显示全部楼层
ai会替你搞定吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-8-8 12:49:21 | 显示全部楼层
感谢这位网友的提醒


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

发表于 2025-8-8 14:13:25 | 显示全部楼层
滑动时间窗口
回复 支持 反对

使用道具 举报

发表于 2025-8-9 22:30:01 | 显示全部楼层
先存数组然后排序做异常数据剔除最后做平均算法,这样不是输出真实数据但看上去会更漂亮.
回复 支持 反对

使用道具 举报

发表于 2025-8-11 19:40:58 | 显示全部楼层
不是一般是 采样5次  丢掉 最大 最小值  然后求三次的平均值 这样更平滑吗
回复 支持 反对

使用道具 举报

发表于 2025-8-15 16:45:35 | 显示全部楼层
外部中断是硬性事件,进入一次就累加,可以采用1s计时到后,再去刷新显示的思路实现,
回复 支持 反对

使用道具 举报

发表于 2025-8-15 16:47:14 | 显示全部楼层
要是把采样记过累积平均,就会出现错误计数
回复 支持 反对

使用道具 举报

发表于 2025-8-26 12:36:34 | 显示全部楼层
hellozwt 发表于 2025-8-8 12:49
感谢这位网友的提醒

低端单片机用除法效率会低
使用移位方式(移两位等于除4):
F=(sum * 10) >> 2;
四舍五入:
F=(sum * 10 + 2) >> 2;
回复 支持 反对

使用道具 举报

发表于 2025-8-26 12:42:50 | 显示全部楼层
问下deek吧,这个一般都会有解释
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-9-5 04:49 , Processed in 0.124800 second(s), 8 queries , Gzip On, Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表