Quantcast
Channel: Power management forum - Recent Threads
Viewing all articles
Browse latest Browse all 35901

BQ27541-G1 Programming

$
0
0

I am working on a design containing a BQ27541-G1 Fuel Gauge.  (I realize that this part is not recommended for new designs, but the customer chose this part because of a companion product with the same Gauge).

I have been going over the data sheet, attempting to learn how to communicate with the part, and how to program various areas of the data flash.  I have a few questions, but I'll start with the simplest first.  Eventually, I'll be getting at programming the Golden Image, but first some basics.

In the data sheet, Standard Data Commands have a two byte command code.  For example, say I want to read the CONTROL_STATUS byte.  Control() has a command code of "0x00 and 0x01" and CONTROL_STATUS has a sub-command of 0x0000.  I don't see in the datasheet how the I2C transactions flow with these two byte commands and a sub-command word.  I see some I2C message structures on page 27, but I don't see the two-byte command code referenced.  Can you tell me how this works?  Something like this?


Read CONTROL_STATUS byte:

I2C Start Condition

Send I2C Addr (0x55) + W

Send 0x00 (MSB control())

Send 0x01 (LSB control())

Send 0x00 (MSB sub-command)

Send 0x00 (LSB sub-command)

I2C Restart

Send I2C Addr (0x55) + R

Receive CONTROL_STATUS byte

I2C Stop Condition


Thanks for your help.


Viewing all articles
Browse latest Browse all 35901

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>