搜索
bottom↓
回复: 77

MT9M111摄像头出数据了

[复制链接]

出0入0汤圆

发表于 2010-12-26 08:12:36 | 显示全部楼层 |阅读模式
前不久淘宝了几个MT9M111 CMOS,在FPGA上差不多弄出效果来了。
特来向大家汇报一下
不多说 直接上图

开发板用的DE2 (原文件名:DSCF9623.JPG)


摄像头是MT9M111,guanfuwang那买的 (原文件名:DSCF9628.JPG)


还加了一个正在采的5M像素的OV摄像头 (原文件名:DSCF9627.JPG)


这就是VGA的实时显示了,由于板子的原因,最多只支持800*600?60Hz (原文件名:DSCF9631.JPG)


人眼看起是很清楚的,显示器在刷新,照像技术不行 (原文件名:DSCF9636.JPG)


这张就是MT9M111拍到的照片,存在了SD卡中为BMP,上传时转成了JPG (原文件名:image (2).jpg)


以下都是MT9M111拍到的照片,由于是晚上拍的,可能效果有点不好 (原文件名:image1 (2).jpg)


调试过程中的不知名错误 (原文件名:image (3).jpg)


本人用的YUV转的,这是转化后的R (原文件名:image1.jpg)


R+B (原文件名:imagemix.jpg)


G通道出了点问题, 某几跟数据线的高低位连反了 (原文件名:image2.jpg)


帧同步错误 (原文件名:image11.jpg)


FIFO读取时的错误,忘了说,我建了个NIOS的,读使能后要等一个时钟数据才输出 (原文件名:image640.jpg)


最后一个忠告,千万不要用飞线,这个图片只是干扰还好。之前是图像颜色不对,花了我一天时间都没有找到问题 (原文件名:imageok.jpg)

代码还很乱,后面补上,而且FPGA+NIOS的工程好大

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2010-12-26 08:50:32 | 显示全部楼层
圣诞大礼!

出0入0汤圆

发表于 2010-12-26 09:03:44 | 显示全部楼层
恭喜调试成功

光板的FPGA+SDRAM+FLASH 就完成了VGA和摄像头的刷新,还涉及到其他IC 吗?

出0入0汤圆

发表于 2010-12-26 09:14:37 | 显示全部楼层
stm32f2xx好像有Camera接口,不知道驱动这个怎么样

出0入0汤圆

发表于 2010-12-26 09:19:01 | 显示全部楼层
恭喜LZ


出0入0汤圆

发表于 2010-12-26 12:21:00 | 显示全部楼层
楼主,请问你那个“调试过程中的不知名错误 ”是怎么调试好的啊?我的也出现这么个问题,我是用nios写的~~

这个是拍的我自己的手~~

(原文件名:图像058.jpg)

出0入0汤圆

发表于 2010-12-26 13:20:09 | 显示全部楼层
回复【5楼】hclmcu
楼主,请问你那个“调试过程中的不知名错误 ”是怎么调试好的啊?我的也出现这么个问题,我是用nios写的~~
这个是拍的我自己的手~~


(原文件名:图像058.jpg)
引用图片

-----------------------------------------------------------------------

明显就是RGB顺序或数据高低位顺序错误!!!

出0入0汤圆

发表于 2010-12-26 14:05:57 | 显示全部楼层
非常不错,da你用的是什么芯片?

出0入0汤圆

发表于 2010-12-26 16:34:23 | 显示全部楼层
有没有原理图呀  我也想学学摄像头、、、、

出0入0汤圆

 楼主| 发表于 2010-12-26 18:03:45 | 显示全部楼层
回复【2楼】mcucow
-----------------------------------------------------------------------

只用了FPGA+一片SDRAM就实现了采集和在SD卡中存储为BMP图片,如果要实时VGA显示的话需要加一个视频DA芯片,用的是ADV7123


系统资源占用情况,当然这不是最简的,还有好多东西都没有去管 (原文件名:占用.jpg)


大致系统框图 (原文件名:系统.jpg)

出0入0汤圆

 楼主| 发表于 2010-12-26 18:06:39 | 显示全部楼层
回复【7楼】xhycopy
-----------------------------------------------------------------------

ADV7123

出0入0汤圆

 楼主| 发表于 2010-12-26 18:15:01 | 显示全部楼层
回复【5楼】hclmcu
-----------------------------------------------------------------------

遇到物体边沿有等高线那种情况通常是数据的低位丢失了,如LSB0,LSB1没有接入系统;
遇到物体边沿呈锯齿状,可能是数据的高低位反了,如:DATA7与DATA6交换了;
如果图像有拖尾或是变色之类的,可能是数据线之间,数据与时钟之间有干扰,最好不要用飞线

