打印
[应用相关]

STM32 不同AD口之间的电压串扰如何降低?

[复制链接]
2479|27
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
GZZXB|  楼主 | 2020-6-11 14:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    通道1 接2.5信号输入, 通道2是一个传感器信号输入(1v左右)。
单独测试通道2时电压信号是一个稳定的值,轮询通道1和通道2时,通道2会被通道1拉高。
我们知道当切换到通道1时,2.5v就接入了ad转换模块。当开始执行ad时通道是断开的,模块是对采保电容采样量化。
我在切换通道2后做3ms的延时,这个时间应该足以让采保电容放电了。 当时发现还是会被通道1拉高。
这个现象如何处理?

使用特权

评论回复
沙发
LcwSwust| | 2020-6-11 14:08 | 只看该作者
通道2多测一次或两次呢

使用特权

评论回复
板凳
GZZXB|  楼主 | 2020-6-11 14:36 | 只看该作者
LcwSwust 发表于 2020-6-11 14:08
通道2多测一次或两次呢

用示波器观察,不加入通道1和加入通道1时  通道2的波形不一致。

使用特权

评论回复
地板
香水城| | 2020-6-11 22:13 | 只看该作者
目前采样时间多少?适当加长点采样时间比较下。

还有,外部输入阻抗是否超过手册规定值。

使用特权

评论回复
5
cdlongbo| | 2020-6-12 10:22 | 只看该作者
1.采集12次去掉最高与最低在平均
2.ADC输入增加电容0.001~1u 看情况

使用特权

评论回复
6
william008| | 2020-6-12 12:44 | 只看该作者
切到通道2之前,先切到通道3。通道3短路到地

使用特权

评论回复
7
zlutian| | 2020-6-13 22:31 | 只看该作者
我也试过,通道之间AD值确实有串扰问题,解决方案是采样时间加长。

使用特权

评论回复
8
BH7KQK| | 2020-6-14 10:40 | 只看该作者
此题无解的,请用外置ADC芯片,就连内部温度传感器也会被干扰。哪怕是不同一个通道、不同的ADC。
它让我对STM32的ADC彻底失望。用的是STM32F407

使用特权

评论回复
9
香水城| | 2020-6-14 15:24 | 只看该作者
BH7KQK 发表于 2020-6-14 10:40
此题无解的,请用外置ADC芯片,就连内部温度传感器也会被干扰。哪怕是不同一个通道、不同的ADC。
它让我对S ...

你说的太夸张了。

STM32 ADC模块我这边也常用,并没有什么不好用啊。

对于ADC应用,注意电源尤其VDDA的稳定,配置合适的采样时间。注意输入阻抗不要超过芯片规定值,启用前注意开启校准功能或等待其稳定。

使用特权

评论回复
10
nstel| | 2020-6-14 18:17 | 只看该作者
william008 发表于 2020-6-12 12:44
切到通道2之前,先切到通道3。通道3短路到地

这个方法应该有效。我也碰到过这类问题。只是没有试过。

使用特权

评论回复
11
BH7KQK| | 2020-6-16 17:13 | 只看该作者
香水城 发表于 2020-6-14 15:24
你说的太夸张了。

STM32 ADC模块我这边也常用,并没有什么不好用啊。

你说的输入阻抗这一点倒是有可能。。

使用特权

评论回复
12
GZZXB|  楼主 | 2020-6-19 15:52 | 只看该作者
香水城 发表于 2020-6-11 22:13
目前采样时间多少?适当加长点采样时间比较下。

还有,外部输入阻抗是否超过手册规定值。 ...

   信号通过串一个1k电阻到ad口,ad口并一个电容104到地。 输入阻抗应该没有问题吧?  而且就算输入阻抗过大,STM32没记错的话最大不能大于50k。 那应该也只是测的不准而已,怎么会互相干扰呢?

使用特权

评论回复
13
lhkjg| | 2020-6-19 16:01 | 只看该作者
我知道PIC单片机也有这个问题,ST的AD说真的一直没有用过,难道也有这个问题?

使用特权

