跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
折叠
品牌标识

YunTu Forum

YTMicro.com
  1. 主页
  2. Blogs
  3. ADC采样漂移或不准问题排查方法

ADC采样漂移或不准问题排查方法

已定时 已固定 已锁定 已移动 Blogs
2 帖子 2 发布者 829 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • ganyongchaoG 离线
    ganyongchaoG 离线
    ganyongchao
    写于 最后由 编辑
    #1

    ADC采样漂移或不准问题排查方法

    ADC采集是每个项目都需要用到的功能,很多项目应用因为一些条件不当造成类似采集不准、数据漂移等现象的结果,本文以YTM32B1ME05芯片举例说明通用分析方法。

    硬件排查

    采样电路排查

    硬件设计上需要重点关注ADC采集外部引脚上电容匹配,很多用户硬件设计上没注意如下电容匹配条件,这个一定会影响ADC采集,这个参数查询确认具体参考每个芯片的DS中ADC Characteristics章节,如下图所示:
    3a6b0542-047c-4729-91d7-d62259695157-image.png

    VREF电压排查

    按照硬件设计指南,在保证VDD、VDDA、VREF等正确设计的情况下,ADC采集不受影响。
    万一出现无法确定的情况,测量VDDA、VREF等工作电压辅助判断。

    软件排查

    配置排查

    ADC有个采样率的重要指标:

    1. MD/ME芯片ADC采样率 <= 2M;
    2. LE/MC芯片ADC采样率 <= 1M;
      采样率一般在RM的ADC章节的Features篇:
    • YTM32B1ME0芯片的采样率描述如下
      3f3d6972-8a86-4448-a1fc-26eca4a9838d-image.png
    • YTM32B1LE0芯片的采样率描述如下
      fbaea76c-a932-4f82-ad7f-949626d15c2e-image.png
      采样率影响的因素有:
      1.ADC clock
      2.ADC sample resulution
      3.ADC SMP time
      以ME系列举例说明采样率计算和配置检查:
      e3e89e90-9339-4ab6-9889-aff461cd4f1e-image.png
      采样率 = AdcClk / (2 + SMP + RES)
      其中:
      1.AdcClk:功能时钟经IPC分频后经Adc再分频后时钟
      2.SMP:采样时钟数,SMP寄存器
      3.RES:采样精度,12bit精度则对应12个采样时钟
      举例:配置YTM32B1ME0 2M采样率
      1.ADC IPC功能时钟选择FIRC(96M),IPC配置3分频(得到32M)
      2.ADC内部分频PreDiv配置0为1分频(得到AdcClk为32M)
      3.SMP配置为2
      4.RES配置为12
      ✋ 配置要求:
      1.AdcClk <= 32M (MD/ME)
      2.AdcClk <= 16M (LE/MC)
      3.采样率 <= 2M(MD/ME)
      4.采样率 <= 1M(LE/MC)
      5.在保障数据稳定的前提下,可以适当增大SMP降低采样率。

    用法排查

    1.ADC不论是软件触发和硬件触发,保持正常工作模式和触发时序,一般都能正常工作。
    2.ADC一旦启动会自发运行,用户在debug过程中监测ResultBuf[]即可,不能打断点看结果,这种调试方式会导致ADC自发运行得到的结果和调试器监测的结果不同步,最终导致ADC OVERRUN等故障状态。
    3.ADC采集debug过程中,在监测窗口不要去观测ADC FIFO等寄存器,观测行为等同于ADC_DRV_ReadFIFO()驱动,会影响FIFO队列和结果错位。
    4.ADC多通道采集需要切换通道的,MCAL方式支持多Group机制,SDK方式如果两次切换Group时间间隙小,可以参考如下加Adc_Reset()操作:

    Adc_Reset()
    Adc_Config(&config_1)
    Adc_Start()
    ......
    Adc_Reset()
    Adc_Config(&config_2)
    Adc_Start()
    

    5.ADC采集的结果只跟ADC采集管脚对应的万用表测量电压对应,不考虑分压或者反算、补偿等误差带来的干扰分析。

    其他排查

    以上是一些常见的通用问题排查,结合应用如果都排查完了还不好定位,请联系原厂技术支持。

    1 条回复 最后回复
    4
    • DigaD Diga 在 中 引用了 这个主题
    • DigaD Diga 在 中 引用了 这个主题
    • J 离线
      J 离线
      JMHL
      写于 最后由 编辑
      #2
      此主題已被删除!
      1 条回复 最后回复
      0
      • yt0069Y yt0069 在 中 引用了 这个主题

    • 云途论坛规则/Yuntu Forum Rules

      发帖前请查看

    • YCT离线License申请流程

      帮助没办法联网的电脑使用YCT

    • YT CONFIG TOOL调查问卷

      帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...

    • demo
      12
      can
      8
      lin stack
      6
      yt-link
      5
      vscode
      3
      adc模块
      2
      i2c
      2
      uuid
      2
      Online Users
      • 登录

      • 登录或注册以进行搜索。
      • 第一个帖子
        最后一个帖子
      0
      • 版块
      • 最新
      • 标签
      • 热门