出0入0汤圆

 楼主| 发表于 2010-12-26 18:22:21 | 显示全部楼层
回复【3楼】vipcff
-----------------------------------------------------------------------

最好是外接一个FIFO芯片吧,数据量有点大,130W像素的
如果你要采得快的话,时钟也得要给54M,采慢可以给27M;
应该不是多大问题,单片机最好就不要用YUV了,你乘法跟不上。RAW,Processd Bayer,RGB565这些问题就不大

出0入0汤圆

发表于 2010-12-26 18:46:36 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-26 19:10:02 | 显示全部楼层
支持,顶

出0入0汤圆

发表于 2010-12-27 16:10:17 | 显示全部楼层
出来的图像需要微调颜色吗?

出0入0汤圆

发表于 2010-12-27 16:55:17 | 显示全部楼层
LZ是在哪里啊,里面好密闭啊
我今天没有上班,在外面走走,太阳很好,晒晒太阳,看风景,风景好,发现上班错过了很多东西。

出0入0汤圆

 楼主| 发表于 2010-12-27 21:10:14 | 显示全部楼层
回复【15楼】bad_fpga
-----------------------------------------------------------------------

我用的是YUV,是要微调颜色的,其它模式我就不知道了

出0入0汤圆

 楼主| 发表于 2010-12-27 21:19:26 | 显示全部楼层
回复【16楼】zgq800712 SEED
---------------------------------------------------------------------
学校实验室啊,不密闭东西都要被搬光了!

出0入0汤圆

 楼主| 发表于 2010-12-27 21:22:11 | 显示全部楼层
来晚了 代码就只有在这里补上了
ourdev_607524EMCG2X.rar(文件大小:25.76M) (原文件名:DE2_MTM111_VGA_COLOR_NIOS.rar)

出0入0汤圆

发表于 2010-12-27 21:35:37 | 显示全部楼层
强势顶起

出0入0汤圆

发表于 2010-12-27 23:53:56 | 显示全部楼层
请教一下NIOS的程序是放在SDRAM里面跑的吗?因为你用SDRAM做了个缓存,800X600 60HZ,这样,你的SDRAM的带宽应该也占用完了吧?再做了个SD的读写,不会有冲突吗?可否讲一下如何做到的?

出0入0汤圆

 楼主| 发表于 2010-12-28 14:47:05 | 显示全部楼层
回复【21楼】bad_fpga
-----------------------------------------------------------------------
哦 都给忘记了SDRAM是被封装成了双口FIFO,摄像头的数据算好后直接填FIFO,FIFO的读取端接在了AVALON-MM总线上,NIOS是在另外一片512K的SRAM上跑的

出0入0汤圆

发表于 2010-12-30 10:02:14 | 显示全部楼层
请问一下,为什么最后一张照片感觉色彩比较鲜艳,而上面那些摄像头在显示器上显示或保存在SD卡那些照片,感觉色彩淡了一些的?是处理的问题吗?在显示器上的色彩淡,能不能调节一下?

出0入0汤圆

 楼主| 发表于 2010-12-30 12:31:36 | 显示全部楼层
回复【23楼】bad_fpga
-----------------------------------------------------------------------

可以调的,最后一张是G通道的数据有点大
                X_OUT<=( X >>7)- 900;
                Y_OUT<=( Y >>7)+ 420 ;//FOR mt9m111
                Z_OUT<=( Z >>7)- 1400 ;       
                /*
                X_OUT<=( X >>7)- 900;
                Y_OUT<=( Y >>7)+ 320 ;//FOR MT9D111
                Z_OUT<=( Z >>7)- 1400 ;        */
//        Y                596,                0,                        680
MAC_3 u0(        iY,                        iCb,                iCr,
                        17'h00254,        17'h00000,        17'h002A8,
                        X,                iRESET,                iCLK);
//        Cb                596,                -200,                -416
MAC_3 u1(        iY,                        iCb,                iCr,
                        17'h00254,        17'h3FF18,        17'h3FEA6,
                        Y,                iRESET,                iCLK);
//        Cr                596,                1210,                0
MAC_3 u2(        iY,                        iCb,                iCr,
                        17'h00254,        17'h004BA,        17'h00000,
                        Z,                iRESET,                iCLK);
这里就是直流分量微调和那个YUV to RGB的公式的硬件实现

出0入0汤圆

发表于 2010-12-31 10:57:50 | 显示全部楼层
终于找到同仁了   前段时间硬件平台全部搭起来了  我板子是自己设计的 摄像头跟你一摸一样  
只是后来时间上有点冲突  自己屁事真的好多  只能。。。。。
等我考完试 我必须把这个搞出来  
希望能跟你聊聊  想用MT9M111 做 视频识别方向的东西
当然驱动是第一步 我纠结于时间的原因现在还没能腾出来  
惭愧惭愧惭愧惭愧

