智能车制作
标题:
采集回来的图像成这样了,好累啊,怎么办
[打印本页]
作者:
jimmy0087
时间:
2013-4-8 16:51
标题:
采集回来的图像成这样了,好累啊,怎么办
//=======================图像获得===========================================
//=======================行中断================================================
#pragma CODE_SEG __NEAR_SEG NON_BANKED
void interrupt 8 RowInterrupt(void)
{
unsigned int PICKLINE[33]={32,36,40,44,48,52,56,60,
64,68,72,76,80,84,88,92,
96,100,104,108,112,116,122,126,
130,134,138,142,146,150,154,158,
162};
register char i;
TFLG1_C0F=1; //行中断可用
if(ENLINE==1) //如果 行场中断均可用 二值化完成
{
if(COUNT==PICKLINE[H_WRITE]) //如果COUNTER为可取的行数
{
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP; //延时
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP; //延时
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP; //延时
for(L_WRITE=0;L_WRITE<LINE;L_WRITE++)
{
FIRSTBUFF[H_WRITE][L_WRITE]=PORTA; //读取PA的灰度值
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;
_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP;_asm NOP; //取第下一个点时中间的延时
}
H_WRITE++; //行数加1
}
COUNT++; //记录中断扫描行的变量+1
}
}
/******************************场中断*****************************************/
#pragma CODE_SEG __NEAR_SEG NON_BANKED
void interrupt 11 LineInterrupt(void)
{
TFLG1_C3F=1; //场中断可用
if(ENSCENE==1) //如果场中断可用
{
ENLINE=1; //行中断使能
COUNT=0; //中断扫描行置0
H_WRITE=0; //BUFF的行置0
ENSCENE=0; //BUFF的行置0
}
}
求大神指导,采集程序应该没错啊
void SCI_putchar(char ch)
{
while(!(SCI0SR1&0X80)); //检查发送寄存器空标志TDRE
while(!(SCI0SR1&0X40)); //检查发送完成标志TC
//=0正在发送 =1没有发送
SCI0DRL=ch;
}
void Process()
{
unsigned char i,j;
SCI_putchar(0xff);
for(i=0;i<ROW;i++)
{
for(j=0;j<LINE;j++)
{
//if(BUFF[i][j]==0||j== Line_Center[i])
SCI_putchar(FIRSTBUFF[i][j]) ;
}
SCI_putchar('\r');
SCI_putchar('\n');
}
}
串口程序有问题吗?
作者:
gaolou1991
时间:
2013-4-8 17:13
1:你的上位机的参数是不是设置错了?
2:在发送数据的时候尽量把中断关上。
3:中断程序写完不是还要加上“
#pragma CODE_SEG DEFAULT”的吗?
作者:
jimmy0087
时间:
2013-4-8 17:22
gaolou1991 发表于 2013-4-8 17:13
1:你的上位机的参数是不是设置错了?
2:在发送数据的时候尽量把中断关上。
3:中断程序写完不是还要加上 ...
还是不行,上位机直接选的灰度图像显示,我在code上查我的数组变量,数据时没问题的,我怀疑是不是串口发送数据的有问题
作者:
gaolou1991
时间:
2013-4-9 11:04
摄像头的数据线有没有接反??
欢迎光临 智能车制作 (http://111.231.132.190/)
Powered by Discuz! X3.2