博客
关于我
【3/10】 基于arduino的算数…
阅读量:330 次
发布时间:2019-03-04

本文共 594 字,大约阅读时间需要 1 分钟。

算数平均滤波是一种有效的方法,适用于波动较小的电平信号。这种方法通过取多次测量值的平均值,降低信号的噪声干扰。以下是实现该算法的代码解析:

代码主要包含四个函数:Receive()Average()SignalOut()loop()Receive()函数负责采样电平信号,并将其存储在数组OriginValue中。Average()函数计算存储的值的平均值,并通过AveValue进行输出。SignalOut()函数将计算结果以电平形式输出。loop()函数作为主循环,确保代码不断执行。

InputOutput常量分别定义了电平输入和输出的引脚号。savenum定义了每次采样存储的数据数量。OriginValue数组用于存储采集的电平值。AveValue变量存储了算数平均后的电平值。Acount计数器用于跟踪采样次数。

代码在setup()函数中进行初始化,Receive()函数根据计数器状态采集电平数据并存储。当计数器超过存储容量时,会调用Average()函数重新计算平均值并清空存储数据。Average()函数通过遍历OriginValue数组计算平均值,并调用SignalOut()函数输出结果。SignalOut()函数将平均值以电平形式输出到指定引脚,并通过串口打印。

整个代码结构清晰,能够有效处理波动较小的电平信号,适用于需要降低噪声干扰的实际应用场景。

转载地址:http://jtyh.baihongyu.com/

你可能感兴趣的文章
Objective-C实现鸡兔同笼问题(附完整源码)
查看>>
Objective-C实现鼠标点击其他程序(附完整源码)
查看>>
Objective-c正确的写法单身
查看>>
Objective-C语法之代码块(block)的使用
查看>>
ObjectMapper - 实现复杂类型对象反序列化(天坑!)
查看>>
ObjectProperty 类的使用
查看>>
Objects.equals有坑
查看>>
Object常用方法
查看>>
Object方法的finalize方法
查看>>
Object类有哪些方法,hashcode方法的作用,为什么要重写hashcode方法?
查看>>
Objenesis创建类的实例
查看>>
OBObjective-c 多线程(锁机制) 解决资源抢夺问题
查看>>
OBS studio最新版配置鉴权推流
查看>>
Obsidian的使用-ChatGPT4o作答
查看>>
Obsidian笔记记录GPT回复的数学公式无缝转化插件Katex to mathjax
查看>>
ObsoleteAttribute 可适用于除程序集、模块、参数或返回值以外的所有程序元素。 将元素标记为过时可以通知用户:该元素在产品的未来版本中将被移除。...
查看>>
OC block声明和使用
查看>>
OC Xcode快捷键
查看>>
oc 中的.m和.mm文件区别
查看>>
OC 中的重写 OC中没有重载 以及隐藏
查看>>