沁恒PD协议诱骗芯片CH224A/CH224Q--IIC研究(0x60~0x8F)

【本文发布于https://blog.csdn.net/Stack_/article/details/157063794,未经允许不得转载,转载须注明出处】

一、硬件

IIC通讯只有在单电阻模式下才会启用。

如果CFG1下拉10K电阻,CFG2、CFG3和MCU连接,插上充电器瞬间就输出9V了而且IIC功能是不可用的,也就是说要使用IIC功能则CFG1下拉电阻必须是手册中列出的电阻值,否则会进入"IO电平配置"模式。

这就存在一个问题:单电阻模式没有5V输出的配置,在开始进行IIC通信的时候就已经输出9V或以上电压了。如有必要,添加一个PMOS进行控制电压输出

CC1 CC2无需5.1K下拉,CH224内部已集成。

二、读取Source端即充电器端信息


这是PowerZ读取到的信息,开头2字节是信息头,后面每4个字节对应一个PDO,对应CH224A的0x60~0x8F寄存器,均为小端字节序

1、Header [CH224的0x60、0x61寄存器]


这里我们重点关注bit[14:12],知道有多少个PDO就知道后面有多少字节有效数据

2、PDOx [CH224的0x62-0x65、0x66-0x69、...]


每个PDO高两位指示该档位是固定电压还是PPS


固定电压则按此格式进行解析


PPS则按此格式进行解析


按以上协议解析PowerZ读取到的数据,和PowerZ解析的结果是吻合的

三、单片机读取与控制

IIC通信就是通用的时序,这个没什么好讲的。


将所有寄存器值读出,0x60寄存器开始可以看到有2字节Header和7个PDO


解析Source信息

读取到有效的PDO之后向0x0A和0x53写数据即可调整输出电压

相关推荐
悠哉悠哉愿意3 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
Lester_11013 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
三佛科技-187366133973 天前
120W小体积碳化硅电源方案(LP8841SC极简方案12V10A/24V5A输出)
单片机·嵌入式硬件
z20348315203 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
PM老周3 天前
2026年软硬件一体化项目管理软件怎么选?多款工具对比测评
java·安全·硬件工程·团队开发·个人开发
Alaso_shuang3 天前
STM32 核心输入、输出模式
stm32·单片机·嵌入式硬件
2501_918126913 天前
stm32死锁是怎么实现的
stm32·单片机·嵌入式硬件·学习·个人开发
z20348315203 天前
STM32F103系列单片机定时器介绍(一)
stm32·单片机
星马梦缘3 天前
驱动层开发——蜂鸣器驱动
stm32·单片机·嵌入式硬件·hal·驱动
小刘爱玩单片机3 天前
【stm32简单外设篇】- 测速传感器模块(光电)
c语言·stm32·单片机·嵌入式硬件