智能车制作

标题: 关于摄像头的像素时钟触发DMA采集的问题 [打印本页]

作者: M16贯穿伤    时间: 2015-1-8 13:00
标题: 关于摄像头的像素时钟触发DMA采集的问题
之前的方案是DMA采用always模式,采集图像很快,但是噪点偏多;之后改用PCLK像素时钟触发DMA采集,但是PCLK频率太高了,而且也不必采集每个点,后来相对PCLK做分频处理后再来触发DMA的采集。有人说可以修改摄像头寄存器,来分频,但这样也会降低行信号和场信号的频率,其实质并不是对PCLK的分频,而只是一个降频。最后想到了用外部硬件来对PCLK分频。 (用的蓝宙的捕食者摄像头)那么大家对于外部硬件的选择有什么建议没?或者还有什么更好的摄像头采集方案没?


作者: M16贯穿伤    时间: 2015-1-8 13:01
欢迎大家一起探讨,共同进步哈
作者: 六步上篮    时间: 2015-1-8 13:14
用D触发器对像素中断分频处理,2分频或者4分频都可以
作者: hghgsdsd    时间: 2015-1-8 13:53
外接一个晶振,2M的晶振一行采集104个点,不影响行场中断,品质也没有下降
作者: M16贯穿伤    时间: 2015-1-8 14:01
六步上篮 发表于 2015-1-8 13:14
用D触发器对像素中断分频处理,2分频或者4分频都可以

嗯嗯,之前也在论坛上看到过用D触发器,能具体说一下吗?或者分享一下电路图,谢谢了
作者: M16贯穿伤    时间: 2015-1-8 14:17
hghgsdsd 发表于 2015-1-8 13:53
外接一个晶振,2M的晶振一行采集104个点,不影响行场中断,品质也没有下降

外接晶振?能否具体说一下怎么做?只是之前看过有将摄像头使用的晶振换为低频晶振,但在智能车上感觉不可取,因为那样也会降低行信号和场信号的频率。真心求教!!!

作者: 六步上篮    时间: 2015-1-8 15:47
M16贯穿伤 发表于 2015-1-8 14:01
嗯嗯,之前也在论坛上看到过用D触发器,能具体说一下吗?或者分享一下电路图,谢谢了

额  这个搜一下D触发器的用法就会用了啊,而且我是做软件的,我这里没有电路图额  只是知道这么个原理

作者: hghgsdsd    时间: 2015-1-8 15:56
M16贯穿伤 发表于 2015-1-8 14:17
外接晶振?能否具体说一下怎么做?只是之前看过有将摄像头使用的晶振换为低频晶振,但在智能车上感觉不可 ...

不需要动摄像头的晶振。你可以看一下数据手册里DMA的触发方式,有一种就是用外部PWM触发的,具体操作方式就是,当行中断来临时开启DMA开关,每一个PWM的上升沿或者下降沿触发一次采点,采集够一定数量的点后再关闭DMA开关,所以PWM的频率控制采点的个数。这种方法的代码论坛里有过。你可以先不用外接晶振,先把K60的PWM输出引脚连到DMA的触发引脚上,代码测试成功之后再把晶振连到DMA触发引脚上就行了。

作者: M16贯穿伤    时间: 2015-1-8 16:06
hghgsdsd 发表于 2015-1-8 15:56
不需要动摄像头的晶振。你可以看一下数据手册里DMA的触发方式,有一种就是用外部PWM触发的,具体操作方式 ...

好的,就是自己设计PCLK信号吧,只是频率降低了。不过这可能涉及到一个信号同步的问题。非常感谢

作者: M16贯穿伤    时间: 2015-1-8 16:07
六步上篮 发表于 2015-1-8 15:47
额  这个搜一下D触发器的用法就会用了啊,而且我是做软件的,我这里没有电路图额  只是知道这么个原理

好的,我再去找一下资料

作者: 六步上篮    时间: 2015-1-8 16:59
M16贯穿伤 发表于 2015-1-8 16:07
好的,我再去找一下资料

嗯  搜下D触发器的用法就行了  那个据说很简单

作者: aytc100    时间: 2015-1-8 17:53
用D触发器靠谱。其他方案可能涉及时钟同步问题,会采到错误的信号(噪点)
作者: freescaler    时间: 2015-1-9 01:08
呵呵,这个问题确实是图像的比较头痛的问题,我我们去年也是遇见这个问题,后来经过好长时间才解决的,解决方案:1.超频,稳定的前提下尽量超频;
   2: 换摄像头,比如我有外部硬件处理的摄像头,就可以做到速度很快,而且不占用cpu资源。
3;关于DMA,就是行中断来了使能DMA,开DMA传输通道,pclk的上升沿触发dma传输,并设置一次dma传输的此处和行数一样,这样一行图像就传输完成了,依次类推可以采集一副图像。
4:噪点问题就很正常了,因为cpu处理的事情多,只要图像时正确的,就很好了。我之前用opencv去分析图像,可以很方便的解决图像问题。
5:各种中断的优先级设置很重要。
6;程序的流程也很关键,值得好好优化哦。
7;更多核心问题请加QQ: 298846601。

作者: Quixote    时间: 2015-1-9 15:48
本帖最后由 Quixote 于 2015-1-9 15:51 编辑

多高的频率?我13.3MHz无压力。现在180一行。一行以后300
作者: M16贯穿伤    时间: 2015-1-9 15:58
Quixote 发表于 2015-1-9 15:48
多高的频率?我13.3MHz无压力。现在180一行。一行以后300

27MHz,图像也是能采集的,但感觉不太靠谱,现在用74ls161四分频处理后,再给单片机

作者: Quixote    时间: 2015-1-9 16:18
M16贯穿伤 发表于 2015-1-9 15:58
27MHz,图像也是能采集的,但感觉不太靠谱,现在用74ls161四分频处理后,再给单片机

能用就行

作者: M16贯穿伤    时间: 2015-1-10 00:47
这是我利用74LS161四分频后的PCLK信号,不知道能不能给单片机使用了
作者: miaobrother    时间: 2015-11-28 11:24
没有像素时钟的模拟摄像头 怎么用DMA 求指导

作者: my智能车    时间: 2017-4-2 19:08
感谢楼主提出来这个问题啊,我刚上手摄像头,一直没搞明白这个PCLK信号的作用是什么。我现在的理解是如果用PCLK来触发DMA,就是说来一个PCLK时钟,就相当于是告诉DMA我这边采集好一个点的数据了,你可以过来搬走啦,是这个意思吗?还有一个问题想问下楼主,你现在找到更好地采集数据的方法了没




欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2