这是我的帖子http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4437397


RTL 整个系统的联调 (原文件名:ourdev_602757ML2IG0.jpg)


自己设计的硬件平台 (原文件名:ourdev_602886QL2Q9B.jpg)


测试图片 (原文件名:ourdev_603400MB8SZU.jpg)

出0入0汤圆

发表于 2010-12-31 20:57:49 | 显示全部楼层
GOOD

出0入8汤圆

发表于 2010-12-31 23:58:15 | 显示全部楼层
顶起来

出0入0汤圆

发表于 2011-1-4 13:12:04 | 显示全部楼层
很强

出0入0汤圆

发表于 2011-2-9 09:53:37 | 显示全部楼层
厉害!

出0入0汤圆

发表于 2011-2-9 13:06:29 | 显示全部楼层

出0入0汤圆

发表于 2011-2-9 13:30:40 | 显示全部楼层
m

出0入0汤圆

发表于 2011-3-2 17:07:07 | 显示全部楼层
好东西,想知道硬件连接……

出0入0汤圆

发表于 2011-3-2 20:45:51 | 显示全部楼层
好好好!学习了!

出0入0汤圆

发表于 2011-3-2 23:12:29 | 显示全部楼层
顶起来

出0入0汤圆

发表于 2011-3-3 09:52:36 | 显示全部楼层
这张就是MT9M111拍到的照片,存在了SD卡中为BMP,上传时转成了JPG ????????????
这个工程量是不是很大啊??

出0入0汤圆

 楼主| 发表于 2011-3-17 21:19:06 | 显示全部楼层
回复【35楼】hanbin08041813 CrazyBingo
-----------------------------------------------------------------------

看你要做成什么程度和会不会借用别人的模块了
自己一句一句的写 肯定大工程量

出0入0汤圆

发表于 2011-3-17 22:15:23 | 显示全部楼层
看的我热血沸腾,代码呢?

出0入0汤圆

发表于 2011-3-17 23:56:50 | 显示全部楼层
非常牛

出0入0汤圆

 楼主| 发表于 2011-3-21 23:28:58 | 显示全部楼层
回复【37楼】zsw3979
-----------------------------------------------------------------------

代码在19楼

出0入0汤圆

发表于 2011-3-22 19:09:55 | 显示全部楼层
LZ,请教个问题
你是如何做帧同步的,我这经常出现错帧的现象

出0入0汤圆

发表于 2011-3-24 17:58:44 | 显示全部楼层
回复【楼主位】caizijian
-----------------------------------------------------------------------

哥哥,你真是人才呀!!我很想很想学,怎么联系你呀?我手机号15037125403,我都有到天涯海角去找你的冲动拉!!

出0入0汤圆

发表于 2011-3-24 18:01:43 | 显示全部楼层
回复【楼主位】caizijian
-----------------------------------------------------------------------

老大,我愿意叫学费,我是一名大三的学生,正学FPGA一边努力的学习,一直苦等有高人指点,您就是呀!!外传不?我太喜欢这个啦!!俺来之农村的娃娃,您就教教我吧?

出0入0汤圆

发表于 2011-3-24 18:09:58 | 显示全部楼层
回复【楼主位】caizijian
-----------------------------------------------------------------------

想先一知半解的先好好做个工程,感觉这样进步的快些,您是哪里的人呀?我是河南开封的,真的很想拜你为师1!!!!

出0入0汤圆

发表于 2011-3-25 08:45:12 | 显示全部楼层
回复【9楼】caizijian
-----------------------------------------------------------------------

老大您是哪里的加我QQ773993221,把你的联系方式给我也行呀?楼的大虾们,帮帮忙,找找这哥们,怎么也不见他出现啦?

出0入0汤圆

发表于 2011-3-25 08:46:41 | 显示全部楼层
回复【9楼】caizijian
---------------------------------------------------------------

出0入0汤圆

发表于 2011-3-25 09:20:56 | 显示全部楼层
回复【楼主位】caizijian
-----------------------------------------------------------------------
就跟您打打下手我就非常的心满意足啦!不会的地方指点一下,让我知道努力的方向就成,跪求!!!!!

出0入0汤圆

发表于 2011-6-7 16:07:53 | 显示全部楼层
qiang a

出0入0汤圆

发表于 2011-6-15 17:37:37 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-6-15 18:54:16 | 显示全部楼层
USB摄像头不知怎么样?

出0入0汤圆

发表于 2011-6-15 20:41:43 | 显示全部楼层
挺不错哟  要学习!!!!!!

出0入0汤圆

发表于 2011-8-17 16:00:10 | 显示全部楼层
赞一个!请问楼主提供数字摄像头(比如MT9M034)的FPGA开发吗?

出0入0汤圆

