关于BQ34Z100 芯片 I2C无法正常读写
TI 工作人员: 我用芯片BQ34Z100电池管理芯片, 当驱动I2C总线的时候, BQ34Z100没有ACK 。 为什么会出现这种情况?
实际上gauge已经给出ACK了。在10101010 后的位为0,
您是如何判断gauge没有给出ACK的?
我发AA的时候 有这种情况,但是我发AB没有ACK。 最后一位是0会出现上图波形,最后一位是1时候,第9个时钟全是高电平。
- 11
Hi
需要检查一下上拉电阻的大小,可能是电阻过小,超过电量计sink的电流能力。
原理图在这里,帮忙分析下 谢谢!
原理图在这里,帮忙分析下 谢谢!
从原理图没看出影响I2C通信的地方,电阻取值与BQ34Z100参考电路一致。
请问你的主机是什么?是用EV2400连接EVSW 吗?
如果用EVSW的话,不需要你写AB,你在I2C的地址写AA后EVSW驱动会自动完成。
如果还没用EVSW,建议你请EVSW试试,看看是否显示"communication OK".
与BQ34Z100通信是 由FPGA的I2C模块完成。 你提到的EV2400 没有使用。 EVSW没用
这款芯片,是否I2C时序正确,就可以读写正常 ,还是需要其他的什么外部条件?
这款芯片支持标准的I2C通信协议。
与它正确通信有三个条件:
(1)确保芯片正常工作,可以查芯片引脚REG25看是否输出2.5V来判断;
(2)I2C通过上拉电阻接高电平;
(3)I2C时序正确,可以参考BQ34Z100 DATASHEET 第28页I2C INTERFACE的描述。
REG25电压 2.39V ,I2C没有上拉电阻(标准电路), I2C时序发送 AA 没有ACK 。 所以后面的命令无法写入。 时序图就是前面发送的示波器抓的波形。这中间有什么问题?
从你发的第一张图看,BQ34Z100已经回复ACK了。时序:start+1010101(address)+0+0(ACK)+cmd+...
地址前一位0代表ACK,1代表NACK。
给你看一个波形图:
REG25电压 2.39V说明芯片没有问题。
I2C需要上拉电阻,因为SDA/SCL是开漏输出(OD),可参考BQ34Z100 EVM的电路,一般10K的即可。
(1) 购买 EV2400 对我的问题处理有帮助吗?如果需要,EV2300 能否满足要求。EV2300 价格便宜些;
(2)我在 datasheet 上看到,The bq34z100 is shipped in the I2C mode. TI provides tools to enable the HDQ peripheral。
我们的片子是否会工作在 HDQ 模式了? 如何确认我的芯片现在工作在哪种模式?
GuangHui你好,
第一,你的bq34z100是从哪里采购的?如果是全新的,那它一定是在I2C模式。用TI 的EVSW软件可以把它切换到HDQ模式,一旦切换到HDQ就回不到I2C了。从你发的第一张波形图来看,I2C有一个ACK响应,说明该芯片还是在I2C模式。
第二,建议你发常规的命令比如00,再观察I2C波形,并发给我看看。从你发的第一个波形图看不出你发的是什么命令。你可以重测一次吗?把你发的命令和波形发来看看?
第三,EV2400自带上拉电阻,EV2300没有上拉电阻,我看你的电路图里没有上拉电阻,如果想用的2300的话要外接上拉电阻。建议你用EV2400或EV2300测试下此芯片。
新芯片BQ34Z100是否已经烧了固件?我用 EV2300上面提示没有ACK
EV2300连接的情况 什么地方不对?
我在使用EV2300的过程中也遇到同样的问题,请问楼主问题解决了吗?
你好,你的问题解决了吗?
我也是用FPGA模块来控制这个芯片,但是发送0xAA后,没有ACK,请问你当时是怎么解决的?
方便交流一下吗?
QQ:540359362
你好,我使用BQ34Z100-G1这个芯片,查看引脚REG25有2.5V,I2C上拉,利用FPGA模块向芯片发送0xAA,没有ACK,请问是怎么回事?
将PACK+和PACK-用外加的电源用小电流充一下电看能不能通讯了。