4. RK平台PMIC与LDO配置
在瑞芯微平台上,Sensor的上电时序控制高度依赖PMIC(Power Management IC)和LDO(Low Dropout Regulator)的精确配置。本章将深入剖析RK809/RT5036等主流PMIC的特性、LDO输出电压与负载的匹配原则,以及如何在设备树(DTS)中正确配置LDO节点,确保Sensor在正确的电压和时序下稳定工作。
4.1 RK平台主流PMIC介绍
瑞芯微平台常用的PMIC包括RK809、RK817、RT5036等,它们集成了多路DCDC、LDO、RTC、音频编解码等功能,为CPU、GPU、DDR以及各类外设Sensor提供电源管理。
| PMIC型号 | 集成DCDC数量 | 集成LDO数量 | 典型应用平台 | 关键特性 |
|---|---|---|---|---|
| RK809 | 5路(BUCK1~5) | 9路(LDO1~9) | RK3566/RK3568 | 支持I2C控制、可编程上电时序、过流/过温保护 |
| RK817 | 5路(BUCK1~5) | 9路(LDO1~9) | RK3326/RK3399 | 与RK809引脚兼容,支持音频编解码 |
| RT5036 | 3路(BUCK1~3) | 5路(LDO1~5) | RK3308/RK3328 | 超小封装、低静态功耗、适合IoT设备 |
选型提示: 对于Sensor供电,优先选择PMIC中噪声较低的LDO输出。若Sensor对纹波敏感(如模拟麦克风、摄像头AFE),应避免使用DCDC直接供电,即使DCDC效率更高。
4.2 LDO输出电压与负载配置
LDO的核心参数包括输出电压、输出电流、压差(Dropout Voltage)和电源抑制比(PSRR)。在Sensor驱动调试中,需重点关注以下两点:
- 输出电压匹配: Sensor的AVDD(模拟供电)、DVDD(数字供电)、IOVDD(IO供电)通常需要不同电压值,例如1.8V、2.8V、3.3V。LDO的输出电压必须通过寄存器或外部电阻分压精确设定。
- 负载能力评估: Sensor的峰值电流(如启动瞬间、闪光灯触发)不能超过LDO的最大输出电流。若负载不足,会导致电压跌落,引发Sensor工作异常。
常见陷阱: 部分Sensor在初始化阶段会从IOVDD吸取较大电流(如拉高I2C上拉电阻),若LDO负载能力不足,会导致IOVDD电压被拉低,造成I2C通信失败。建议预留20%~30%的电流余量。
以下为典型Sensor供电需求与LDO配置对照表:
| Sensor类型 | AVDD (V) | DVDD (V) | IOVDD (V) | 推荐LDO型号 | 最大负载 (mA) |
|---|---|---|---|---|---|
| 摄像头(OV5640) | 2.8 | 1.5 | 1.8 | RK809_LDO3 | 200 |
| 陀螺仪(MPU6050) | 2.5 | 1.8 | 1.8 | RK809_LDO5 | 50 |
| 接近传感器(AP3216) | 2.8 | 1.8 | 1.8 | RT5036_LDO2 | 100 |
4.3 DTS中LDO节点配置
在瑞芯微平台,PMIC的LDO配置通过设备树(DTS)完成。核心在于定义LDO的输出电压范围、默认状态以及上电时序。以下以RK809为例,展示一个典型Sensor供电LDO的DTS配置片段。
// 文件路径:arch/arm64/boot/dts/rockchip/rk3568-evb.dts
// PMIC RK809 节点
&rk809 {
// LDO3 配置:用于摄像头 AVDD 2.8V
ldo3: LDO_REG3 {
regulator-name = "vcc_cam_avdd";
regulator-always-on; // 系统启动后常开(需根据实际需求调整)
regulator-boot-on; // bootloader阶段开启
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-state-mem {
regulator-off-in-suspend; // 休眠时关闭以省电
};
};
// LDO5 配置:用于摄像头 DVDD 1.5V
ldo5: LDO_REG5 {
regulator-name = "vcc_cam_dvdd";
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <1500000>;
regulator-state-mem {
regulator-off-in-suspend;
};
};
};
// Sensor 节点引用LDO供电
&i2c4 {
status = "okay";
camera_sensor: camera@3c {
compatible = "ovti,ov5640";
reg = <0x3c>;
// 通过phandle关联LDO
avdd-supply = <&ldo3>; // 对应 vcc_cam_avdd
dvdd-supply = <&ldo5>; // 对应 vcc_cam_dvdd
// 其他配置...
};
};
配置要点:
regulator-min-microvolt和regulator-max-microvolt应设置为相同值(固定输出),或根据Sensor需求设置范围。regulator-always-on慎用:若Sensor支持运行时动态开关,应移除该标志,由驱动通过regulator框架控制开关,以降低功耗。regulator-state-mem用于定义系统休眠时的LDO行为,通常关闭Sensor供电以节省功耗。
4.4 LDO上电时序控制
Sensor的上电时序(Power Sequence)要求各供电轨按特定顺序和延迟上电。RK809支持通过寄存器配置上电时序,但在DTS层面,通常通过regulator耦合或驱动中显式控制来实现。
以下SVG图展示了典型Sensor(摄像头)的上电时序与LDO控制关系:
调试建议: 若Sensor上电后I2C通信失败,首先使用示波器测量各LDO输出波形,确认上电顺序和电压建立时间是否符合Sensor数据手册要求。常见问题包括:AVDD与DVDD同时上电(未满足延迟)、电压上升斜率过缓(负载电容过大)。
4.5 常见问题与排查方法
| 问题现象 | 可能原因 | 排查方法 |
|---|---|---|
| Sensor I2C无应答 | IOVDD未上电或电压不足 | 测量IOVDD引脚电压,检查DTS中LDO配置 |
| Sensor初始化失败 | 上电时序不满足要求 | 示波器抓取各供电轨上电波形,对比手册时序图 |
| Sensor工作不稳定 | LDO负载不足或噪声过大 | 检查LDO最大输出电流,增加输出电容(10μF+0.1μF) |
| 系统休眠后Sensor无法唤醒 | LDO在休眠时被意外关闭 | 检查regulator-state-mem配置,确保唤醒时LDO重新使能 |
通过以上对PMIC、LDO参数及DTS配置的深入理解,开发者可以精准控制Sensor的供电环境,为后续I2C通信调试打下坚实基础。