智能车制作

标题: 求教xs128的atd采集问题!!! [打印本页]

作者: [Dan]    时间: 2015-4-27 08:16
标题: 求教xs128的atd采集问题!!!
void INIT_ATD0_MSC(void)
{
  ATD0DIEN = 0x00;   //禁止数字输入功能;//This bit controls the digital input buffer from the analog input pin (AN x) to the digital data register.
  ATD0CTL1_SRES = 2; //A/D分辨率选择12位,且采样前不放电
  ATD0CTL2 = 0x40;   //A/D模块快速清零,禁止外部触发,禁止中断

  ATD0CTL3 =0b00010000;   //A/D转换结果右对齐,每个序列2个通道,非FIFO模式,Continue conversion

  ATD0CTL4 = 0X07;   //采样时间4个周期,PRS(Prescaler)=1
                     //fATDCLK=fBUS/(2*(PRS+1));32M情况下=2Mhz
  ATD0CTL5 = 0b00110000;   //从通道0开始多通道连续采样,同时启动A/D转换序列                  
}
关于这个atd的初始化,我就想问下,我在ATD0CTL5寄存器中设置的MULT=1,即为多通道模式,从通道0开始;我在ATD0CTL3中的转换序列为2,所以开通的ATD通道应该是0和1;但是我接入电感后它们的初始值不一样,这是我设置的问题么?在这里求指教哈,谢谢大家!!!!!


作者: [Dan]    时间: 2015-4-27 08:17
补充下:AD初始值差距很大:Q
作者: 呵呵呵看看哎    时间: 2015-4-27 18:18
void ATD0_init(void)
{
  ATD0DIEN=0x00;    //禁止数字输入
  ATD0CTL1=0x00;  //选择8位转换精度
  ATD0CTL2=0x40;  //打开CCF快速清零位,关闭外部触发输入,关闭中断
  ATD0CTL3=0xC0;  //数据右对齐,no fifo,转换序列长度为4
  ATD0CTL4=0x03;  //采样时间为4个ATD时钟周期, ATDCLK=24MHZ/(2*(11+1))=2MHZ
  ATD0CTL5=0x30;  //从通道零开始多通道连续采样,同时启动AD转换序列       
}
试试我的吧
作者: 独步独步    时间: 2015-4-27 21:03
呵呵呵看看哎 发表于 2015-4-27 18:18
void ATD0_init(void)
{
  ATD0DIEN=0x00;    //禁止数字输入

24M的时钟够吗?不是可以80M吗?还有xs128ad采集可以达到8M,2M是dg128的限制。好吧,说了这么多,大神用的是xs128吗?

作者: [Dan]    时间: 2015-4-27 21:49
。。。我不是大神,我还小:$,恩是用xs128,我感觉2M就够用了
作者: 独步独步    时间: 2015-4-28 09:23
[Dan] 发表于 2015-4-27 21:49
。。。我不是大神,我还小,恩是用xs128,我感觉2M就够用了

哦,我是摄像头组,采集摄像头8M都采集不回来,给跪了,可惜手里就模拟的





欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2