我用的是2812的开发板,但是使用DSP内部的AD采集数据时,用的是自带的例程AdcSoc,采集的是电源直接产生的一个恒定电压2V,采集到的数据会发生较大波动(直接观察Voltage,有大概四五十的波动),而且会出有一段为0,宽度不一定。而且运行时DSP的四个角中的一个会比较烫一点。所以我现在不确定是不是硬件出问题导致的。
比较急,谢谢了。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我用的是2812的开发板,但是使用DSP内部的AD采集数据时,用的是自带的例程AdcSoc,采集的是电源直接产生的一个恒定电压2V,采集到的数据会发生较大波动(直接观察Voltage,有大概四五十的波动),而且会出有一段为0,宽度不一定。而且运行时DSP的四个角中的一个会比较烫一点。所以我现在不确定是不是硬件出问题导致的。
比较急,谢谢了。
上面已经提到,以采集到的ADCResult寄存器的值(原始值)为标准,对应于0电压的值如果有偏移,软件上可以减掉实现补偿。
具体的请参考DATASHEET中的规格以及ADC校准的应用文档 TMS320280x and TMS3202801x ADC Calibration.
谢谢你。
但是现在电压为0时输入的电压是这种紊乱的波形,并不是一个恒定的偏移,无法实现补偿啊。而且现在采集进来的数据一直有像我传的图2中的间断。不知道什么原因。
这没有什么关系的,你只需要将采到的值传给一个变量,通过补偿函数的调用,实现动态的补偿即可。
补充:
1、F281x系列的ADC本身精度就不是非常高,所以建议直接使用最新的产品,包括Piccolo和Delfino系列;
2、在这个论坛上,之前有多篇讨论关于F281x和F2833x等ADC问题,以及误差和补偿的帖子,建议你可以搜索出来参考一下。
10号说得对!
对于F281x来说,常用的一种校正的方式是拿两路ADC通道出来,接两路板子上已有的高精度的电压信号,然后每次采样的时候都多采这两路信号,通过实时计算,消除零漂和增益偏差。下面有个文档是介绍这种方法的。
www.ti.com/.../litabsmultiplefilelist.tsp
不过,您采样的误差确实太大了。建议按照10号说的去检查系统硬件。而且怀疑您板子工作有问题,所以从硬件查吧