hw6ul-lite之CSI摄像头OV7740
本文描述imx6ul 下 CSI摄像头 的测试:
一. 硬件连接:
开发板 使用的是 辉为科技的hw6ul-lite ,摄像头是CMOS 30W像素的OV7740或者500W像素的OV5640,项目用于人脸 设别 门禁。
开发板的J5 焊接上摄像头模块,摄像头晶振可有使用有源晶振也可以 使用IMX6UL CSI 接口的MCLK,24M。
二. 修改 设备树 驱动
根据内核驱动 文档修改。
输出格式为:RAW RGB、YUV
输出分辨率为:VGA(640*480)、QVGA(240*320)、CIF(352*288)、更小的任意大小
有效感光阵列的大小:656*488 = 320128(30W)
镜头的大小:1/5寸
像素点颗粒的大小: 4.2um * 4.2um
总结:
以上三个参数,都是用来描述感光阵列,即 使同为30W像素的摄像头,如果它的
镜头尺寸大小越小,那么对应的像素点颗粒的大小就越小,从而感光性就越差,进而
拍摄的效果就越差。
输入时钟频率: 6~27MHz
即0V7740摄像头模组的工作频率范围。
扫描模式: 连续扫描(P)
2). 内部数据的处理流程
a.isc部分:
翻转、增益大小调整、黑电平校准、饱和度的控制、OTP存储器
b.isp部分:
提供测试功能、镜头补偿功能、自动白平衡、RAW RGB->RGB、RGB->YUV、
窗口功能、缩小放大功能
c.ioi部分:
RAW RGB/YUV、VGA/QVGA、BT601/BT656
问:以上这些处理过程,不需要我们人为的做任何设置,它们都能自动完成吗?
答:以上这些处理过程,只有极少部分是自动完成的,而剩余部分是需要我们设
置后,才能完成。
问:怎么对它们进行设置呢?
答:是通过IIC总线,操作OV7740的寄存器来进行设置的。
问:RAW RGB与RGB的区别是什么?
答:所谓的RAW RGB就是只有红绿蓝三种颜色的数据。而RGB数据,它不仅只表示红绿蓝
三种颜色,而且还能表示由红绿蓝组合成的任何一种颜色。
问:RGB、YUV又分别是什么?
答:RGB、YUV是两种完全不同的颜色空间,它们之间可以相互转换。
原理图(接口)
控制类:
IICSDA -- IIC总线的数据线
IICSCL -- IIC总线的时钟线
数据传输类:
CAMRST -- 复位CMOS摄像头模块
CAMCLK -- 摄像头模块工作的系统时钟(24MHz)
CAM_HREF -- 行同步信号
CAM_VSYNC -- 帧同步信号
CAM_PCLK -- 像素时钟
CAMDATA0~7 -- 数据线
总结:
1.CMOS摄像头模块的接口分为两类:
(1).控制类
-- 初始化:对摄像头模块进行相应的初始化操作
,让摄像头模块能够正常的输出摄像头数据
-- 控制: 设置亮度、旋转、缩放等等的操作
(2).数据传输类: 与LCD的接口完全一样。
2.CMOS摄像头模块,是一个IIC设备,需要给它写符合IIC设备那套架构的
驱动,从而实现初始化和灵活的控制。
640*480、30fps、YUV、BT601
三. 根据辉为科技< Linux之V4L2基础编程之内存映射 > 编写测试 程序,或采用光盘 中的测试 例程