大流士一世 发表于 2014-4-11 19:40:21

用arduino做的线阵CCD循迹小车

CCD采集的数据很乱,不知道是不是时序的问题,就是不成功。
这是写的程序:
int CCD_Grayscale_Data={0};       
int CCD_SI =2;
int CCD_CLK=3;
int b,c;

void setup()
{
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(A4,INPUT);
Serial.begin(4800);

}
void CAI(void)
{//线阵CCD数据采集部分                     
                        CCD_SI= 1;
                        CCD_CLK = 1;
                        CCD_SI= 0;
                      int i;

                        for(i=0;i<128;i++)
                        {
                              
                              delayMicroseconds(1);
                                b=analogRead(A4);       
                              CCD_Grayscale_Data=b;       
                                CCD_CLK = 0;
                                delayMicroseconds(1);
                              Serial.println(CCD_Grayscale_Data);
                              CCD_CLK = 1;
                        }
                        delayMicroseconds(1);
                        CCD_CLK = 0;
                }



void loop() {
Serial.println("CCC");//数据采集的起点,便于在串口上观察什么时候是数据开头
CAI();
}


求大神指路。

大流士一世 发表于 2014-4-11 19:52:00

我用的CCD是线性CCD TSL1401CL 。

ljthink 发表于 2014-4-22 22:17:10

请教一下,CCD_Grayscale_Data={0} 这句话前面是定义128灰阶吧,后面的={0}是什么意思?谢谢

eddiewwm 发表于 2014-4-22 22:59:37

以下句形是不能控制輸出腳的高低變化的:
//
CCD_SI= 1;
CCD_SI= 0;
CCD_CLK = 1;
CCD_CLK = 0;
//
應用以下句形:
//
digitalWrite (CCD_SI, HIGH);
digitalWrite (CCD_SI, LOW);
digitalWrite (CCD_CLK, HIGH);
digitalWrite (CCD_CLK, LOW);
//

MILI 发表于 2014-9-13 16:23:52

本帖最后由 MILI 于 2014-9-24 09:51 编辑

没人用吗?

徐景磊 发表于 2017-4-13 13:24:15

接受的数据怎么处理啊?求大神指教

爱我所爱 发表于 2017-7-25 15:55:38

你好你这个没有写CCD的通信协议
页: [1]
查看完整版本: 用arduino做的线阵CCD循迹小车