博客
关于我
【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/

你可能感兴趣的文章
Openlayers中设置定时绘制和清理直线图层
查看>>
Openlayers图文版实战,vue项目从0到1做基础配置
查看>>
Openlayers实战:modifystart、modifyend互动示例
查看>>
Openlayers高级交互(10/20):绘制矩形,截取对应部分的地图并保存
查看>>
Openlayers高级交互(16/20):两个多边形的交集、差集、并集处理
查看>>
Openlayers高级交互(17/20):通过坐标显示多边形,计算出最大幅宽
查看>>
Openlayers高级交互(19/20): 地图上点击某处,列表中显示对应位置
查看>>
Openlayers高级交互(8/20):选取feature,平移feature
查看>>
openlayers:圆孔相机根据卫星经度、纬度、高度、半径比例推算绘制地面的拍摄的区域
查看>>
OpenLDAP(2.4.3x)服务器搭建及配置说明
查看>>
OpenLDAP编译安装及配置
查看>>
OpenMCU(一):STM32F407 FreeRTOS移植
查看>>
OpenMCU(三):STM32F103 FreeRTOS移植
查看>>
OpenMCU(二):GD32E23xx FreeRTOS移植
查看>>
OpenMetadata 命令执行漏洞复现(CVE-2024-28255)
查看>>
OpenMMLab | S4模型详解:应对长序列建模的有效方法
查看>>
OpenMMLab | 【全网首发】Llama 3 微调项目实践与教程(XTuner 版)
查看>>
OpenMMLab | 面向多样应用需求,书生·浦语2.5开源超轻量、高性能多种参数版本
查看>>
OpenMV入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
查看>>
OpenObserve云原生可观测平台本地Docker部署与远程访问实战教程
查看>>