Thread 中讨论的其他器件: BQSTUDIO
工具与软件:
您好!
我现在正在尝试访问电池组上 BQ40Z50的寄存器。 电池组 通过 I2C 接口连接到 MCU 而不是 bqStudio。
通过引用 TRM、我使用 ManufacturerBlockAccess ()命令(0x44)读取 MAC 数据。 我尝试按照 TRM 中的示例 在开头访问 Chemical ID。
1. 将 Chemical ID ()发送给 ManufacturerBlockAccess ()
- SMBus 块写入:0x0B+W | 0x44 | 0x02 | 0x06 | 0x00
2. SMBus 块读取:0x0B+w | 0x44 | STA | 0x0B+R、返回的数据为 0x16 0x00 0x00 0x00 ..........
从 TRM 来看、返回值应为四个字节、格式为:0x04 0x06 0x00 0xDD 0xdd。 Chemical ID 命令似乎无法读回正确的值。
为了确保硬件接口正确、我还尝试了0x0001和0x0002命令。 虽然内容可能不正确、但我认为格式符合预期。
返回值0x0001: 0x04 0x01 0x00 0x34、0x9E
返回值0x0002: 0x0D 0x02 0x00 0x9E 0x34 0x00 0x01 0x00 0x16 0x00 0x00 0x02 0x00
有关 ManufacturerBlockAccess ()命令的一些问题。
1. TRM 中的示例在命令0x0006之前发送命令0x0021。 这是必要的步骤吗?
2. Device Type 寄存器(0x0001)的返回值表明其类型为0x9E34。 在哪里可以找到器件类型的定义?
3.固件版本(0x0002)的返回值显示 BQ40Z50的固件版本为0.01。 它是否太旧了、无法支持正确的 MAC 访问?
4.错误的固件版本是否导致读取化学 ID 失败? 或者命令格式有错误?
谢谢。
Todd







