沁恒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写数据即可调整输出电压

相关推荐
嵌入式老牛2 小时前
HC32F460_ADC驱动(三)
单片机·嵌入式硬件
秀秀更健康3 小时前
stm32: 系统时钟如何配置为72Mhz
stm32·单片机·嵌入式硬件
归零鸟8 小时前
WD Elements移动硬盘能识别出盘但不能出盘的修复记录
stm32·单片机·嵌入式硬件
追兮兮9 小时前
MCUQuickStart v1.1.0发布,一键生成Keil工程+RTOS模板
stm32·单片机·嵌入式硬件·freertos·gd32·keil5
国科安芯9 小时前
ASP7A84AS与主流架构兼容替代及系统级电源完整性解决方案的深度研究
单片机·嵌入式硬件·架构
kaikaile199510 小时前
STC8单片机实现简单花样DMX512控制器
单片机·嵌入式硬件
rit843249910 小时前
STM32移植NES模拟器指南
stm32·单片机·嵌入式硬件
fengfuyao98510 小时前
STM32 HAL库实现串口DMA接收不定长数据
stm32·单片机·嵌入式硬件
yuan1999710 小时前
STM32直流无刷电机六拍方波控制器程序
stm32·单片机·嵌入式硬件