智能车制作

 找回密码
 注册

扫一扫,访问微社区

12
返回列表 发新帖
楼主: 徐晋鸿!
打印 上一主题 下一主题

。。图像就是神奇的东西,,一会儿变大一会儿变小

  [复制链接]

47

主题

788

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6116
威望
3442
贡献
1406
兑换币
1753
注册时间
2012-2-3
在线时间
634 小时
毕业学校
浙江工业大学
11#
 楼主| 发表于 2012-3-29 12:32:03 | 只看该作者
luojihao24669 发表于 2012-3-27 23:56
先说你采的是什么?用视频采集卡看到的是什么东西

我是先把场消隐去除后连采60行的,,时序。。
回复 支持 反对

使用道具 举报

5

主题

315

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2729
QQ
威望
1332
贡献
539
兑换币
76
注册时间
2011-2-27
在线时间
429 小时
12#
发表于 2012-3-29 13:32:15 | 只看该作者
徐晋鸿! 发表于 2012-3-29 12:32
我是先把场消隐去除后连采60行的,,时序。。

实物!!!!!!!!!!!!!!
回复 支持 反对

使用道具 举报

47

主题

788

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6116
威望
3442
贡献
1406
兑换币
1753
注册时间
2012-2-3
在线时间
634 小时
毕业学校
浙江工业大学
13#
 楼主| 发表于 2012-3-29 22:49:08 | 只看该作者
luojihao24669 发表于 2012-3-27 23:58
估计非摄像头问题,在于你的采集,

#include"head.h"
/*其他设置*/
byte rowflag=0;  //行计数
byte pointflag=0; //列计数
volatile byte  pic[60][110];//图像储存数组
void Row_Delay_Init(void)
{
     
     TIOS_IOS3  = 1;//通道3输出比较   
   TC3=1600+TCNT;     //延时25个行
     TFLG1_C3F = 1;//清除CH3标志
     TIE_C3I    = 0;//通道3中断!使能         !!!!!!!!!!!!!!!!!!!!!!
}   
void Feild_Init(void)
{/*开场中断*/
  TIOS_IOS5=0;//5为输入捕捉
  TCTL3_EDG5B=1;  //
  TCTL3_EDG5A=0;    //设为上升沿触发
  TIE_C5I=0;          //场中断!使能
  TFLG1_C5F=1;            //中断标志清除
}
void Row_Init(void)
{/*开行中断*/
  TIOS_IOS4=0;//4为输入捕捉  
  TCTL3_EDG4B=1;  //                                                            
  TCTL3_EDG4A=0;    //设为上升沿触发
  TIE_C4I=0;          //行中断!使能
  TFLG1_C4F=1;            //中断标志清除
}
void picking_picInit()
{
  TSCR1_TEN=1 ;//计数器运行
  TSCR2 = 0b00000110;//自由计数源为PCLK=总线时钟64MHz/64分频=1Mhz
                            //禁止定时器溢出中断,计数器自由运行
  Feild_Init();
  Row_Init();
  Row_Delay_Init();
  DDRA=0x00;  //AD输入口
  TIE_C5I=1;
}
void delayrowfirst()
{
    word i;
    for(i=200;i>0;i--) ;
}
void delayrow()
{
    word i;
    for(i=6826;i>0;i--);
}
void picking_pic()
{
  
    byte i;
    for(i=0;i<110;i++)
    pic[rowflag]=PORTA;
   
    rowflag++;
}

#pragma CODE_SEG NON_BANKED
void interrupt 13 Feild_CH5_ISR(void)
{
    TFLG1_C5F=1;
   TIE_C5I=0;          //场中断!使能
   TIE_C3I    = 1;    //通道3中断使能         
}
void interrupt 12 Row_CH4_ISR(void)
{
    TFLG1_C4F=1;
    TIE_C4I=0;
    if(rowflag<60)
     {
               
        delayrowfirst();
        picking_pic() ;
      
        TIE_C4I=1;
         
    }
    else
    {   
        rowflag=0;
       // TIE_C5I=0;          //场中断使能  
        //TC3=1600+TCNT;
        sendflag=0;     
    }
}
void interrupt 11  TIM_CH3_ISR(void)
{
TFLG1_C3F = 1;//清除CH3标志
TIE_C3I    = 0;//关闭中断
TC3=  1600+TCNT;
TIE_C4I=1;          //行中断使能
}
#pragma CODE_SEG DEFAULT  //恢复到默认段DEFAULT
回复 支持 反对

