英集芯-IP5385 IIC通信异常原因深入分析及解决方案 21

简介

IP5385是英集芯的一款充电管理IC,支持 SCP、 PD3.0、 UFCS 等快充协议, 支持 2~6 节串联电池, 集成升降压驱动, 最大功率 100W 的移动电源 SOC。

我们这里的应用是55W快充,具体的详细参数如下:

输入规格:Type-C1/Type-C2 (5V/3A,9V/3A,12V/2.5A,15V/2A,20V/1.5A);

输出规格为:Type-C1/Type-C2 : 5V3A 9V3A 10V2.25A 12V3A 15V3A 20V2.25A 5-11V5A,5~20V/2.5A;

USB-A: 10V2.25A 5V3A 9V2.0A 12V1.5A, C1+C2+A: 5V3A。

我们在产品调试过程中发现一个奇怪的问题,这里做一下简单的总结,和大家分享一下。

一、发现问题

我们这里的应用场景是一主两从,主机是MCU,从机一个是IP5385,另一个是其他IC。

我们遇到的奇怪的问题现象是这样的:首先,MCU读的IP5385寄存器数据都是正常的,包括充放电状态、小电流状态、快充状态、电压、电流、NTC等都正常,打印出来看到的数据可以看得出来,但是逻辑分析仪抓取的IP5385的寄存器数据确实有问题的,很奇怪,这是无意中发现的。

奇怪的数据如下:

这里的0xEA就是IP5385的写地址,这里都是读寄存器,正常来说写地址之后,就是寄存器地址,然后是读地址,读出来的寄存器数据,但是,IP5385的寄存器数据所有都是写地址之后,是寄存器地址,紧接着却是写进去数据了,而且还是ACK应答,奇怪吧,从业这么多年还是第一次遇到呢。

详细的寄存器数据如下:

但是,转折来了,另一个从机IC的IIC通信却是正常的,寄存器读取都是OK,下面把寄存器数据贴出来,对比看看。

此刻,脑袋里呈现黑人问号,纳尼,这啥情况?下面我们跟着思路分析一波。

二、分析问题

根据个人经验,这有可能是时序有问题,于是,用示波器抓波形分析。

示波器抓取波形数据如下:

从波形来看时序和数据都是OK的,这是软件模拟的IIC,所以波形没有那么精准。但看起来都是正常的,分析到此时,没有了思路。

别慌,这时候千万要稳住,以往的经历告诉我,遇到再大的难题,千万不要着急,最终问题都会被解决,信心很重要。

好了,我们来回顾一下问题点。IP5385寄存器读取打印OK,逻辑分析仪抓取异常,另一个从机打印数据OK,逻辑分析仪抓取OK,那么差异点在逻辑分析抓取数据这里,通过时序来看IP5385写寄存器地址之后,本来应该读的,直接开始写了,噢,为什么没有读呢?难道时序出了问题?

经验告诉我,遇到奇怪问题难以分析时,去看规格书,一行一行认真看,答案就藏在规格书中某一行文字中。

于是,我开始看IP5385的寄存器规格书,一行一行看。

终于,我找到了这样几行文字,还是标红的,说明很重要,如下图:

我接着往下看,看到有一个寄存器读取的示例,如下图:

再对比看看自己的驱动波形,嗯,于是,心中有了解决思路,开始动手调试验证。

三、解决问题

首先,我们按照规格书提供的示例,调试IIC驱动,在发送从机写地址、片内地址、读地址的后面加一个延时50us。

IIC通信时序按照规格书修改,如下图:

改完之后,烧录程序验证,用逻辑分析仪抓取数据,哎,发现数据正常了,这个寄存器数据看起来是那么优美,就像我此刻的心情一样,美美哒。

单个数据正常的截图如下:

逻辑分析仪抓取寄存器读取如下图:

四、总结

通过这个时序问题的发现、解决过程,说明一个现象,问题往往出在很小的地方,所以,各位Engineer,遇到问题不要慌,思路要清晰,在没有头绪的时候看看规格书,总会找到答案。

还有一点,我们在做项目的时候,一定要认真对待,要有敬畏之心,每一个项目都要尽全力去做,每一个问题都要刨根问题,日积月累,必有所得。

相关推荐
XINVRY-FPGA12 小时前
XC3S1000-4FGG320I Xilinx AMD Spartan-3 SRAM-based FPGA
嵌入式硬件·机器学习·计算机视觉·fpga开发·硬件工程·dsp开发·fpga
猫猫的小茶馆14 小时前
【ARM】ARM的介绍
c语言·开发语言·arm开发·stm32·单片机·嵌入式硬件·物联网
猫猫的小茶馆14 小时前
【PCB工艺】数模电及射频电路基础
驱动开发·stm32·单片机·嵌入式硬件·mcu·物联网·pcb工艺
点灯小铭15 小时前
基于单片机的智能药物盒设计与实现
数据库·单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
梓德原15 小时前
【基础】详细分析带隙型稳压电路的工作原理
单片机·嵌入式硬件·物联网
国科安芯16 小时前
航天医疗领域AS32S601芯片的性能分析与适配性探讨
大数据·网络·人工智能·单片机·嵌入式硬件·fpga开发·性能优化
小李做物联网17 小时前
【物联网毕业设计】60.1基于单片机物联网嵌入式项目程序开发之图像厨房监测系统
stm32·单片机·嵌入式硬件·物联网
贝塔实验室18 小时前
新手如何使用Altium Designer创建第一张原理图(三)
arm开发·单片机·嵌入式硬件·fpga开发·射频工程·基带工程·嵌入式实时数据库
@good_good_study18 小时前
STM32 ADC多通道采样实验
stm32·单片机·嵌入式硬件
Darken0318 小时前
什么是“位带”?;在STM32单片机中有什么作用?
stm32·单片机·嵌入式硬件