关于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-26 06:06
comeon201208 发表于 2016-2-19 15:18
AD连续转换模式的,采用DMA的可以提高AD采集效率的

应该不是效率问题,改变电压之后采样值不变

一周热门 更多>