前言在移动电源领域英集芯的电源管理IC市场占有率还是蛮高的基本上这个行业领域里面的或多或少都用过英集芯的电源管理IC他们家的IC有一个好处就是集成了DC-DC和快充协议开发起来相对简单不需要考虑协议层面的逻辑但是弊端也很明显那就是容易发热。经常使用英集芯的IC的小伙伴可能会遇到过一些奇奇怪怪的问题看起来没有逻辑后来复盘发现是寄存器操作没有严格按照规格书导致固件出现了不可预期的结果那今天我们就展开讲一下开发的过程中有哪些需要注意的事情希望能给你一些指引。一、I2C interface英集芯的电源管理IC都是通过IIC接口通信开发之前一定要先认真仔细看一下寄存器规格书的前几页这里面详细介绍了通信时的注意事项一定要按照要求来实现尤其是标红的字体更要注意不然就会出现不可预期的结果。IIC总线通信延时注意事项如下图通过逻辑分析仪抓取的波形数据如下如寄存器读取的时候就按照逻辑分析仪抓取的总线通信的方式实现就是每个ACK之间要延时50us这样数据才能正常读上来。另外下面红色字体提示读写寄存器时要单字节读写不能连续读写。当然你可以不信邪你试试你的数据应该是上不来的这些都是实践中总结的经验。二、寄存器写入操作通信的过程中有读寄存器也有写寄存器如需要操作写寄存器时必须先读出来再进行计算后再写回到寄存器中不能直接写进去尤其是未开放的bit是禁止写的误写会导致固件出奇怪的问题有可能程序乱跑完全不按功能执行。比如像下图的寄存器这个寄存器写入操作时bit0-bit2是预留部分千万不能操作这三个位的数据固件有可能做了其他用途没有开发出来而已。如果你还不信邪不小心操作了一旦出现了问题问题排查到你怀疑人生。三、寄存器读取目录里面分为可读可写操作寄存器只读状态指示寄存器我们看到这一栏下面有很多的寄存器数据比如充电状态指示寄存器、快充状态指示寄存器、VBAT电压寄存器、VOUT输出电流寄存器等等可以根据获取数据的需求去采集对应的寄存器即可。可读寄存器列表如下图四、总结通过以上了解上手起来相对不难但是要会用要按照要求去使用一般来说没有什么问题但如果你没有按照他的套路来那它随时会发脾气有时候排查问题排查到你脑壳子疼归纳一下主要有以下几点-IIC总线通讯通讯的时候按照要求该延时就要延时每个IC个不同-寄存器操作要求保留位不能操作按照规范先读后写再回读一般没啥问题。
阅读完成 · 觉得有帮助?