评论回复
14
GZZXB|  楼主 | 2020-6-19 16:56 | 只看该作者
lhkjg 发表于 2020-6-19 16:01
我知道PIC单片机也有这个问题,ST的AD说真的一直没有用过,难道也有这个问题? ...

都是SAR 类型的ADC,应该差不多。 我以前用PIC感觉还蛮好的啊。
我认为这个应该是内部采保电容在做怪,但是经过几ms的切换等待后,应该什么电压都放光光了啊。

使用特权

评论回复
15
lvyunzeng| | 2020-6-19 17:28 | 只看该作者
是一个典型的前端模拟器件阻抗与内部ADC不匹配的问题。从新考虑模拟电路设计,详细了解单片机内部ADC的原理,逐次比较型还是什么类型的ADC。

使用特权

评论回复
16
GZZXB|  楼主 | 2020-6-19 17:44 | 只看该作者
lvyunzeng 发表于 2020-6-19 17:28
是一个典型的前端模拟器件阻抗与内部ADC不匹配的问题。从新考虑模拟电路设计,详细了解单片机内部ADC的原理 ...

已经说明是SAR类型
你是如何得出 :  是一个典型的前端模拟器件阻抗与内部ADC不匹配的问题的?
阻抗过高无非就是采保电容充电不能真实逼近信号源而已, ST文档中举例说明当信号源内阻过高时例如150k,口线上加个154也就足够了。那还是在采保电容有机会充电到4095的前提下。

我提的问题核心是串扰,并不是准确度
比如我的信号是稳定的1v,ad得出的结果是0.9V. 也没有问题啊,我只是相对测量.  

使用特权

评论回复
评论
lvyunzeng 2020-6-20 15:00 回复TA
你说的对 
17
香水城| | 2020-6-19 20:04 | 只看该作者
GZZXB 发表于 2020-6-19 15:52
信号通过串一个1k电阻到ad口,ad口并一个电容104到地。 输入阻抗应该没有问题吧?  而且就算输入阻抗过 ...

其实对你说的通道干扰我也觉得非常费解,除非软件处理上或硬件线路本身有问题.

而且所谓的通道干扰很可能是因为误会而杜撰出来的.

使用特权

评论回复
18
GZZXB|  楼主 | 2020-6-19 21:00 | 只看该作者
香水城 发表于 2020-6-19 20:04
其实对你说的通道干扰我也觉得非常费解,除非软件处理上或硬件线路本身有问题.

而且所谓的通道干扰很可能 ...

  相信很多坛友都会遇到类似的情况,采集某个ad时信号是一个状态,当加入几个一起采集时信号变大或变小了。这可能就是大家想当然认为是ad口串扰吧。

使用特权

评论回复
19
GZZXB|  楼主 | 2020-6-19 21:03 | 只看该作者
香水城 发表于 2020-6-19 20:04
其实对你说的通道干扰我也觉得非常费解,除非软件处理上或硬件线路本身有问题.

而且所谓的通道干扰很可能 ...

   我还真没想到你说的,除非软件处理上或硬件线路本身有问题.  软件处理上能让外部电压变化吗? 软件能做的无非就是控制采保电容的充电时间,及真正量化ad时采保电容的泄露时间吧

使用特权

评论回复
20
香水城| | 2020-6-20 22:59 | 只看该作者
本帖最后由 香水城 于 2020-6-21 07:40 编辑

你觉得通道间的串扰,正常情况下 那加长通道间的延时以及加长采用时间应是可以消除的。
或者说,退一步讲,结合到你的具体应用 我用2个ADC模块还会有串扰吗?

按照你的现有的逻辑,如果对两个信号使用同一ADC,一个接地、一个VDD,那是不是该产生你
所说的串扰呢? 事实上 只要配置得当。不论哪个系列并没碰到。

还有,你目前使用的芯片是什么?

你将你的外部采样电路贴出来。

你两个待测信号是什么特征,是相对稳定的电压信号还是 周期性波形,若是周期性,频率大概多少?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

96

主题

331

帖子

10

粉丝