[STM32L4] L4系列ADC采样自带干扰怎么回事

[复制链接]
2425|12
 楼主| andiwxz 发表于 2018-4-8 10:01 | 显示全部楼层 |阅读模式
大家好:
     使用ADC采样,发现有个1us左右的干扰波形,如下图。出现的频率和采样频率设置有关系。如果关闭ADC采样就没有这个波形,接一个稳压源输出的固定电平也这样,因此认为这个是ADC自己产生的。一直不理解这个是为什么,怎么去掉。配置代码和波形图如下:

hadc1.Instance = ADC1;
  hadc1.Init.ClockPrescaler = ADC_CLOCK_ASYNC_DIV16;
  hadc1.Init.Resolution = ADC_RESOLUTION_12B;
  hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT;
  hadc1.Init.ScanConvMode = ADC_SCAN_ENABLE;
  hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV;
  hadc1.Init.LowPowerAutoWait = DISABLE;
  hadc1.Init.ContinuousConvMode = ENABLE;
  hadc1.Init.NbrOfConversion = 11;
  hadc1.Init.DiscontinuousConvMode = DISABLE;
  hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START;
  hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE;
  hadc1.Init.DMAContinuousRequests = ENABLE;
  hadc1.Init.Overrun = ADC_OVR_DATA_PRESERVED;
  hadc1.Init.OversamplingMode = DISABLE;



476ADC.jpg
蝴蝶泉2018 发表于 2018-4-8 11:16 | 显示全部楼层
那个型号?
 楼主| andiwxz 发表于 2018-4-8 12:26 | 显示全部楼层
STM32L476
airwill 发表于 2018-4-8 13:22 | 显示全部楼层
这是 ADC 采用保持电路工作引起的, 逐次比较类型的 ADC 都这样. 你的信号源的阻抗越小, 这个脉冲就越小.
其实采样时间超过这个 波形宽度越大, 那么影响越小
 楼主| andiwxz 发表于 2018-4-8 13:28 | 显示全部楼层
谢谢解答,有办法彻底规避吗?软件\硬件方法都可以,求指点
mmuuss586 发表于 2018-4-8 22:55 | 显示全部楼层
降低采样速度看看;
 楼主| andiwxz 发表于 2018-4-10 16:59 | 显示全部楼层
产品要求,采样频率已经是最慢,不能在下降了。
xuanhuanzi 发表于 2018-4-15 16:42 | 显示全部楼层
那就只能这样了,或者结果矫正。
wahahaheihei 发表于 2018-4-15 18:02 | 显示全部楼层
没办法的,你可以做隔离,比如用跟随器隔离两边。这样就不会影响到那边数据
 楼主| andiwxz 发表于 2018-4-19 08:45 | 显示全部楼层
谢谢大家,没办法了,现在只能在提高一下采样频率,然后算平均数。目前测试可以
Rospiers 发表于 2018-4-21 12:36 | 显示全部楼层
试试降低采样速度
邻家你姐夫 发表于 2018-7-21 15:07 | 显示全部楼层
您好!您贴出来的波形是adc采集的波形吗?
邻家你姐夫 发表于 2018-7-21 15:10 | 显示全部楼层
最近在测试STM32L476,用片上ADC以5Msps的采样速度对200khz的正弦波连续采样20000个点,将采样点通过串口传出,利用matlab画出来,未发现像楼主所说的脉冲干扰。有可能以后要用这款stm32做东西,想查一下这是什么问题以提前预防。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

166

主题

258

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部