智能车制作

标题: CCD采集总卡在 while(!ATD0STAT0_SCF)中的问题,采集程序纯移植的,求提点 [打印本页]

作者: 敖丙    时间: 2015-4-22 08:34
标题: CCD采集总卡在 while(!ATD0STAT0_SCF)中的问题,采集程序纯移植的,求提点
移植龙邱的ccd采集测试程序,初始化采集延时函数都没有改,发现单步执行时一直卡在 while(!ATD0STAT0_SCF)跳不出来。AD初始化如下:
void INIT_AD(void)
{
  ATD0CTL1=0x40;  //12位AD
  ATD0CTL2=0x40;   //禁止外部触发, 中断禁止
  ATD0CTL3=0xa0;   //右对齐无符号,每次转换4个序列, No FIFO, Freeze模式下继续转   
  ATD0CTL4=0x01;   //765:采样时间为4个AD时钟周期,ATDClock=[BusClock*0.5]/[PRS+1]
  ATD0CTL5 = 0x30;
  ATD0DIEN=0x00;   //禁止数字输入
}
采集程序如下:void ReadADresult(void)
{
  byte i=0,tslp=0;
  TSL_CLK=1;//起始电平高
  TSL_SI=0; //起始电平低
  delay_us(1); //合理的延时

  TSL_SI=1; //上升沿
  TSL_CLK=0;//下降沿
  delay_us(1); //合理延时

  TSL_CLK=1;//上升沿       4
  TSL_SI=0; //下降沿
  delay_us(1); //合理延时      
  for(i=0;i<64;i++)
  {
    TSL_CLK=0;//下降沿   
    delay_us(8-i/8+1); //合理延时
    while(!ATD0STAT0_SCF);//等待转换结束
   // ATD0STAT0_SCF=0;
    ADV[tslp]=AD_get(0);
    ++tslp;
    TSL_CLK=1;//上升沿
    delay_us(8-i/8+1); //合理延时   
  }
  for(i=0;i<64;i++)
  {
    TSL_CLK=0;//下降沿   
    delay_us(i/8+1); //合理延时
    while(!ATD0STAT0_SCF);//等待转换结束
   // ATD0STAT0_SCF=0;
    ADV[tslp]=AD_get(0);//AD采集
    ++tslp;
    TSL_CLK=1;//上升沿
    delay_us(i/8+1); //合理延时   
  }   
}

延时程序如下:
void Dly_us(byte us)
{
  byte ii;   
   for(ii=0;ii<us;ii++)
   {
      _asm(nop);_asm(nop);_asm(nop);_asm(nop);
      _asm(nop);_asm(nop);_asm(nop);_asm(nop);
      _asm(nop);_asm(nop);_asm(nop);_asm(nop);
      _asm(nop);_asm(nop);_asm(nop);_asm(nop);
      
      _asm(nop);_asm(nop);_asm(nop);_asm(nop);
      _asm(nop);_asm(nop);_asm(nop);_asm(nop);
      _asm(nop);_asm(nop);_asm(nop);_asm(nop);
      _asm(nop);_asm(nop);_asm(nop);_asm(nop);  
  }
}

调试的时候就一直卡在while(!ATD0STAT0_SCF)中










作者: chiusir    时间: 2015-4-22 09:08
单独测试你的AD看是否正确,另外你是打算往那个单片机上面移植呢?
作者: 敖丙    时间: 2015-4-22 09:16
chiusir 发表于 2015-4-22 09:08
单独测试你的AD看是否正确,另外你是打算往那个单片机上面移植呢?

单独测试没问题,但和陀螺仪一块采集时就采集不了。

作者: 敖丙    时间: 2015-4-22 09:16
敖丙 发表于 2015-4-22 09:16
单独测试没问题,但和陀螺仪一块采集时就采集不了。

用的128


作者: 敖丙    时间: 2015-4-22 11:27
会是什么原因呢?AD寄存器设置冲突了吗?
作者: 敖丙    时间: 2015-4-23 21:14
程序语序写错了




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