找回密码
 立即注册
查看: 225|回复: 19

为了使ADC输出的数值稳定除了求平均值还有其他好的方法吗

[复制链接]
  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 85 天

    [LV.6]常住居民II

    11

    主题

    58

    回帖

    493

    积分

    中级会员

    积分
    493
    发表于 2024-3-31 07:06:31 | 显示全部楼层 |阅读模式
    各位大神:

               为了使ADC输出的数值稳定除了求平均值还有其他好的方法吗?
    平安快乐
    回复 送花

    使用道具 举报

    该用户从未签到

    550

    主题

    9318

    回帖

    1万

    积分

    管理员

    积分
    13898
    发表于 2024-3-31 10:46:22 | 显示全部楼层
    回复 支持 1 反对 0 送花

    使用道具 举报

    该用户从未签到

    550

    主题

    9318

    回帖

    1万

    积分

    管理员

    积分
    13898
    发表于 2024-3-31 10:48:52 | 显示全部楼层
    截图202403311048192974.jpg


    截图202403311048479379.jpg

    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 85 天

    [LV.6]常住居民II

    11

    主题

    58

    回帖

    493

    积分

    中级会员

    积分
    493
     楼主| 发表于 2024-3-31 11:26:38 | 显示全部楼层
    平安快乐
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    550

    主题

    9318

    回帖

    1万

    积分

    管理员

    积分
    13898
    发表于 2024-3-31 11:30:46 | 显示全部楼层
    先筑基,做好硬件,至少在研发部不用软件处理,硬件也是稳定的
    ===软件滤波,那是防止出厂后,有强干扰,去掉特殊的值


    现在很多 ADC 有 DMA 支持,可以连续采样转换自动产生平均值
    截图202403311132078187.jpg


    截图202403311134521396.jpg

    截图202403311135509446.jpg

    回复 支持 1 反对 0 送花

    使用道具 举报

    该用户从未签到

    550

    主题

    9318

    回帖

    1万

    积分

    管理员

    积分
    13898
    发表于 2024-3-31 11:33:42 | 显示全部楼层
    截图202403311133377290.jpg
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    46

    主题

    2934

    回帖

    6617

    积分

    超级版主

    积分
    6617
    发表于 2024-3-31 12:23:30 | 显示全部楼层
    STC8系列、STC32系列的ADC精度是很高的,达到0.5LSB的级别,但在实际使用中如发现有抖动,都是因为电源或参考电压或信号又干扰有纹波。西面描述的纹波包括干扰信号。
    硬件上,设计电源纹波尽量小(特备是AVCC),能小于10mV是最好的。AVREF纹波则再小一个数量级,小于0.5mV为佳(即小于1LSB对应的电压)。
    输入的信号电压纹波也要尽量小,能小于10mV是最好的(即小于1LSB对应的电压)。
    上述的硬件参数会直接影响读数稳定。

    如果硬件实在没法做到,则使用数字滤波就能很大程序滤除干扰,让读数稳定。
    数字滤波一般使用平均值滤波和一阶或更高阶低通滤波,其实平均值滤波也是低通滤波。
    滤波系数根据对信号的响应时间来设计,滤波效果好则响应慢,要权衡处理。
    很多情况下,对于慢速的信号(比如温度、电子秤等等),平均值滤波或一阶低通滤波,或者二者融合处理,对于正负幅度对称的固定干扰就可以得到很好的效果。
    比如平均值滤波,当使用20ms的倍数的时间来采样,则可以滤除50Hz规则干扰,采样点数越多,效果越好,比如使用20KHz均匀采样400ms,8000个点,平均后,哪怕有几百mV的50Hz干扰都能滤除。
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 85 天

    [LV.6]常住居民II

    11

    主题

    58

    回帖

    493

    积分

    中级会员

    积分
    493
     楼主| 发表于 2024-3-31 16:34:35 | 显示全部楼层
    梁工 发表于 2024-3-31 12:23
    STC8系列、STC32系列的ADC精度是很高的,达到0.5LSB的级别,但在实际使用中如发现有抖动,都是因为电源或参 ...

    谢谢梁总
    平安快乐
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    昨天 00:08
  • 签到天数: 59 天

    [LV.5]常住居民I

    0

    主题

    184

    回帖

    366

    积分

    中级会员

    积分
    366
    发表于 2024-3-31 18:32:00 | 显示全部楼层
    学习了
    回复 送花

    使用道具 举报

  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 85 天

    [LV.6]常住居民II

    11

    主题

    58

    回帖

    493

    积分

    中级会员

    积分
    493
     楼主| 发表于 2024-3-31 20:57:22 | 显示全部楼层
    平安快乐
    回复 支持 反对 送花

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-5 09:49 , Processed in 0.069262 second(s), 67 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表