金牌会员
- 积分
- 2746
- 威望
- 1367
- 贡献
- 847
- 兑换币
- 878
- 注册时间
- 2012-11-22
- 在线时间
- 266 小时
- 毕业学校
- 三峡大学
|
//=======================图像获得===========================================
//=======================行中断================================================
#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');
}
}
串口程序有问题吗?
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|