智能车制作

标题: 大家帮忙看下摄像头标定的程序 [打印本页]

作者: fzdm_2009    时间: 2009-12-13 19:11
标题: 大家帮忙看下摄像头标定的程序
新买的摄像头要标定,用的是ECT模块检查每个上升下降沿之间的时间和消隐区行数,但中断怎么都进不去……
场同步接PK3,行同步接PT7;


#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */

#define judge_hd 10  //消隐区阀值
unsigned char p;   //AD转换结果
unsigned char pt;  //缓存AD转换结果
int hd_frt;//前消隐区行数
int pct_sum;//始至图像区行数
int hd_bhd;//总行数
int line_num;//行数计数值
int line_time1[480];//行时间
int j1;
int line_time2[480];//行消隐时间
int j2;



void init_PLL()
{
   REFDV=1;
   SYNR=1;
   while(0==CRGFLG_LOCK);
   CLKSEL=0x80;                 //32Mhz
}



void init_ECT()
{
   TSCR2=0x04;//预分频因子16,2M猴子;
   TCTL3=0xc0;//通道7上升下降沿都捕捉?
   TSCR1=0x90;//主定时器使能;
   TIE=0x80;//中断使能?
   TFLG1=0xff;

}

void init_AD()
{
ATD0CTL2=0xc0;      // 使能AD快速清除标志
ATD0CTL3=0x08;       //队列转换长度为一;
ATD0CTL4=0x81;       //八位精度,第二阶段采样时间两个周期,分频因子4;
ATD0CTL5=0xa0;       //右对齐,连续转换,八位数据,无符号型,;
ATD0DIEN=0x00;       //缓冲区禁止~~;
}
#pragma CODE_SEG __NEAR_SEG NON_BANKED   
interrupt 16 void DD_int(void)
{  
     
     if(PTT_PTT7==1)//判断上升沿
     {
        line_num++;
        line_time2[j2]=TCNT;
        j2++;
     }
     else                    //判断下降沿
     {
        line_time1[j1]=TCNT;
        j1++;
     }
    while(!ATD0STAT0_SCF);
                pt=p;
                p=ATD0DR0;
                if(p-pt>judge_hd)  hd_frt=line_num;  //判断进入视频区
                else if(pt-p>judge_hd)  pct_sum=line_num;  //判断进入场消隐区
                ATD0STAT0_SCF=1;
                TFLG1=0xff;
               
}
        
      
void main()
{
  EnableInterrupts;
  DDRK_DDRK3=0;
  line_num=0;
  j1=0;
  j2=0;
  init_PLL() ;
  init_ECT() ;
  init_AD();
  while(PORTK_PK3==1);  //统计一场
  hd_bhd=line_num;      //记录总行数
}
作者: 过去时石头    时间: 2010-5-9 21:59
兄台问题解决没?我现在也遇到这个问题了
作者: anhuipl2010    时间: 2010-6-18 21:21
哥们,你解决没有?
作者: yanglong890124    时间: 2010-11-10 08:37
2011摄像组交流群92231525,欢迎加入
作者: yanglong890124    时间: 2010-11-10 08:37
2011摄像组交流群92231525,欢迎加入




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