文档
OV2640 内部时钟版本技术手册
一、概述
OV2640 是 OmniVision 公司推出的 200 万像素 CMOS 图像传感器,最高分辨率 UXGA (1600×1200)。该传感器内置 JPEG 压缩引擎,可直接输出压缩后的 JPEG 图像,极大减轻主控负担。内部时钟版本集成 PLL 锁相环,只需提供 12-48MHz 参考时钟即可产生所有内部所需时钟,是 ESP32-CAM 等物联网摄像头的首选方案。
主要特性
- 200万像素 UXGA (1600×1200),支持 SVGA/VGA/QVGA 等多种分辨率
- 1/4英寸光学格式,2.2μm 像素尺寸
- 内置 JPEG 压缩引擎,直接输出 JPEG 码流
- 内部 PLL 时钟发生器
- 自动曝光 (AE)、自动白平衡 (AWB)、自动增益 (AGC)
- 支持 Raw RGB、RGB565、YUV422、JPEG 等多种输出格式
- 低功耗设计,适合电池供电设备
二、引脚定义
| 引脚号 | 引脚名称 | 类型 | 描述 |
|---|---|---|---|
| 1 | VDDIO | PWR | I/O电源 1.8V~3.3V |
| 2 | AVDD | PWR | 模拟电源 2.8V |
| 3 | AGND | GND | 模拟地 |
| 4 | DVDD | PWR | 数字内核电源 (内部LDO 1.3V) |
| 5 | DGND | GND | 数字地 |
| 6 | XVCLK | I | 参考时钟输入 (12-48MHz) |
| 7 | PCLK | O | 像素时钟输出 |
| 8 | HREF | O | 行同步信号 |
| 9 | VSYNC | O | 帧同步信号 |
| 10-17 | Y2-Y9 | O | 像素数据输出 (D0-D7) |
| 18 | SCL | I | SCCB接口时钟 |
| 19 | SDA | I/O | SCCB接口数据 |
| 20 | PWDN | I | 掉电控制 |
| 21 | RESET | I | 复位信号 |
| 22 | STROBE | O | 闪光灯触发 |
三、电气特性
| 参数 | 规格 | 单位 |
|---|---|---|
| AVDD | 2.5 ~ 3.0 (推荐2.8) | V |
| DVDD | 内部LDO输出1.3V | V |
| VDDIO | 1.8 ~ 3.3 | V |
| XVCLK | 12 ~ 48 | MHz |
| 工作温度 | -20 ~ +70 | ℃ |
| 工作功耗 (UXGA 15fps) | ~125 | mW |
| 待机功耗 | ~15 | μW |
| I/O 驱动能力 | 8 | mA |
四、内部时钟架构
XVCLK (12-48MHz)
│
▼
┌──────────┐
│ 预分频器 │ /M
└────┬─────┘
│
▼
┌──────────┐
│ PLL │ ×N
│ (内部) │
└────┬─────┘
│
▼
┌──────────┐
│ 后分频器 │ /P
└────┬─────┘
│
├→ SCLK (系统时钟, 最高96MHz)
├→ PCLK (像素时钟)
└→ JPEG引擎时钟
OV2640 的 PLL 相对简单,寄存器地址:
0x2D:0x11-0x13:时钟控制寄存器0xFF:寄存器页选择(OV2640 使用页寻址)
五、寄存器页寻址机制
OV2640 使用独特的页寻址方式访问寄存器:
写入流程:
OV2640_WriteReg(0xFF, 0x00); // 切换到页0
OV2640_WriteReg(0x12, 0x80); // 操作页0的寄存器
OV2640_WriteReg(0xFF, 0x01); // 切换到页1
OV2640_WriteReg(0x12, 0x40); // 操作页1的寄存器
六、典型应用电路
电源
+3.3V ──┬── LDO(2.8V) ── AVDD (10μF∥100nF)
└──────────────── VDDIO (直接3.3V)
DVDD由内部LDO产生,外接2.2μF
ESP32-CAM 典型连接
ESP32-S → OV2640
─────────────────────────────
IO12 (I2C SDA) → SDA
IO13 (I2C SCL) → SCL
IO4 (XCLK) → XVCLK
IO5 (D0) ← Y2
IO18 (D1) ← Y3
IO19 (D2) ← Y4
IO21 (D3) ← Y5
IO36 (D4) ← Y6
IO39 (D5) ← Y7
IO34 (D6) ← Y8
IO35 (D7) ← Y9
IO25 (VSYNC) ← VSYNC
IO26 (HREF) ← HREF
IO27 (PCLK) ← PCLK
IO32 (PWDN) → PWDN
七、上电时序
1. 拉低 RESET 和 PWDN
2. 上电 AVDD → VDDIO
3. 提供 XVCLK 参考时钟(PLL需要)
4. 释放 PWDN,等待 ≥1ms
5. 释放 RESET,等待 ≥20ms
6. SCCB 初始化寄存器
八、注意事项
- 页寻址:每次操作寄存器前须确保在正确的寄存器页(0xFF 寄存器)。
- 内部 LDO:DVDD 由内部 LDO 产生,仅需外接 2.2μF 滤波电容,不要外部供电。
- JPEG 输出:JPEG 模式下数据长度可变,需解析 JPEG 头获取实际大小。
- 时钟频率:推荐 XVCLK=24MHz,PLL 输出约 48-72MHz 系统时钟。
- 分辨率切换:切换分辨率后需重新配置大量寄存器(时钟、窗口、时序)。
- 与 OV5640 不兼容:虽然都是 OmniVision 传感器,但寄存器映射完全不同。
- I²C地址:OV2640 的 SCCB 写地址为 0x60(7位0x30),非 0x78。