TI 工作人员: 我用芯片BQ34Z100电池管理芯片, 当驱动I2C总线的时候, BQ34Z100没有ACK 。 为什么会出现这种情况?
Cheng.W:
实际上gauge已经给出ACK了。在10101010 后的位为0,
您是如何判断gauge没有给出ACK的?
GuangHui fu:
回复 Cheng.W:
我发AA的时候 有这种情况,但是我发AB没有ACK。 最后一位是0会出现上图波形,最后一位是1时候,第9个时钟全是高电平。
GuangHui fu:
回复 Cheng.W:
11
Cheng.W:
回复 GuangHui fu:
Hi
需要检查一下上拉电阻的大小,可能是电阻过小,超过电量计sink的电流能力。
GuangHui fu:
回复 Cheng.W:
原理图在这里,帮忙分析下 谢谢!
GuangHui fu:
回复 Cheng.W:
原理图在这里,帮忙分析下 谢谢!
Mingmo Zhu:
回复 GuangHui fu:
从原理图没看出影响I2C通信的地方,电阻取值与BQ34Z100参考电路一致。
请问你的主机是什么?是用EV2400连接EVSW 吗?
如果用EVSW的话,不需要你写AB,你在I2C的地址写AA后EVSW驱动会自动完成。
如果还没用EVSW,建议你请EVSW试试,看看是否显示"communication OK".
GuangHui fu:
回复 Mingmo Zhu:
与BQ34Z100通信是 由FPGA的I2C模块完成。 你提到的EV2400 没有使用。 EVSW没用
GuangHui fu:
回复 Mingmo Zhu:
这款芯片,是否I2C时序正确,就可以读写正常 ,还是需要其他的什么外部条件?
Mingmo Zhu:
回复 GuangHui fu:
这款芯片支持标准的I2C通信协议。
与它正确通信有三个条件:
(1)确保芯片正常工作,可以查芯片引脚REG25看是否输出2.5V来判断;
(2)I2C通过上拉电阻接高电平;
(3)I2C时序正确,可以参考BQ34Z100 DATASHEET 第28页I2C INTERFACE的描述。
TI中文支持网

