关于AD转换连续的问题?

[复制链接]
2579|21
 楼主| 598835484 发表于 2016-1-25 16:15 | 显示全部楼层 |阅读模式
在运行程序的时候,改变外部电压内部采样值不会跟着改变,一直都是第一次采样的电压值,只有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.    
FireRiver9 发表于 2016-1-25 20:55 | 显示全部楼层
采样值没有更新
小木欧尼 发表于 2016-1-25 21:28 | 显示全部楼层
配置不合理    有没有设置连续采样啊  
小木欧尼 发表于 2016-1-25 21:29 | 显示全部楼层
好像还有一种可能就是   相关外设的时钟没有使能
zhangmangui 发表于 2016-1-25 22:40 | 显示全部楼层
AD只运行一次     中断只进入一次等现象  
先看看外设的时钟情况  
时钟如果使能并配置正常   接下来检测软件触发等配置
 楼主| 598835484 发表于 2016-1-26 09:39 | 显示全部楼层
小木欧尼 发表于 2016-1-25 21:29
好像还有一种可能就是   相关外设的时钟没有使能

有设置连续采样,在初始化Adc模块的时候有使能时钟。但是还是不行啊
 楼主| 598835484 发表于 2016-1-26 09:42 | 显示全部楼层
zhangmangui 发表于 2016-1-25 22:40
AD只运行一次     中断只进入一次等现象  
先看看外设的时钟情况  
时钟如果使能并配置正常   接下来检测软 ...

外设时钟Adc25Mhz分频,使能Adc时钟,SEQ1启动转换触发为软件触发。。。
米尔豪斯 发表于 2016-1-26 22:05 | 显示全部楼层
用示波器查看一下,相关时钟是否正常
 楼主| 598835484 发表于 2016-1-27 09:17 | 显示全部楼层
米尔豪斯 发表于 2016-1-26 22:05
用示波器查看一下,相关时钟是否正常

请问要看哪些时钟?
尤彼卡 发表于 2016-1-27 12:04 | 显示全部楼层
用示波器看下外设的时钟
smilingangel 发表于 2016-1-27 17:02 | 显示全部楼层
这个需要设置相关的寄存器的参数的,跟单次采样转换模式是有区别的。
mituzu 发表于 2016-1-27 22:32 | 显示全部楼层
怎么个问题。
mituzu 发表于 2016-1-27 22:32 | 显示全部楼层
转换出现中断吗
 楼主| 598835484 发表于 2016-2-18 08:39 | 显示全部楼层
mituzu 发表于 2016-1-27 22:32
转换出现中断吗

是每次都能够完成一次完整的中断,没有连续运行
 楼主| 598835484 发表于 2016-2-18 08:39 | 显示全部楼层
mituzu 发表于 2016-1-27 22:32
转换出现中断吗

AD每次都能够完成一次完整的转换,没有连续运行,只能转换一次
 楼主| 598835484 发表于 2016-2-18 08:40 | 显示全部楼层
smilingangel 发表于 2016-1-27 17:02
这个需要设置相关的寄存器的参数的,跟单次采样转换模式是有区别的。

continue run 已经设置
firstblood 发表于 2016-2-18 15:55 | 显示全部楼层
这个是单模采集的?还是?
comeon201208 发表于 2016-2-19 15:18 | 显示全部楼层
AD连续转换模式的,采用DMA的可以提高AD采集效率的
 楼主| 598835484 发表于 2016-2-19 15:46 | 显示全部楼层
firstblood 发表于 2016-2-18 15:55
这个是单模采集的?还是?

只用了一个输入口,级联模式。
 楼主| 598835484 发表于 2016-2-19 15:46 | 显示全部楼层
comeon201208 发表于 2016-2-19 15:18
AD连续转换模式的,采用DMA的可以提高AD采集效率的

应该不是效率问题,改变电压之后采样值不变
您需要登录后才可以回帖 登录 | 注册

本版积分规则

30

主题

118

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部