使用道具 举报

5

主题

315

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2729
QQ
威望
1332
贡献
539
兑换币
76
注册时间
2011-2-27
在线时间
429 小时
14#
发表于 2012-3-29 23:36:15 | 只看该作者
你先将摄像头的焦距调好,再用数字的摄像头采集,就用你上面的程序方法采,你对着一个固定的物体,且物体的各部分很容易分辨出来。这样先看看你这种采集程序的效果。如果效果可以,你在换成CCD的,也对着那个物体。看采回的图像是物体的哪个部分。你传的两张图片,根本不知道你拍的是什么,不好判断你踩到的是不是真的有效信号。而且,CCD的ADC模块一定要做好,不然用CCD还不如用7620!你先试试,把两种方法采集到的图片发上来看看。
回复 支持 反对

使用道具 举报

68

主题

718

帖子

0

精华

跨届大侠

火云邪神

Rank: 10Rank: 10Rank: 10

积分
6644

论坛元老奖章

QQ
威望
3359
贡献
2001
兑换币
765
注册时间
2011-8-24
在线时间
642 小时
15#
发表于 2012-9-18 14:00:00 | 只看该作者
同学请注意,你用的是k60吧,应该是中断的问题,我就遇到了,我通过用示波器查看中断发生的时候,发现发送图像之后开场中断,但是场中短波还没有来,但是一旦开了中断,程序马上进入到中断了,我一直没搞清楚是怎么回事,然后我放弃了中断,改用判断跳变...悲剧啊。具体情况就是在你发送图像的同时,寄存器应该接受到了中断信号,此时中断已经关闭,在发送完图像之后开中断,这个时候寄存器已经记录了信号,直接就近去了,这是我的理解,我也希望能解决这个问题,其实你不发送图像,直接处理图像,实际的图像就不会错位,可能就是因为信号残留的原因...
回复 支持 反对

使用道具 举报

47

主题

788

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6116
威望
3442
贡献
1406
兑换币
1753
注册时间
2012-2-3
在线时间
634 小时
毕业学校
浙江工业大学
16#
 楼主| 发表于 2012-9-18 22:04:03 | 只看该作者
☆_。寒泉..+ 发表于 2012-9-18 14:00
同学请注意,你用的是k60吧,应该是中断的问题,我就遇到了,我通过用示波器查看中断发生的时候,发现发送图 ...

哥们~很感谢你的回答,,首先。。。。你发现我这沉底的帖子我表示很惊讶!。。。。next 问题已解决,你刚才说的其实是在开中断前要把标志位清楚,这样就没问题了
回复 支持 反对

使用道具 举报

42

主题

299

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4405
QQ
威望
2280
贡献
1049
兑换币
767
注册时间
2011-11-29
在线时间
538 小时
17#
发表于 2012-9-19 10:50:20 | 只看该作者
徐晋鸿! 发表于 2012-9-18 22:04
哥们~很感谢你的回答,,首先。。。。你发现我这沉底的帖子我表示很惊讶!。。。。next 问题已解决,你刚 ...

哥们,我也遇到图像有错位的情况,用的也是k60,该怎么解决呢?
回复 支持 反对

使用道具 举报

47

主题

788

帖子

1

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6116
威望
3442
贡献
1406
兑换币
1753
注册时间
2012-2-3
在线时间
634 小时
毕业学校
浙江工业大学
18#
 楼主| 发表于 2012-9-19 12:03:17 | 只看该作者
tujunjie 发表于 2012-9-19 10:50
哥们,我也遇到图像有错位的情况,用的也是k60,该怎么解决呢?

.........我用S12的
回复 支持 反对

使用道具 举报

68

主题

718

帖子

0

精华

跨届大侠

火云邪神

Rank: 10Rank: 10Rank: 10

积分
6644

论坛元老奖章

QQ
威望
3359
贡献
2001
兑换币
765
注册时间
2011-8-24
在线时间
642 小时
19#
发表于 2012-9-21 16:00:00 | 只看该作者
徐晋鸿! 发表于 2012-9-18 22:04
哥们~很感谢你的回答,,首先。。。。你发现我这沉底的帖子我表示很惊讶!。。。。next 问题已解决,你刚 ...

我的还没解决,我把中断标志位清了,结果发现,中断根本就进不来,呵呵,可能是我程序写错了
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-8 23:01 , Processed in 0.043627 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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