TI中文支持网
TI专业的中文技术问题搜集分享网站

BQ40Z50: 通讯问题

Part Number:BQ40Z50Other Parts Discussed in Thread: EV2400, BQSTUDIO

最近有个项目需要用到BQ40Z50,但是在单片机和BQ40Z50通讯时,在发送地址0x16后,BQ40Z50一直没有给应答,程序一直卡在这里,使用的是硬件I2C,VCC为3.3V,且这些频率都测试过(10k,50k,100k,400k),但是都不行,有没有用过的朋友可以解答一下

Star Xu:

您好,建议您用BQSTUDIO通讯验证能正常通讯,再用EV2400只读取一个数,如电池电压,然后用示波器把i2c的波形抓取下来。再抓一下自己软件编写的的i2c波形,同样读取这个电压,看看两者有什么区别,很快就能定位到问题。比如ACK信号有没有?发送地址对不对?发送命令时序对不对等。

,

?? ?:

之前用硬件I2C发送完器件地址0x16后BQ40Z50没有给应答,现在换成软件模拟I2C测试并用示波器抓了一下波形,发现发送完器件地址后BQ40Z50给应答了,但是继续发送内部寄存器地址0x09后,又没有给应答了

,

Star Xu:

您好,Please refer to 7.33 Timing Requirements: SMBus for clock timing and data hold times. It should match Figure 4. SMBus Timing Diagram in datasheet.

,

?? ?:

好的,谢谢您的回答

,

Star Xu:

你好,如果还是不能通讯建议检查硬件是否有问题。如果有评估板建议用评估板做一下验证。

,

?? ?:

问题以解决,总结一下:BQ40Z50写通信地址:0x16,读通信地址:0x17,如果发送完器件地址且应答后,在发送完内部寄存器地址后需等待85us以上(应答位在85us后才出现,保险起见,我在程序中等待了90us),另外通信两根线的上拉电阻阻值不能过小(过小通信时BQ40Z50可能不应答),我用的是20k电阻

,

Star Xu:

您好,很高心您的问题已解决,感谢分享经验。

赞(0)
未经允许不得转载:TI中文支持网 » BQ40Z50: 通讯问题
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1