pm8909的adc内部架构如图所示(参考《80-nn174-58_b_pmic_adc_software_user_guide.pdf》):


MPP configuration就是在设备树里配置:
pm8909_mpps: mpps {
compatible = “qcom,qpnp-pin”;
spmi-dev-container;
gpio-controller;
#gpio-cells = <2>;
#address-cells = <1>;
#size-cells = <1>;
label = “pm8909-mpp”;
……
mpp@a300 { //配置a300是第4个mpp
reg = <0xa300 0x100>;
qcom,pin-num = <4>;
};
};
&pm8909_mpps {
……
mpp@a300 { /* MPP 4 */
qcom,mode = <4>; /功能选择 4:AIN input /
qcom,invert = <1>; / Disable invert / 输入功能的话,这个值设为0,1没有影响
qcom,ain-route = <3>; / AMUX 8 / QPNP_PIN_AIN_AMUX_CH8 = 3, (MPP)
//这里的amux8是指结构框图前面的mux的输入为8(见标识),并不是表格中的am

本文档介绍了如何配置PM8909的MPP4脚作为外部ADC输入,详细阐述了在设备树中的配置过程,包括功能选择、AMUX通道设置以及读取特定通道进行电压测量的方法。测试部分展示了读取P_MUX4_1_1通道的示例代码,并提及通过更改通道注册以适应0-5V范围的测量。
最低0.47元/天 解锁文章
2431

被折叠的 条评论
为什么被折叠?



