智能车制作

标题: 新手求助!!大神们CCD的图像只有一半是怎么回事儿啊? [打印本页]

作者: 一夜尘埃う    时间: 2014-1-29 15:13
标题: 新手求助!!大神们CCD的图像只有一半是怎么回事儿啊?
程序是照着蓝宙的写的是哪里弄错了吗?

void delay_200ns()
{
         for(delay200ns=0;delay200ns<4;delay200ns++);
}

//***********SI=1*******//
// void SI_HIGH()
// {
//         GPIO_SetBits(PTC,GPIO_Pin_11); //PC16置高
// }
// //**********CLK=1********//
// void CLK_HIGH()
// {
//         GPIO_SetBits(PTC,GPIO_Pin_10); //PC14置高
// }
// //***********SI=0*******//
// void SI_DOWN()
// {
//         GPIO_ResetBits(PTC,GPIO_Pin_11); //PC16置低
// }
// //**********CLK=0********//
// void CLK_DOWN()
// {
//         GPIO_ResetBits(PTC,GPIO_Pin_10); //PC14置低
// }


//********CCD初始化程序***************//
void CCD_init()
{
        ADC_InitTypeDef ADC_InitStruct_AO;
        GPIO_InitTypeDef GPIO_InitStruct_SI_CLK;
        //SI端口初始化
       
        GPIO_InitStruct_SI_CLK.GPIOx = PTC;//PORTC
        GPIO_InitStruct_SI_CLK.GPIO_InitState = Bit_SET;//初始化后为高
        GPIO_InitStruct_SI_CLK.GPIO_IRQMode = GPIO_IT_DISABLE;//不使能中断
        GPIO_InitStruct_SI_CLK.GPIO_Pin = GPIO_Pin_11;//16号引脚--暂定
        GPIO_InitStruct_SI_CLK.GPIO_Mode = GPIO_Mode_OPP;//推挽输出
        GPIO_Init(&GPIO_InitStruct_SI_CLK);
        //CLK端口初始化
        GPIO_InitStruct_SI_CLK.GPIOx = PTC;//PORTC
        GPIO_InitStruct_SI_CLK.GPIO_InitState = Bit_SET;//初始化后为高
        GPIO_InitStruct_SI_CLK.GPIO_IRQMode = GPIO_IT_DISABLE;//不使能中断
        GPIO_InitStruct_SI_CLK.GPIO_Pin = GPIO_Pin_10;//16号引脚--暂定
        GPIO_InitStruct_SI_CLK.GPIO_Mode = GPIO_Mode_OPP;//推挽输出
        GPIO_Init(&GPIO_InitStruct_SI_CLK);
        //AO端口初始化
       
        ADC_InitStruct_AO.ADCxMap=ADC0_SE14_PC0;//ADC0-PTC0
        ADC_InitStruct_AO.ADC_Precision=ADC_PRECISION_8BIT;//8BIT
        ADC_InitStruct_AO.ADC_TriggerSelect=ADC_TRIGGER_SW;//软件触发
        ADC_Init(&ADC_InitStruct_AO);
}
//********CCD启动程序1--用于曝光*********//
void CCD_start1()//用于曝光-----------------
{
        unsigned char i;
        SI_HIGH();                                //SI=1
        delay_200ns();
        CLK_HIGH();                                //CLK=1
        delay_200ns();
        SI_DOWN();        //SI=0
        delay_200ns();
        CLK_DOWN();                                //CLK=0
        for(i=0;i<127;i++)
        {
                delay_200ns();
                delay_200ns();
          CLK_HIGH();                                //CLK=1
                delay_200ns();
                delay_200ns();
                CLK_DOWN();                                //CLK=0
        }
        delay_200ns();
        delay_200ns();
        CLK_HIGH();                                //CLK=1
        delay_200ns();
        delay_200ns();
        CLK_DOWN();                                //CLK=0
}



unsigned char CCD_Value;
//********CCD启动程序2--用于采集*********//
void CCD_start2(unsigned char * ImageData)
{
        unsigned char i;
        //SI信号---------------
        SI_HIGH();                                //SI=1
        delay_200ns();
        CLK_HIGH();                                //CLK=1
        delay_200ns();
        SI_DOWN();        //SI=0
        delay_200ns();
        //----------------------
  //Delay 10us for sample the first pixel
  /**/
        for(i=0;i<250;i++)////更改250,让CCD的图像看上去比较平滑,
        {
                delay_200ns();
}
       
        //Sampling Pixel 1
        *ImageData =ADC_GetConversionValue(ADC0_SE14_PC0);//采集第一个像素
  ImageData++;
        CLK_DOWN();                                //CLK=0
        for(i=1;i<=127;i++)
        {
                delay_200ns();
                delay_200ns();
                CLK_HIGH();                                //CLK=1
                delay_200ns();
                delay_200ns();
                //2~128
        *ImageData =ADC_GetConversionValue(ADC0_SE14_PC0);//采集第一个像素
  ImageData++;
          CLK_DOWN();                                //CLK=0
                delay_200ns();
                delay_200ns();
                CLK_HIGH();                                //CLK=1
                delay_200ns();
                delay_200ns();
                CLK_DOWN();                                //CLK=0               
        }
}

作者: 一夜尘埃う    时间: 2014-1-29 18:20
已经解决了- -,原来是程序问题
作者: 我们一起走过    时间: 2014-1-30 00:13
你那图像为撒那么低了,二值化过吗




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