【C语言技巧】滑动滤波算法滤除抖动

2023-11-01

简易滑动滤波算法

算法原理

将新数据放入到数组的最后,每次在得到数据之前先将数据左移一个元素,踢掉第一个元素最旧的数据,最后数组计算平均

#include<stdio.h>

#define	ADC_CAPTURE			10		//采集数量

static  int	uiChannel1Buffer[ADC_CAPTURE] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
static  long ulChannel1AdcValue = 0;

static  int value[ADC_CAPTURE] = {10, 15, 18, 16, 17, 20, 19, 22, 17, 13};

void SilderFilter(int _value)
{
		char i;

		for(i=0; i<ADC_CAPTURE-1; i++)
		{
				uiChannel1Buffer[i] = uiChannel1Buffer[i+1];
		}
		
		uiChannel1Buffer[ADC_CAPTURE-1] = _value;

        for(char i=0; i<ADC_CAPTURE; i++)
        {
                ulChannel1AdcValue = uiChannel1Buffer[i] + ulChannel1AdcValue;
        }	

        for(i=0; i<ADC_CAPTURE; i++)
        {

            printf("uiChannel1Buffer[%d] = %d Average: %ld\n",i,  uiChannel1Buffer[i], ulChannel1AdcValue / ADC_CAPTURE);

        }
         printf("----------------------------\n");
}


