274|1

60

帖子

0

资源

一粒金砂(中级)

【GD32E503评测】mig29_Step2 实测 DAC 和 ADC 的物理特性 [复制链接]

本帖最后由 mig29 于 2021-1-29 20:13 编辑

因为公司有7位半的表,一直想实测 MCU内部的ADC和DAC的物理特性(精度、线性)。

这块GD32E503板子上贴心地安排了一个 JP4 跳线,只要接通,就可以把DAC输出当ADC输入了,非常方便。
不过实操下来,发现光有表还不行,还得有个程控的高分辨率电压发生器,以及能用程序读出7位半的读数才能自动化测试,这次就先粗略人工测一下。

IMG_20210128_160622.jpg

方法:
把附件里的 main.c 覆盖 07_ADC_Temperature_Vrefint 这个工程里的 main.c,

把 JP4 接通( JP4 on = DAC0 <---> ADC_In2 ),

另外, VR1 <---> ADC_In1 (from 0mV ),可以直接测量。在PC上用串口工具可以获得测量读数。


软件修改点:
1. 以 07_ADC_Temperature_Vrefint 为base,将原测温度修改为测 ADC_In1(VR1), 原测 Vref的改为测 ADC_In2(DAC0 输出)
2. DAC部分,从 11_DAC_Output_Voltage_Value 这里移植,主要是将不自然的“左对齐”改成“右对齐”。

 

实测情况:
1. DAC从0-4095输出,再用ADC回读。记录结果见附件里的两个文本文件。
 结论:
(1) DAC‘零飘’有大约 7mV (也就是 DAC输出0-12时,实际输出电压都是 7mV 左右), 

(2)DAC 输出满刻度这端,没有测。
(3) ADC 的‘死区’电压大约有 2.3mV.

2. 粗略看,这些12位无脑当成10位用,精度和线性都是足够准的。

3. 要想做高精度实测,需要重新打板。因为发现 MCU 四周的 Vcc/Gnd 电压有 2mV 左右的差异,而ADC测量的参考地用的是 DAC这里的,继续测试没有意义。

4. DAC的“零飘”和ADC的“死区”都是客观存在的,在高精度场景时如何在量产时消除其影响,需要大家群策群力思考。

 

【GD32E503评测】mig29_Step2 实测 DAC 和 ADC 的物理特性.rar (151.04 KB, 下载次数: 1)


回复

1037

帖子

3

资源

纯净的硅(中级)

本帖最后由 hujj 于 2021-1-30 17:51 编辑

    请教楼主,我尝试了多次都没有成功地启用板上的ADC测试,按照电路图,板上的ADC应该是接PA1和PA2,可以示例代码中却是PC2和PC3,我将GPIO配置修改为PA1和PA2,将ADC通道配置修改为1和2,但获得的数据不随可调电阻调整而变化的,请问该如何启用板上的ADC?

 

    经过反复测试,已经成功启用了PA1的PA2引脚作为ADC通道1和通道2使用,问题已经解决,谢谢!


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

最新文章 更多>>
    关闭
    站长推荐上一条 1/6 下一条

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

    电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表