stm32 ADC实例解析(3)-多通道采集互相干扰的问题

文章目录

  • 一、问题现象:
  • 二、原因分析:
    • 1、测量值不准问题分析:
    • 2、采样干扰问题分析
  • 三、解决办法:
    • 1、硬件:
      • (1)、电源供电
      • (2)、引脚电容
      • (3)、减少采样回路的输入阻抗
    • 2、软件
      • (1)、增加采样时间
      • (2)、通道隔离
      • (3)、单通道采集
  • 四、总结

一、问题现象:

1、在实际项目中,使用ADC+DMA方式读取多路通道ADC采样值,发现当其中一路电压变化时会影响其他路采集值跟着变化,有差不多0.1V的抖动。
2、分压电路测量值和采集值有差别

二、原因分析:

1、测量值不准问题分析:

采样保持电路工作过程如下:
在这里插入图片描述
在采样阶段外部信号 VAIN 在采样开关 K 闭合后开始对采样保持电容 CADC 进行充电或是放
电,具体过程取决于此时 VAIN 与 CADC 上的电压情况:
• VAIN 电压高于 CADC 电压,则 VAIN 对 CADC 充电;
• VAIN 电压低于 CADC 电压,则 CADC 对 VAIN 放电。
RAIN 和 RADC 代表充/放电回路上的阻抗,其将限制充放电流大小。RADC 为内部阻抗,RAIN 为外部阻抗;
在设定的采样保持时间结束后,采样开关 K 断开,ADC 进入量化转换阶段,最终的转换结
果只取决此时 CADC 上的电压。为了得到准确的采样结果,就需要进行采样电路的阻抗匹配设
计,选择合理的采样保持时间和输入阻抗,保证在采样阶段结束后,CADC 上的电压与 VAIN 一
致。

2、采样干扰问题分析

在一个 ADC 转换单元中,所有的通道共用一个采样保持电容,假设在当前通道进行采样
前,前一个通道采样时输入电压接近 VREF(比如 3.3V),而当前需要采样的通道电压为 0V,该情
况下采样开关闭合后,CADC 将对外放电。在 RAIN 一定的情况下,若是采样时间 Ts
不够,则会出现在采样时间结束后,CADC 上电压并没有达到与 VAIN (即 0V)一致,
最终结果解释转换结果偏大

三、解决办法:

1、硬件:

(1)、电源供电

采用纹波噪声系数更小的 LDO 来供电,然后在 LDO 与 VREF+之间串联一颗磁珠,以屏蔽外部电源对于 VREF+的影响,对于 VREF+基准源,建议靠近引脚并联一个 uF 级以及一个 nF 级的去耦电容,一方面可以滤除来自外部低频与高频的电源噪声,另一方面,也可使ADC 在量化编码过程的基准源更加稳定。在 layout 过程中,相关电源线的走线上,推荐加宽电源迹线,以减小迹线的 ESR,在量化阶段,减小转化电容网络瞬间充电对输入基准源的影响。

(2)、引脚电容

外部并联滤波电容 CEXT,容值至少为 CADC 的 8192 倍(12bit,允许 0.5LSB 误
差),且采样前 CEXT 的电平与 VAIN 一致。
在这里插入图片描述

(3)、减少采样回路的输入阻抗

  • 减少 RAIN
  • 采样信号添加一级运放跟随,然后再进入 ADC 输入端口
    在这里插入图片描述

2、软件

(1)、增加采样时间

  • 软件配置更长的采样周期
  • 降低 ADC 时钟
    如果对于采样率没有要求的情况下,我们可以降低 ADC 的采样时钟,变相提高采样时间来使得采样电容充电到正确电位,ADC 在采样时间内,采样电容上的电压必须被充分充放电,其被充电的电压值与外部输入电压之间的差值不应超过 0.5LSB,否则无论后级 ADC 性能如何卓越,都无法真实反映信号的幅值.

(2)、通道隔离

将不同通道配置到不同的AD转换器上,例如将通道5配置到ADC1,通道6配置到ADC2,这样可以彻底隔离两个通道,避免干扰

(3)、单通道采集

DMA方式一次只配置一个通道可以减少干扰,采用分时采样的方法,每次只让一个通道进行采集,例如先让通道5采集500ms,再让通道6采集500ms,同时丢弃前100ms的数据

四、总结

通过软件的解决办法可以把抖动减少一个量级,即从0.1V抖动减小到0.01V,可以满足大部分应用要求,如果想要获得更高的精度,则需要硬件来配合解决,并且使用专门的ADC采样芯片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/60473.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[SaaS] 数禾科技 AIGC生成营销素材

https://zhuanlan.zhihu.com/p/923637935https://zhuanlan.zhihu.com/p/923637935

android studio 轮询修改对象属性(修改多个textview的text)

android studio版本:23.3.1 例程名称:loopsettextviewtext 这几天在帮一个朋友做个数独小游戏,如下图: 要可以玩自定义游戏,点击清空后,所以数字要清除。 要把所有的内容清空,一共有81个text…

Linux(CentOS)项目总结(前后端分离)

项目情况: 前端开发:vue3 vite ts VSCode后端开发:JDK17 Spring Boot 3 Mybatis Maven IDEA数据库:MySQL8.4.3 SQLyog代码管理:Git虚拟环境:VMware远程登录:FinalShell服务器操作系统&…

C# 选择文件夹路径

通过C#代码,调出windows风格的文件夹选择框。提供界面来选择指定文件夹,并将文件夹完整路径以字符串形式返回。 示例: 代码: #region 选择指定文件夹 string folderPath ""; FolderBrowserDialog folderBrowserDialo…

unity3d————协程原理讲解