发表于 2011-11-16 16:14:30 | 显示全部楼层
颜色不正,是摄像头问题还是驱动时序问题??

出0入0汤圆

发表于 2011-12-15 11:47:00 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-12-20 10:22:31 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-12-23 12:50:24 | 显示全部楼层
问个问题啊,MT99M111的寄存器设置必须用IIC模式么?数据是从D0-D7并行输出?

出0入0汤圆

发表于 2011-12-23 20:18:59 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-12-24 01:49:12 | 显示全部楼层
楼主用的是哪块板子啊

出0入0汤圆

发表于 2011-12-31 21:25:02 | 显示全部楼层
mark

出0入0汤圆

 楼主| 发表于 2012-1-5 14:32:26 | 显示全部楼层
回复【59楼】mengguren
-----------------------------------------------------------------------
用的DE2

出0入0汤圆

 楼主| 发表于 2012-1-5 14:35:08 | 显示全部楼层
回复【57楼】proteldxp
-----------------------------------------------------------------------

是的 别人叫SCCB,但用IIC也行,它们差不多

数据是从D0-D7并行输出的,数据上升沿数据有效,一个时钟一个像素点的数据(BAYER),或者一个时钟一个Y,或者U\V

出0入0汤圆

发表于 2012-1-16 20:12:27 | 显示全部楼层
mark

出0入0汤圆

发表于 2012-1-16 20:25:16 | 显示全部楼层
mark

出0入0汤圆

发表于 2012-2-1 20:53:50 | 显示全部楼层
回复【62楼】caizijian 菜子建
-----------------------------------------------------------------------

MT9M111可以不用IIC配置寄存器么?直接“数据是从D0-D7并行输出的,数据上升沿数据有效,一个时钟一个像素点的数据(BAYER),或者一个时钟一个Y,或者U\V ”可以么?

出0入0汤圆

发表于 2012-2-3 17:52:15 | 显示全部楼层
太牛了! 恳请楼主给开发资料

邮箱:cheng_hanzhi@163.com
不甚感激!!!!!!!!!!!

出0入0汤圆

发表于 2012-2-12 13:17:59 | 显示全部楼层
回复【楼主位】caizijian  菜子建
-----------------------------------------------------------------------
代码下载下来后编译有错误:
Error: Node instance "the_altera_std_synchronizer3" instantiates undefined entity "altera_std_synchronizer"
代码哪儿出了问题呢?

出0入0汤圆

发表于 2012-2-14 11:10:43 | 显示全部楼层
mark!

出0入0汤圆

发表于 2012-2-14 13:44:22 | 显示全部楼层
回复【楼主位】caizijian 菜子建
-----------------------------------------------------------------------

恭喜楼主,我的用fpga驱动的也搞定了:)

出0入16汤圆

发表于 2012-2-25 09:34:50 | 显示全部楼层
楼主强悍 马克先,以后也玩玩

出0入0汤圆

发表于 2012-4-8 22:36:47 | 显示全部楼层
这个帖子看了好几遍了,我的也是de2的板子,还在研究。有点小感兴趣的是您的那个摄像头怎么不通过飞线连接在de2板子上的呢?貌似市面上没有双向的排母吧,您是怎么将板子上的排插升高一段,变成排母的?

出0入0汤圆

发表于 2012-4-30 19:23:04 | 显示全部楼层
mark yi xia yi xia ~

出0入0汤圆

发表于 2012-5-1 12:39:44 | 显示全部楼层
楼主这个摄像头出来的是YUV的数据??

出0入0汤圆

发表于 2012-5-7 12:57:52 | 显示全部楼层
楼主,为什么板子上为什么不支持1280*1024呢,使用27M频率4倍频到108Mhz,供给VGA_CLK,使用相应的VGA参数,它自己应该达到60Hz。但是我试了一下却out of range。不知为什么?

出0入0汤圆

发表于 2012-5-11 22:20:36 | 显示全部楼层
hunningtu 发表于 2012-5-7 12:57
楼主,为什么板子上为什么不支持1280*1024呢,使用27M频率4倍频到108Mhz,供给VGA_CLK,使用相应的VGA参数, ...

细细研究了一下,最后的瓶颈在sdram上,要想实现1280*1024,50M*2+108M*2远远超出了sdram的频宽,所以用rgb565会比较节省带宽,还得看配置文档,来配置寄存器,好麻烦.

出0入0汤圆

发表于 2012-7-16 21:05:55 | 显示全部楼层
膜拜 学习中 mark

出0入0汤圆

发表于 2013-6-29 13:46:27 | 显示全部楼层
caizijian 发表于 2010-12-26 18:15
回复【5楼】hclmcu
-----------------------------------------------------------------------

子键。。。。。。。。。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-19 20:09

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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