camera驱动开发(初学)
camera驱动开发
初学camera驱动开发 随笔记一下顺便整理一下初学的学习路线。内容来源于各大网站,大自然的搬运工。
一、camera基本概念
①三路电压
camera包含的三路电压为模拟电压(VCAMA),数字电压(VCAMD),IO口电压(VCAMIO)
VCAMA- 模拟电源供电
作用:AVDD主要用于摄像头传感器的模拟电路部分。这些模拟电路包括但不限于增强信号的放大器,以及将光信号转换为电信号的传感器像素。
电压值:AVDD的电压值通常在2.6V到3.3V之间,具体值取决于传感器的设计要求。较高的电压可能有助于信号放大,但也会增加功耗和热量。
VCAMD- 数字电源供电
作用:DVDD供应给摄像头传感器的数字处理部分,包括像素读取、信号处理、图像数据格式转换等数字电路。
电压值:DVDD的电压值通常较低,例如1.2V、1.8V等,这是因为数字电路对电压的要求一般较模拟电路低,并且较低的电压有助于降低功耗和减少热量产生。
VCAMIO- 数字接口电源供电
作用:DOVDD是供给传感器的数字接口部分,如MIPI(Mobile Industry Processor Interface)接口、SPI(Serial Peripheral Interface)或I2C(Inter-Integrated Circuit)总线。这些接口用于摄像头模块与主控制器(如处理器或图像处理芯片)之间的数据通信。
电压值:DOVDD的电压通常与外部接口或主控制器的I/O电压相匹配,以确保信号通信的兼容性。常见的电压值有1.8V、2.8V等。
②I2C
在camera中i2c总线主要用于主控与摄像头传感器进行通信,主控可以通过i2c写寄存器控制摄像头的分辨率、曝光时间、帧率、白平衡,或控制马达聚焦、调整光圈等。
③mipi
串行接口 ,实现高速数据的传输和多摄像头系统的集成。通过使用MIPI接口,摄像头模块可以与主处理器高效地通信,以支持各种图像捕捉和视频流功能。
mipi data是成对的差分信号,MIPI_RDN和MIPI_RDP,有几对这样的pin脚,则说明是几条lane,同一颗sensor由于register setting不同,输出的信号有可能是2 lane或者4lane等
④parallel
并行接口,跟mipi一样也是用来传输图像数据的,但是parallel是并行接口,在目前高帧率和高分辨率的情况下需要更多的引脚实现高的带宽,布线多就存在电磁干扰和长距离信号衰减,并且功耗也比较高。
Parallel接口一般Data有10根pin,分别叫做Data0~Data9,Parallel sensor输出的data信号是8根pin时,这八根pin接到的是Data0Data7还是Data2Data9,需要配置正确,叫做接到高八位或者低八位,接错了可能产生如下现象:
⑤ Data Format
“Data Format” 指的是摄像头传感器捕获图像后输出数据的格式,常见的YUV格式、RAW格式、JPEG格式、视频流格式。
Sensor输出的数据格式,对于YUV Sensor来说,Data Fomat一般有YUYV,YVYU,UYVY等,配置不对可能会导致颜色和亮度错掉,例如下图
对于Raw Sensor来说,Data Format就是First Pixel的颜色,分为R,Gr,Gb,B,配置不对会导致颜色错误