1. Camera Sensor 基础概念
Camera Sensor 是成像系统的核心器件,负责将光学信号转换为电信号。在瑞芯微 RK 平台驱动开发中,理解 Sensor 的底层特性是正确配置上电时序与驱动框架的前提。本节从类型、像素、帧率、分辨率、接口五个维度展开。
1.1 Sensor 类型:CMOS 与 CCD
| 对比项 | CMOS(互补金属氧化物半导体) | CCD(电荷耦合器件) |
|---|---|---|
| 读出方式 | 每个像素自带放大器与 ADC,行列并行读出 | 电荷逐行转移至输出端统一放大 |
| 功耗 | 低(单电源供电,静态功耗小) | 高(需多组偏压与时钟驱动) |
| 集成度 | 高(可集成 ISP、MIPI PHY、时序发生器) | 低(需外部配套驱动芯片) |
| 噪声 | 固定模式噪声(FPN)较明显,需校正 | 读出噪声低,画质均匀 |
| 速度 | 快(支持高帧率、多通道输出) | 慢(串行读出速率受限) |
| 成本 | 低(标准 CMOS 工艺) | 高(专用工艺,良率低) |
| RK 平台适用性 | 主力(OV、SONY、三星等主流 Sensor 均为 CMOS) | 极少(仅部分工业/医疗场景) |
RK 平台选型提示: 瑞芯微 RK3588 / RK3568 等芯片的 MIPI CSI-2 接口专为 CMOS Sensor 设计,CCD Sensor 需额外转换芯片,不推荐在消费类产品中使用。
1.2 像素(Pixel)与分辨率
像素是 Sensor 的最小感光单元,分辨率由像素阵列的行列数决定。常见分辨率命名与像素数对应关系如下:
| 分辨率名称 | 像素数(宽×高) | 总像素(约) | 典型应用 |
|---|---|---|---|
| VGA | 640 × 480 | 0.3 MP | 低端安防、USB 摄像头 |
| 720p (HD) | 1280 × 720 | 0.9 MP | 视频通话、行车记录仪 |
| 1080p (FHD) | 1920 × 1080 | 2.1 MP | 主流手机、IPC |
| 4K (UHD) | 3840 × 2160 | 8.3 MP | 旗舰手机、运动相机 |
| 8K | 7680 × 4320 | 33.2 MP | 专业摄像机、RK3588 支持 |
驱动关注点: 分辨率直接影响 MIPI 数据通道数(lane)和时钟频率。例如 4K@60fps 通常需要 4-lane MIPI 且 D-PHY 速率 ≥ 1.5 Gbps/lane。
1.3 帧率(Frame Rate)
帧率表示 Sensor 每秒输出的完整图像帧数,单位 fps(frames per second)。帧率与分辨率、曝光时间、读出速度三者相互制约:
- 帧率上限 = 1 / (行时间 × 总行数),行时间由像素时钟与行像素数决定。
- 高帧率代价:降低分辨率(如 1080p@120fps vs 4K@30fps)、缩短曝光窗口(影响暗光画质)。
- RK 平台限制:MIPI D-PHY 物理层带宽上限(RK3588 单路最高 2.5 Gbps/lane),超过则需压缩或降帧。
上电时序关联: 帧率切换(如从 30fps 切到 60fps)通常需要重新配置 PLL 分频系数,此时必须保证 Sensor 的 AVDD / DVDD / IOVDD 电压稳定在 ±5% 以内,否则锁相环失锁会导致花屏或无图。
1.4 接口类型:MIPI CSI-2 与 DVP
RK 平台主流接口为 MIPI CSI-2(Mobile Industry Processor Interface - Camera Serial Interface 2),DVP(Digital Video Port)仅用于低分辨率或老旧 Sensor。
| 对比项 | MIPI CSI-2 | DVP |
|---|---|---|
| 信号线 | 差分对(CLK+/-,DATA+/-),1~4 lane | 并行数据线(8/10/12 bit)+ HSYNC + VSYNC + PCLK |
| 抗干扰 | 强(差分传输,共模抑制) | 弱(单端信号,易受串扰) |
| 最高速率 | 单 lane 可达 2.5 Gbps(D-PHY v1.2) | 通常 ≤ 150 Mbps(PCLK 上限) |
| 线束数量 | 少(4-lane 共 10 根线) | 多(20~30 根线) |
| RK 支持 | 全系列(RK3588/3568/3399/3288) | 仅部分 GPIO 模拟,不推荐新设计 |
驱动开发建议: 新项目优先选择 MIPI CSI-2 接口 Sensor。DVP 在 RK 平台上需要占用大量 GPIO 且无法支持高帧率 4K,已逐步淘汰。
1.5 Sensor 内部架构与数据流
下图展示 CMOS Sensor 内部核心模块及数据输出路径,帮助理解驱动需要控制的寄存器区域:
1.6 关键参数与驱动对应关系
驱动开发中需要从 Sensor datasheet 提取以下参数,填入 RK 平台的 V4L2 子设备驱动:
- sensor_mode_list:分辨率 + 帧率组合列表(如 3840×2160@30fps、1920×1080@60fps)。
- mipi_freq:MIPI 时钟频率(Hz),用于计算 PLL 配置。
- hblank / vblank:行/帧消隐区,影响带宽与帧率。
- exposure_min / max:曝光行数范围,对应 V4L2_CID_EXPOSURE。
- gain_min / max:模拟增益范围,对应 V4L2_CID_GAIN。
实战经验: 在 RK3588 平台上调试 OV50D40(50MP CMOS Sensor)时,MIPI 速率配置为 1.2 Gbps/lane × 4-lane,总带宽 4.8 Gbps,可满足 4K@60fps 输出。若误将 lane 数配为 2,则带宽减半,帧率自动降为 30fps。
1.7 本章小结
Camera Sensor 的基础概念是驱动开发的基石。CMOS 是 RK 平台的主流选择;像素与分辨率决定图像细节;帧率受读出速度与接口带宽双重约束;MIPI CSI-2 凭借高速差分传输成为首选接口。理解这些参数的内在关联,才能正确配置上电时序与驱动框架中的寄存器。