[电池电源管理] 中颖MCU做USB PD快充,协议握手失败怎么破?

[复制链接]
7|1
键盘上的猫 发表于 2026-4-19 08:58 | 显示全部楼层 |阅读模式
最近在搞一个支持USB PD 3.0的快充方案,主控用的中颖SH87F8801(带USB 2.0接口),PD协议芯片用的是CH224K。现在的问题是,和手机握手时经常失败,比如插上去显示“普通充电”(5V/2A),而不是PD快充(9V/2A)。
查了资料,PD协议握手需要先通过CC线通信,CH224K会检测CC线的电压,然后请求对应的电压档位。但用示波器测CC线,发现电压一直在0.6V和1.2V之间跳,不稳定。是不是上拉电阻的问题?CH224K的CC线需要接5.1kΩ上拉电阻到VCC,我用的1%精度,会不会偏差太大?
还有,SH87F8801通过I2C控制CH224K,比如设置输出电压档位(5V/9V/12V),但I2C通信偶尔会超时。是不是I2C的时钟频率设太高了?我设的是400kHz,要不要降到100kHz?还有,I2C的上拉电阻用4.7kΩ,会不会太小,导致上升沿太陡,干扰通信?
另外,软件上的握手流程有没有讲究?比如先检测CC线电压,确认连接后,再通过I2C发送PD请求报文,然后等待CH224K的ACK。但实际用的时候,比如发送请求后,CH224K没回应,是不是需要重试?比如重试3次,每次间隔100ms?


szt1993 发表于 2026-4-25 09:56 | 显示全部楼层
理论上不应该的,硬件问题?还是报文?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

54

主题

54

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部
0