关于AD转换连续的问题?

2019-07-23 16:57发布

在运行程序的时候,改变外部电压内部采样值不会跟着改变,一直都是第一次采样的电压值,只有restart程序之后,采样值会改变,但是也只是开始的那一次采样,请问是什么原因?贴上AD模块的程序。
  1. AdcRegs.ADCTRL1.bit.SEQ_CASC=1;  
  2.   AdcRegs.ADCTRL1.bit.ACQ_PS=1;
  3.   AdcRegs.ADCTRL1.bit.CONT_RUN=1;     
  4.   AdcRegs.ADCTRL3.bit.ADCCLKPS=0;   
  5.   AdcRegs.ADCTRL3.bit.SMODE_SEL=0;  
  6.   AdcRegs.ADCTRL1.bit.SEQ_OVRD=1;
  7.   AdcRegs.ADCCHSELSEQ1.bit.CONV00 = 0x0;
  8.   AdcRegs.ADCMAXCONV.bit.MAX_CONV1 = 0x1;

  9.   for(i=0;i<Size;i++)              
  10.    {
  11.      SampleTable[i]=0;
  12.    }
  13.   AdcRegs.ADCTRL2.all=0x2000;
  14.   for(i=0;i<Size;i++)
  15.    {
  16.      while(AdcRegs.ADCST.bit.INT_SEQ1==0){}
  17.      AdcRegs.ADCST.bit.INT_SEQ1_CLR=1;
  18.      SampleTable[i]=((AdcRegs.ADCRESULT0)>>4);
  19.          AVE=(AVE+SampleTable[i])/2;
  20.    
复制代码
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
598835484
1楼-- · 2019-07-25 08:22
mituzu 发表于 2016-1-27 22:32
转换出现中断吗

是每次都能够完成一次完整的中断,没有连续运行
598835484
2楼-- · 2019-07-25 13:01
mituzu 发表于 2016-1-27 22:32
转换出现中断吗

AD每次都能够完成一次完整的转换,没有连续运行,只能转换一次
598835484
3楼-- · 2019-07-25 16:18
smilingangel 发表于 2016-1-27 17:02
这个需要设置相关的寄存器的参数的,跟单次采样转换模式是有区别的。

continue run 已经设置
firstblood
4楼-- · 2019-07-25 19:00
 精彩回答 2  元偷偷看……
comeon201208
5楼-- · 2019-07-25 20:50
AD连续转换模式的,采用DMA的可以提高AD采集效率的
598835484
6楼-- · 2019-07-26 01:26
firstblood 发表于 2016-2-18 15:55
这个是单模采集的?还是?

只用了一个输入口,级联模式。

一周热门 更多>