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

你可能感兴趣的文章
Oracle——distinct的用法
查看>>
Oracle、MySQL、SQL Server架构大对比
查看>>
oracle下的OVER(PARTITION BY)函数介绍
查看>>
Oracle中DATE数据相减问题
查看>>
Oracle中merge into的使用
查看>>
oracle中sql查询上月、本月、上周、本周、昨天、今天的数据!
查看>>
oracle中sql的case语句运用--根据不同条件去排序!
查看>>
Oracle中Transate函数的使用
查看>>
oracle中关于日期问题的汇总!
查看>>
Oracle中常用的语句
查看>>
Oracle中序列的操作以及使用前对序列的初始化
查看>>
oracle中新建用户和赋予权限
查看>>
Oracle中的NVL,NVL2,NULLIF以及COALESCE函数使用
查看>>
Oracle中的rownum 和rowid的用法和区别
查看>>
oracle中的大小写、字符、dual、数字、处理、日期、函数、显/隐式、时间、条件表达式case、decode、to_date、to_char、sysdate
查看>>
oracle中表和视图的区别,oracle中常用表和视图
查看>>
oracle之表空间(tablespace)、方案(schema)、段(segment)、区(extent)、块(block)
查看>>
Oracle从11g导出后导入10g
查看>>
oracle从备份归档日志的方法集中回收
查看>>
oracle优化器analyzed,Oracle 学习之 性能优化(十三) 索引
查看>>