天嵌 ARM开发社区

 找回密码
 注册
查看: 2331|回复: 1

camif接口coms摄像头输入支持

[复制链接]
lyol33 发表于 2011-12-8 09:27:39 | 显示全部楼层 |阅读模式
  只介绍  S3C2440A 中的 CAMIF (摄像头接口) p通路
   –  ITU-R BT.601/656 8 位模式外部接口支持
  选择601格式
   –  最大 640×480像素输出支持给预览通路
  选择640*480
  –  PIP和编码输入图像产生(RGB 16/24 位格式和YCbCr 4:2:0/4:2:2格式)
  选择P通道产生RGB16

  先介绍输入,601标准
  假如有一幅640×480的图片,用yuv422来表示,那么,采样方式就是每个像素采样Y信号,U,V信号隔一个采样,这样算下来,就有640×480个Y,640×240个U,640×240个V,一幅640×480大小的YUV图片占的总字节数为640×480×2个字节,每像素2个字节,也就是16位。

    在内存种这样排列:Y0U0Y1V0 Y2U1Y3V1...

    第一个像素的YUV值为:Y0 U0 V0

   第二个像素的YUV值为: Y1 U0 V0

   第三个像素的YUV值为: Y2 U1 V1

.....其他以此推类,也就是说每两个像素是共用了UV的;在一行上来看,每个像素的YUV值种Y值被采样,UV值采样0后,跳到3,然后5,所以每行上Y有640个,U,V各320个。
  再理一理coms摄像头产生row格式数据到FPGA的处理。
  要做到的是30帧的输入,一秒三十个帧头,480个行场,一个行场里640*2个clock,每个clock一个八位数据,至于一行的数据怎么排列,上面的YUV422的排列码流就是了,数据总共为640*2*480.
  上面是输入,下面将驱动,将OV9650驱动里,与9650一切相关的配置都屏蔽,原输入改为640*480,目标大小为640*480,窗口一样,进来接口采样到的是YUV,走P通道后,DMA会把数据重组,实现RGB转换,从/dev/camif 读出来得数据位RGB16的格式,打开/dev/fb ,将数据写道上面,就会实现摄像头到LCD的实时显示了。
  本文只属于学习使用,请不要转载!

TQ_guoxixiao 发表于 2011-12-8 11:37:09 | 显示全部楼层
支持共享,谢谢分享。
回复

使用道具 举报

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

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

GMT+8, 2025-5-6 11:07 , Processed in 2.042180 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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