智能车制作
标题:
急!!数字摄像头采集~~~~
[打印本页]
作者:
sanshiling
时间:
2009-4-3 15:23
标题:
急!!数字摄像头采集~~~~
#include <hidef.h> /* common defines and macros */
#include <MC9S12XS128.h> /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12xs128"
unsigned int counter1,counter2,i,j;
unsigned char ccddadt[20][60]; //存放图像
void Start_PLL(void) //busCLK=40M
{
REFDV=0x01;
SYNR=0x04;
asm{
BRCLR CRGFLG,#$08,*
BSET CLKSEL,#$80
}
}
void Ect_int(void) { //ECT初始化
TSCR2_PR = 0x00; //分频系数为1
TIOS = 0x00; //通道设置为捕捉
TCTL4 = 0x09; // 1通道为下沿捕捉(捕捉场信号),0通道是上沿捕捉(捕捉行信号)
TSCR1_TFFCA = 1; //快速清中断标志
TIE = 0x02; //开场中断
TSCR1_TEN = 1; //正常计时
}
void main(void)
{
DisableInterrupts;
Start_PLL(); //初始化时钟
Ect_int(); //初始化ECT
DDRB=0x00; //初始化IO口,B口为输入
PORTB=0x00;
counter1=0; //采样行计数器
counter2=0; //采样列计数器
j=0;i=1; //j场计数,i行计数
for(;;)
EnableInterrupts;
/* wait forever */
/* please make sure that you never leave this function */
}
#pragma CODE_SEG __NEAR_SEG NON_BANKED
interrupt 8 void timerch0(void){ //行中断服务程序
DisableInterrupts;
TFLG1_C0F=1;
if((i++)%10==0) { //隔十行采集
for(;counter2<60;counter2++)
ccddadt[counter1][counter2] = PORTB; //采集一行图像
counter2=0;
if(counter1 == 20) //采满二十行终止行中断
TIE_C0I=0;
else {
counter1++;
}
}
#pragma CODE_SEG __NEAR_SEG NON_BANKED
interrupt 9 void timerch1(void){ //场中断服务程序
DisableInterrupts;
TFLG1_C1F=1;
j++;
if(j==100) //采集第100场图像
TIE=0x01; //开行中断
}
采集思路:当第一百场中断信号来时,开启行中断,行中断每隔十行采集一行数据,采用循环采集模式,采满二十行(既第200行后)停止采样;
我摄像头所照景物:白色背景,中间一条黑线,用上面程序采集图像数据如下:
ccddadt[20][60]:
ccddadt[0] 16 16 16 57 78 85 86 90 84 79 20 18 19 25 23 68 78 95 84 86 ...80 16 16...
ccddadt[1] 16 16 55 68 87 84 79 83 90 19 22 24 23 22 65 78 98 85 83 ...79 16 16 16...
ccddadt[2] 16 54 68 87 85 79 92 93 20 21 17 19 23 68 87 98 87 76 ...87 16 16 16 16...
.
.
.
ccddadt[10] 87 86 98 18 20 19 17 21 76 88 78 87 87 ...78 16 16 16 ...16 76 87 86 78...
.
.
.
我是新手所采图像如上,采出的图像老是感觉在移动呢,请教各位前辈这是哪方面出了问题,?我使用的是OV6620数字摄像头
作者:
zyl
时间:
2009-4-3 19:35
BRCLR CRGFLG,#$08,*
BSET CLKSEL,#$80
请问下这两句是什么意思啊?
作者:
zyl
时间:
2009-4-3 20:04
还有想问下FODD管脚用不用有什么区别吗? 谢了~
作者:
xzw2011
时间:
2009-4-4 12:36
先下来看看
作者:
starjiajia
时间:
2009-10-17 20:48
先研究研究
作者:
hufangwu
时间:
2009-11-20 10:26
怎么没有人顶啊 请大家加我的QQ:417177320;大家一起研究数字摄像头啊
作者:
starjiajia
时间:
2009-12-22 17:50
灰度值16 应该采到消隐区了吧
作者:
红色之旅
时间:
2010-5-30 10:57
那个SCBB怎么用的 不用也可以吗?
作者:
hubei7513
时间:
2010-11-2 11:43
俺也想知道
作者:
liangliheng
时间:
2011-4-21 15:50
作者:
2009gxs
时间:
2012-4-6 23:37
zyl 发表于 2009-4-3 20:04
还有想问下FODD管脚用不用有什么区别吗? 谢了~
FODD 奇场同步
看你要怎么用了
作者:
cherry1993
时间:
2013-4-22 21:07
2009gxs 发表于 2012-4-6 23:37
FODD 奇场同步
看你要怎么用了
FODD与
VSYNC有什么区别,能不能详细讲讲?
作者:
劫色老和尚
时间:
2013-4-23 19:19
求指导啊!!!
欢迎光临 智能车制作 (http://dns.znczz.com/)
Powered by Discuz! X3.2