1.协程的本质 协程可以分成两部分1.协程函数本体 2.协程调度器 协程本体就是一个能够中间暂停返回的函数 协程调度器是Unity内部实现的,会在对应的时机帮助我们继续执行协程函数 Unity只实现了协程调度部分协程的本体本质上就是一个 C#的迭代器方法 2.协程本体是…

丹摩征文活动|CogVideoX-2b:从0到1,轻松完成安装与部署!

丹摩征文活动 | CogVideoX-2b:从0到1,轻松完成安装与部署! CogVideoX 介绍 CogVideoX的问世,标志着视频制作技术迈入了一个全新的时代。它不仅打破了传统视频制作在效率与质量之间的平衡难题,还通过其先进的3D变分自…

知识库搭建|员工培训的效率利器

在企业的快速发展过程中,知识库的搭建成为了提升员工培训效率的关键一环。一个高效的知识库不仅能够为员工提供便捷的学习资源,还能促进知识的持续积累和传承。本文将探讨如何借助知识库工具,来提升员工培训的效率。 一、知识库在员工培训中…

OneRestore: A Universal Restoration Framework for Composite Degradation 论文阅读笔记

这是武汉大学一作单位的一篇发表在ECCV2024上的论文,文章代码开源,文章首页图如下所示,做混合图像干扰去除,还能分别去除,看起来很牛逼。文章是少见的做混合图像干扰去除的,不过可惜只包含了3种degradation…

2024最新版JavaScript逆向爬虫教程-------基础篇之Proxy与Reflect详解

目录 一、监听对象的操作二、Proxy基本使用2.1 创建空代理2.2 定义捕获器2.2.1 Proxy的set和get捕获器2.2.2 Proxy(handler)的13个捕获器 三、Reflect的作用3.1 Reflect的使用3.2 Reflect其余方法(9个)3.3 Proxy与Reflect中的receiver参数3.4 Reflect中的construct方法 ECMAScr…

文献解读-DNAscope: High accuracy small variant calling using machine learning

关键词:基准与方法研究;基因测序;变异检测; 文献简介 标题(英文):DNAscope: High accuracy small variant calling using machine learning标题(中文):DNAsc…

自动驾驶3D目标检测综述(一)

文章地址:[2206.09474] 3D Object Detection for Autonomous Driving: A Comprehensive Survey (arxiv.org) 这篇综述简单易懂,非常合适对自动驾驶和3D目标检测感兴趣的小白阅读,对相关算法进行初步理解。 目录 一、摘要 (一&a…

微软域名邮箱:如何设置管理烽火域名邮箱?

微软域名邮箱的设置技巧?免费域名邮箱注册设置教程? 微软域名邮箱为企业提供了一个强大且灵活的解决方案,帮助企业轻松管理其域名邮箱。烽火将详细介绍如何设置和管理微软域名邮箱,确保您的团队能够高效地使用这一工具。 微软域…

DirectShow过滤器开发-写AVI视频文件过滤器

下载本过滤器DLL 本过滤器将视频流和音频流写入AVI视频文件。 过滤器信息 过滤器名称:写AVI 过滤器GUID:{2EF49957-37DF-4356-A2A0-ECBC52D1984B} DLL注册函数名:DllRegisterServer 删除注册函数名:DllUnregisterServer 过滤器有…

新版 idea 编写 idea 插件时,启动出现 ClassNotFound

IntelliJ IDEA 2024.1.6 (Ultimate Edition) Build #IU-241.19072.14, built on August 8, 2024 Licensed to Sophia Tout Subscription is active until June 29, 2025. For educational use only. Runtime version: 17.0.111-b1207.30 amd64 Kotlin: 241.19072.14-IJ 新版本…

vue2.x elementui 固定顶部、左侧菜单与面包屑,自适应 iframe 页面布局

vue elementui 固定顶部、左侧菜单与面包屑,自适应 iframe 页面布局 疑问点:iframe无法高度100%,如果写了100%就会有滚动条,所以只写了99.5% 【效果图】 路由示例 const routes [{title: Index,path: /,name: "Index"…

godot——主题、Theme、StyleBox

我刚开始被这些术语吓到了,一直不敢去接触它们,都用的默认样式。现在好不容易有点思路了,记录下来。 下面看看怎么自定义样式。 1.先新建一个Theme 2.再次点击创建好的Theme 得到 图1 这样一个面板。(看不懂没事,继…

web——sqliabs靶场——第二关

今天来搞第二关,来看看是什么咸蛋 1.判断是否存在sql注入漏洞 输入1 存在sql注入,报错语句为 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near LIMIT 0,1 …

基于Matlab 火焰识别技术

课题介绍 森林承担着为人类提供氧气以及回收二氧化碳等废弃气体的作用,森林保护显得尤其重要。但是每年由于火灾引起的事故不计其数,造成重大的损失。如果有一款监测软件,从硬件处获得的图像中监测是否有火焰,从而报警&#xff0…

【动手学电机驱动】STM32-FOC(5)基于 IHM03 的无感 FOC 控制

STM32-FOC(1)STM32 电机控制的软件开发环境 STM32-FOC(2)STM32 导入和创建项目 STM32-FOC(3)STM32 三路互补 PWM 输出 STM32-FOC(4)IHM03 电机控制套件介绍 STM32-FOC(5&…

深入理解接口测试:实用指南与最佳实践5.0(一)

✨博客主页: https://blog.csdn.net/m0_63815035?typeblog 💗《博客内容》:.NET、Java.测试开发、Python、Android、Go、Node、Android前端小程序等相关领域知识 📢博客专栏: https://blog.csdn.net/m0_63815035/cat…