智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1771|回复: 1
打印 上一主题 下一主题

请高手看下代码!!!谢谢!!!

[复制链接]

5

主题

8

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
225
威望
183
贡献
36
兑换币
0
注册时间
2009-10-22
在线时间
3 小时
跳转到指定楼层
1#
发表于 2010-2-27 11:03:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#pragma CODE_SEG __NEAR_SEG NON_BANKED
interrupt 8 void timerch0(void)              //行中断服务程序
   {  
  DisableInterrupts;
  TFLG1_C0F=1;
     a++;                                    //每20行取一次数据
     if(a%19==0){
    counter2=0;
    a=0;
  while( PTT_PTT0==1&&counter2<40)
  {
  ccddata[counter1][counter2] = PORTB;  //采集一行图像
  if(ccddata[counter1][counter2]<25)
  ccddata[counter1][counter2]=1;
  else
  ccddata[counter1][counter2]=0;
    counter2++;
    delay();
}  
counter1++;
  }
if(counter1 ==15)                // 采集15行停止
      { flag=1;
        counter1=0;
        TIE=0;
   }
EnableInterrupts;
   }
#pragma CODE_SEG DEFAULT

#pragma CODE_SEG __NEAR_SEG NON_BANKED
interrupt 9 void timerch1(void){           //场中断服务程序
   DisableInterrupts;
   TFLG1_C1F=1;                              
     TIE=0x01;              //开行中断,关场中断
   EnableInterrupts;
}
#pragma CODE_SEG DEFAULT
采集一次后的数据0,1外还有其他数据
当用单步运行时  ,while( PTT_PTT0==1&&counter2<40)
  {
  ccddata[counter1][counter2] = PORTB;  //采集一行图像
  if(ccddata[counter1][counter2]<25)
  ccddata[counter1][counter2]=1;
  else
  ccddata[counter1][counter2]=0;
    counter2++;
    delay();
}  
  语句只运行一个循环就出来了,点都没采集到,不知道什么原因,请高手指点?????

4

主题

64

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
294
威望
241
贡献
21
兑换币
0
注册时间
2009-7-10
在线时间
16 小时
2#
发表于 2010-2-28 16:05:48 | 只看该作者
我也不知道
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2025-1-5 09:04 , Processed in 0.339745 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表