你好,TI的专家们
我现在有个项目使用 BQ40Z60 芯片进行电池管理。
按照 sluua04b 中 第 11 章 内容:
Example: Read Chemical ID() (0x0006) via AlternateManufacturerAccess()
1. Send Chemical ID() to AlternateManufacturerAccess().
(a) SMBus block write. Command = 0x44. Data sent = 06 00 (data must be sent in little endian)
2. Read the result from AlternateManufacturerAccess().
(a) SMBus block read. Command = 0x44. Data read = 06 00 00 01 (each data entity is returned in little endian).
(b) The first 2 bytes, “06 00”, is the MAC command.
(c) The second 2 bytes, “00 01”, is the chem ID returning in little endian. That is 0x0100, chem ID 100.
使用 API 依次向0xC0写入:0x44 0x06 0x00 三个数据,
再写入:0x44,
然后从0xC1中读取4个数据,取出数据为:0x06 0x00 0x00 0x18
基于此方式,访问 0x0000~0x0006 这几条命令,回读的数据都相同,感觉哪里不对,请帮忙分析一下,谢谢
Hugo Zhang:
先要确认一下实际的Chem ID是否是1800。
建议用bqStudio来测试一下:往0x44写0x06 0x00,然后从0x44读取4byte数据。