CPU时钟64MHZ,ADC的时候是64MHZ,ADC的设置如下图所示,采集DMA方式来读取数值:
实际采集出来的数值波形图如下,Rank1是红线,Rank2是黄线,两个之间的数据差别有接近300左右(即使把ADC的分频系数设置成1/4系统时钟,采集的数据以下曲线也是差不多的)。
各位大侠请帮忙分析下是什么原因造成的。
file:///D:/Program%20Files/Netease/%E7%BD%91%E6%98%93%E9%97%AA%E7%94%B5%E9%82%AE/temp/Clip(07-08-11-26-24).png
file:///D:/Program%20Files/Netease/%E7%BD%91%E6%98%93%E9%97%AA%E7%94%B5%E9%82%AE/temp/Clip(07-08-11-26-24).png
1、不用dma的情况下,你看下你采样是否正确;
2、在保证第一点的情况下,再尝试用dma,dma无非就是给cpu减负的么。
以上各楼的问题,在此统一回答:
1:硬件肯定没有问题,通道2上面接一个电位器信号,电位器信号经过一个10K电阻后再经过一个470pf的电容滤波后再到CPU端口。电路上面没有开关电源电路,电源都是稳定的。
2:不采用DMA的情况下,两次连续采集,偏差也是非常大的,除非第一次和第二次之间采集间隔个几十毫秒。
一周热门 更多>