注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
Gen_X的个人空间 https://home.eeworld.com.cn/space-uid-1203446.html [收藏] [复制] [分享] [RSS]
日志

3个数字取中函数

已有 195 次阅读2024-8-13 19:46

如图,看到很多关于3个数取中的程序,感觉都有点复杂,不满足本人简单复制黏贴的需要,

所以整理了一个看上去最简明的函数,部分类型,直接定义如下:

#define mid3v(a,b,c) (a>b? (a<c? a:(a>c? b:c)):(b<c? b:(b>c? a:c)))

将需要取中的三个值分别付给a、b、c,

调用时只需   Ymid = mid3v(a,b,c)即可。

关键是只有一行代码,便于复制黏贴,

常用于简单快速采样3次取中,然后再加上简单的LAG惯性滤波,即可消除大部分的随机干扰。

 

注意:a + b = 1 。LAG计算如下:

Yout = a*x + b*Y0 ;

Y0 = Yout ;

end;

本文来自论坛,点击查看完整帖子内容。

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章