F4 + TW9912或者TVP5150下如何配置DCMI

2019-07-20 06:43发布

各位好!
我一个产品采用F4接个摄像头,本来采用的是数字摄像头OV2640,也调试好了,发现数据传输不能太远,超过10cm图像就糊掉了。没办法改成模拟摄像头,在板子上外加了TW9912模拟摄像头解码芯片,接到F4的DCMI接口。

现在在做这方面的软件,有几个问题:
1:F4的DCMI是设置成DCMI_SynchroMode_Hardware还是DCMI_SynchroMode_Embedded?我看到一些资料上介绍BT656上写的应该都是DCMI_SynchroMode_Embedded方式,就是将H SYNC/VSYNC两个信号都放在数据里边了,采用FF0000XY标示,F4的资料我也仔细看了,这需要设置Frame start (FS),Frame end (FE),Line start (LS),Line end (LE)几个寄存器,其中line start/end应该好设,但是frame start/end应该如何设置?应该将那个场的数据头作为标志呢?
大侠请指教!

2:另外,无论是TVP5150还是TW9912接模拟摄像头,输出的视频数据应该是YCbCr 4:2:2编码格式的吧?不是RGB565数据格式,如何将这部分数据显示到LCD上?是否应该先收偶场数据,然后收奇场数据,然后合并后解码成RGB565后扔到LCD显存?

还请大侠指教!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
正点原子
1楼-- · 2019-07-20 11:25
1,建议直接看下寄存器描述,比较清楚一点。  2,那就必须将YCbCr转换成RGB才能显示的。
dawea
2楼-- · 2019-07-20 15:45
非常感谢原子的回复!
我现在已经写好了代码,将YCbCr转换成RGB565,并丢到显示RAM中去了,但是显示的图像还是不对。不知道哪里出了问题,我TW9912设置的问题还是YCbCr转换成RGB565的算法的问题。
还有如下几个疑问:
1:我现在采用的是硬件同步方法,就是设置TW9912输出VSYNC,和HSYNC信号,通过F4的这两个信号作为图像采集同步信号获得数据。设置后,数据是收到了,但看图像数据有点不大对头,每个收到的32BIT数据大体都相同,显示出来的图像也不对,所以很怀疑采用VSYNC,和HSYNC输出信号这样方法对于TW9912是否可行?我在网上看到有人用TVP5150作为视频解码芯片,就是采用TVP5150输出的VSYNC,和HSYNC作为同步信号的,按道理又应该可以的啊;
2:TW9912规格书上说该芯片输出采用BT656格式,这个格式我在网上看到的资料都是介绍将VSYNC,和HSYNC这两个信号放在数据区里边的,外面没有。如果将这两个放在数据区的话,采用逐行扫描的话应该如何配置F4的几个标志寄存器,有这么用过的?
3:也请帮忙扫扫盲,所谓逐行是否是先传一行奇数行再传一行偶数行。。。直到一帧完全传完?看过网上的一些资料,隔行扫描的话是先传所有奇数行再传所有偶数行,所以这样的话在将图像显示前需要先将奇数行和偶数行合并重组才能正常显示。



正点原子
3楼-- · 2019-07-20 17:33
 精彩回答 2  元偷偷看……
maxiang615
4楼-- · 2019-07-20 22:21
 精彩回答 2  元偷偷看……
goust51
5楼-- · 2019-07-21 01:15
楼主你的问题解决了吗?我这里有个配置参考希望能帮到你吧!https://blog.csdn.net/kickxxx/article/details/7714938

一周热门 更多>