int main(void)
{
    char i;
    for(i=0; i<ADC_CAPTURE; i++)
    {
        printf("uiChannel1Buffer[%d] = %d\n",i,  uiChannel1Buffer[i]);
    }
     printf("----------------------------\n");

    for(i=0; i<ADC_CAPTURE; i++)
    {
        SilderFilter(value[i]);
    }      
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【C语言技巧】滑动滤波算法滤除抖动 的相关文章

  • 删除文件的最后 10 个字符

    我想删除文件的最后 10 个字符 说一个字符串 hello i am a c learner 是文件内的数据 我只是希望该文件是 hello i am a 文件的最后 10 个字符 即字符串 c learner 应在文件内消除 解决方案 将
  • BASIC 中的 C 语言中的 PeekInt、PokeInt、Peek、Poke 等效项

    我想知道该命令的等效项是什么Peek and Poke 基本和其他变体 用 C 语言 类似PeekInt PokeInt 整数 涉及内存条的东西 我知道在 C 语言中有很多方法可以做到这一点 我正在尝试将基本程序移植到 C 语言 这只是使用
  • 机器Epsilon精度差异

    我正在尝试计算 C 中双精度数和浮点数的机器 epsilon 值 作为学校作业的一部分 我在 Windows 7 64 位中使用 Cygwin 代码如下 include
  • C++11 删除重写方法

    Preface 这是一个关于最佳实践的问题 涉及 C 11 中引入的删除运算符的新含义 当应用于覆盖继承父类的虚拟方法的子类时 背景 根据标准 引用的第一个用例是明确禁止调用某些类型的函数 否则转换将是隐式的 例如最新版本第 8 4 3 节
  • 随着时间的推移,添加到 List 变得非常慢

    我正在解析一个大约有 1000 行的 html 表 我从一个字符串中添加 10 个字符串 td 每行到一个list td
  • 用于 FTP 的文件系统观察器

    我怎样才能实现FileSystemWatcherFTP 位置 在 C 中 这个想法是 每当 FTP 位置添加任何内容时 我都希望将其复制到我的本地计算机 任何想法都会有所帮助 这是我之前问题的后续使用 NET 进行选择性 FTP 下载 ht
  • 对类 static constexpr 结构的未定义引用,g++ 与 clang

    这是我的代码 a cp p struct int2 int x y struct Foo static constexpr int bar1 1 static constexpr int2 bar2 1 2 int foo1 return
  • 访问外部窗口句柄

    我当前正在处理的程序有问题 这是由于 vista Windows 7 中增强的安全性引起的 特别是 UIPI 它阻止完整性级别较低的窗口与较高完整性级别的窗口 对话 就我而言 我想告诉具有高完整性级别的窗口进入我们的应用程序 它在 XP 或
  • 重载 (c)begin/(c)end

    我试图超载 c begin c end类的函数 以便能够调用 C 11 基于范围的 for 循环 它在大多数情况下都有效 但我无法理解和解决其中一个问题 for auto const point fProjectData gt getPoi
  • 空指针与 int 等价

    Bjarne 在 C 编程语言 中写道 空指针与整数零不同 但 0 可以用作空指针的指针初始值设定项 这是否意味着 void voidPointer 0 int zero 0 int castPointer reinterpret cast
  • LINQ:使用 INNER JOIN、Group 和 SUM

    我正在尝试使用 LINQ 执行以下 SQL 最接近的是执行交叉联接和总和计算 我知道必须有更好的方法来编写它 所以我向堆栈团队寻求帮助 SELECT T1 Column1 T1 Column2 SUM T3 Column1 AS Amoun
  • 复制目录下所有文件

    如何将一个目录中的所有内容复制到另一个目录而不循环遍历每个文件 你不能 两者都不Directory http msdn microsoft com en us library system io directory aspx nor Dir
  • 如何实例化 ODataQueryOptions

    我有一个工作 简化 ODataController用下面的方法 public class MyTypeController ODataController HttpGet EnableQuery ODataRoute myTypes pub
  • 为什么 isnormal() 说一个值是正常的,而实际上不是?

    include
  • C 函数 time() 如何处理秒的小数部分?

    The time 函数将返回自 1970 年以来的秒数 我想知道它如何对返回的秒数进行舍入 例如 对于100 4s 它会返回100还是101 有明确的定义吗 ISO C标准没有说太多 它只说time 回报 该实现对当前日历时间的最佳近似 结
  • 对于某些 PDF 文件,LoadIFilter() 返回 -2147467259

    我正在尝试使用 Adob e IFilter 搜索 PDF 文件 我的代码是用 C 编写的 我使用 p invoke 来获取 IFilter 的实例 DllImport query dll SetLastError true CharSet
  • C# 中最小化字符串长度

    我想减少字符串的长度 喜欢 这串 string foo Lorem ipsum dolor sit amet consectetur adipiscing elit Aenean in vehicula nulla Phasellus li
  • 在OpenGL中,我可以在坐标(5, 5)处精确地绘制一个像素吗?

    我所说的 5 5 正是指第五行第五列 我发现使用屏幕坐标来绘制东西非常困难 OpenGL 中的所有坐标都是相对的 通常范围从 1 0 到 1 0 为什么阻止程序员使用屏幕坐标 窗口坐标如此严重 最简单的方法可能是通过以下方式设置投影以匹配渲
  • 类型或命名空间“MyNamespace”不存在等

    我有通常的类型或命名空间名称不存在错误 除了我引用了程序集 using 语句没有显示为不正确 并且我引用的类是公共的 事实上 我在不同的解决方案中引用并使用相同的程序集来执行相同的操作 并且效果很好 顺便说一句 这是VS2010 有人有什么
  • 从 mvc 控制器使用 Web api 控制器操作

    我有两个控制器 一个mvc控制器和一个api控制器 它们都在同一个项目中 HomeController Controller DataController ApiController 如果我想从 HomeController 中使用 Dat

随机推荐

  • python字典调用键值对作为函数的形参_前端如何学习Python——字典和函数|七日打卡...

    字典 Python 中的字典和 Javascript的对象基本是一样的 添加键值对 user user name david user age 18 print user 复制代码 name david age 18 复制代码 删除键值对
  • RuntimeError: Error(s) in loading state_dict for SENET

    错误提示 RuntimeError Error s in loading state dict for SENET Missing key s in state dict conv1 weight bn1 weight bn1 bias b
  • WebGL(threeJS)给物体打标签

    threeJS给物体打标签有以下几种方法 今天我们就郭老师的例子 依次来看看区别三中标签的区别 今天咱们现年看看效果 下次咱们分析代码 第一种 CSS2DRenderer 官方案例 CSS2DRenderer的标签本身的大小不会缩放也不会旋
  • OD华为机试 19

    分苹果 描述 A B两个人把苹果分为两堆 A希望按照他的计算规则等分苹果 他的计算规则是按照二进制加法计算 并且不计算进位 12 5 9 1100 0101 9 B的计算规则是十进制加法 包括正常进位 B希望在满足A的情况下获取苹果重量最多
  • 2022全年度净水器十大热门品牌销量榜单

    随着人们健康意识的提升 每天喝足量水的观念已经深入人心 而伴随居民生活水平的提高 当下居民对水污染问题也更加关注 对饮水品质的认知和要求也随之升级 因此 净水器在过去几年开启了高速增长的趋势 根据鲸参谋数据显示 2022年京东平台净水器的年
  • docker具名挂载与匿名挂载

    文章分为三部分 什么是具名 匿名和指定路径挂载 匿名挂载 具名挂载 什么是具名 匿名和指定路径挂载 v 容器内路径 匿名挂载 v 卷名 容器内路径 具名挂载 v 宿主机路径 容器内路径 指定路径挂载 拓展 宿主机路径 容器内路径 ro 只读
  • 好书推荐计划:Keras之父作品《Python 深度学习》

    大家好 我禅师的助理兼人工智能排版住手助手条子 可能很多人都不知道我 因为我真的难得露面一次 天天给禅师做底层工作 今天条子终于也熬到这一天 终于也有机会来为大家写文章了 激动的我啊 都忘了9月17号中午和禅师在我厂门口兰州料理吃饭 禅师要
  • C++——关于返回值优化问题

    我们知道 对于一个函数的返回值来说 其是一个对象的拷贝 并且应当是一个右值 我们现在有一个函数 A get A A a 1 return a int mian A get A return 0 这个函数的行为应当是在函数体中构造一个a 然后
  • 浅析React Router V6 useRoutes的使用

    本篇文章记录了useRoutes第一个参数的使用方法 暂不涉及第二个参数 文章目录 一 使用位置 二 嵌套路由 三 分模块管理 注意事项 一 使用位置 一开始以为可以像react router config那样使用 于是写成 import
  • 用 construct 2 制作简易弹幕游戏

    用 construct 2 制作简易弹幕游戏 1 打开construct 2 加入背景 3 建立新的图层 4 在新的图层里加入素材 超人 弹幕 4 加入鼠标 5 给超人和弹幕设置动作 超人的 弹幕的 6 加入文字框 7 编写代码 完成啦
  • TCP/UDP报文格式及各种通信机制简介

    TCP UDP报文格式及各种通信机制简介 一 UDP报文 二 TCP报文 三 TCP通信机制 1 确认应答机制 2 超时重传机制 3 滑动窗口及快重传机制 4 流量控制 5 拥塞控制及慢启动机制 6 延迟应答 7 捎带应答 8 粘包问题 一
  • PLC中的定时器

    1 脉冲定时器 将指令列表中的 生成脉冲 指令TP拖放到梯形图中 在出现的 调用选项 对话框中 将默认的背景数据块的名称改为T1 可以用它来做定时器的标示符 单击 确定 按钮 自动生成背景数据块 定时器的输入IN为启动输入端 PT为预设时间
  • 二叉搜索树的概念 及 功能代码实现

    1 概念 二叉搜索树 又称 二叉排序树 特点 二叉树 每个节点中保存关键字 key 关键字需要具备 比较 的能力 每个节点 都是 大于左子树 小于右子树 二叉树搜索树中 不会出现 相等的 key 中序遍历 一定是 有序的 时间复杂度 最好和
  • 利用Hbuilder将Vue项目打包成apk

    一 配置config index js 本人没有配置index js文件 就开始进行了打包 结果最终效果是页面空白 解决了空白 接着底部图标 我是用的阿里巴巴图片 资源找不到 所以配置这步比较重要 1 页面空白的解决 打开config in
  • uboot2014移植到QT2440

    http bbs chinaunix net thread 4143968 1 1 html
  • Kotlin 协程(Coroutines)配合使用 Retrofit,网络请求

    第一步 添加所需依赖 管理生命周期 implementation androidx lifecycle lifecycle livedata ktx 2 2 0 implementation androidx lifecycle lifec
  • K-近邻法(KNN算法)

    1 kNN算法 K 最近邻 k Nearest Neighbors 描述 简单地说 k 近邻算法采用测量不同特征值之间的距离方法进行分类 k 近邻算法 是一种基本 分类与回归 方法 它是是 监督学习 中分类方法的一种 属于 懒散学习法 惰性
  • 【实验四】【使用Select 语句查询数据】

    文章目录 数据 一 简单查询 二 汇总查询 三 连接查询和子查询 数据 这里为了体现查询语句的效果 下面根据查询语句的要求设计数据 结果如下 KC表 XSQK表 XS KC表 打开 SQL Server Management Studio
  • 【数据结构与算法】--二叉树OJ题

    单值二叉树 如果二叉树每个节点都具有相同的值 那么该二叉树就是单值二叉树 只有给定的树是单值二叉树时 才返回 true 否则返回 false 示例 1 输入 1 1 1 1 1 null 1 输出 true 示例 2 输入 2 2 2 5
  • 【C语言技巧】滑动滤波算法滤除抖动

    简易滑动滤波算法 算法原理 将新数据放入到数组的最后 每次在得到数据之前先将数据左移一个元素 踢掉第一个元素最旧的数据 最后数组计算平均 include