智能车制作

标题: CCD图像采集 [打印本页]

作者: 敖丙    时间: 2015-4-24 20:56
标题: CCD图像采集
采集图像采集几帧就采集不了不能连续采集,什么情况?
[attach]76534[/attach]

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

void INIT_AD_one(void)
{
  ATD0CTL1=0x20;   //10位AD
  ATD0CTL2=0xc0;   //禁止外部触发, 中断禁止
  ATD0CTL3=0x88;   //右对齐无符号,每次转换1个序列, No FIFO, Freeze模式下继续转   
  ATD0CTL4=0x09;   //765:采样时间为4个AD时钟周期,ATDClock=[BusClock*0.5]/[PRS+1]
  ATD0DIEN=0x00;   //禁止数字输入

}


/*************************************************************/
/*                        起动AD转换 (单通道单次转换)        */
/*************************************************************/
int AD_get(unsigned char s) //单通道扫描转换
{
int AD_data;
switch(s)
{
  case 0:    //读取CCD数据,10位精度
    ATD0CTL5=0x20;
    while(!ATD0STAT0_SCF);
    AD_data = ATD0DR0;
    break;


作者: 飞思卡尔.呆萌    时间: 2015-4-25 10:23
程序问题,你试试打开串口调试助手,看看发送数据是不是也是运行一会就停止不发了;如果是就说明是串口发送的问题,如果不是就是采图函数的问题
作者: Me-煊    时间: 2015-4-25 23:16
用蓝宙官方给的测试程序先测试一下
作者: Christ8756    时间: 2015-5-18 15:49
希望能发一下调试助手的程序
作者: 原电池xin    时间: 2015-5-19 15:45
在线调试,看看卡在哪里了




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