0
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心
发布
  • 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
BQ27350PWR

BQ27350PWR

  • 厂商:

    BURR-BROWN(德州仪器)

  • 封装:

    TSSOP20

  • 描述:

    IC BATT FUEL MGR LI-ION 20-TSSOP

  • 数据手册
  • 价格&库存
BQ27350PWR 数据手册
bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 Single Cell Li-Ion/Li-Polymer Battery Manager With Impedance Track Fuel Gauge Technology Check for Samples: bq27350 1 INTRODUCTION 1.1 FEATURES • Comprehensive Battery Fuel Gauge for Single Cell and 1-Series Li-Ion/Li-Polymer Applications • Secure Battery Authentication Using SHA-1/HMAC Encryption • Calculates and Reports – Remaining Battery Capacity – Battery Voltage and Temperature – Charge and Discharge Current – Four Time-to-Empty Predictions • Battery Fuel Gauge Based on Patented Impedance Track™ Technology – Models the Battery Discharge Curve for Accurate Time-to-Empty Predictions – Automatically Adjusts for Battery Aging, Battery Self Discharge, and Temperature/Rate Inefficiencies – Low Value Sense Resistor (10mΩ or Less) • 96-Bytes Non-Volatile Scratch Pad Data Memory • I2C Communications Interface to the Host • 20-Pin TSSOP Package 12 1.2 • • APPLICATIONS • • • • Smartphones PDAs Digital Cameras Handheld Terminals 1.3 DESCRIPTION The Texas Instruments’ bq27350 is a battery fuel gauge with secure authentication support for single cell Li-Ion/Li-Polymer battery packs. Designed for battery pack integration, the device requires little host microcontroller firmware support for implementation. The system host processor communicates with the bq27350 over an I2C interface to obtain remaining battery capacity, system run-time predictions, and other critical battery information. The bq27350 uses the patented Impedance Track™ algorithm for its fuel gauging. The gauge provides information such as state-of-charge (%), run-time to empty (min.), charge time to full (min.), battery voltage (V), and pack temperature (°C). The bq27350 also features both integrated and external support for secure battery pack authentication, using the SHA-1/HMAC authentication algorithm. POS Terminals Industrial Data Collection TYPICAL IMPLEMENTATION PACK+ SCLK SDATA Single-Cell Protector bq27350 Impedance Track™ SHA-1/HMAC Authentication and Manufacturing Data Storage LDO bq26100 SHA-1/HMAC Authentication (optional) * PACK*Optional Thermistor 1 2 Please be aware that an important notice concerning availability, standard warranty, and use in critical applications of Texas Instruments semiconductor products and disclaimers thereto appears at the end of this data sheet. Impedance Track is a trademark of Texas Instruments. PRODUCTION DATA information is current as of publication date. Products conform to specifications per the terms of the Texas Instruments standard warranty. Production processing does not necessarily include testing of all parameters. Copyright © 2007–2009, Texas Instruments Incorporated bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 1 2 3 ......................................... 1.1 FEATURES .......................................... 1.2 APPLICATIONS ...................................... 1.3 DESCRIPTION ....................................... DEVICE INFORMATION ................................ 2.1 AVAILABLE OPTIONS ............................... 2.2 PIN DIAGRAM ....................................... 2.3 TERMINAL FUNCTIONS ............................ ELECTRICAL SPECIFICATIONS ..................... 3.1 ABSOLUTE MAXIMUM RATINGS .................. 3.2 RECOMMENDED OPERATING CONDITIONS ..... 3.3 POWER-ON RESET ................................. INTRODUCTION 3.4 TEMPERATURE SENSOR CHARACTERISTICS 3.5 LOW FREQUENCY OSCILLATOR 3.6 3.7 3.8 3.9 4 2 www.ti.com ........................................................ .................. HIGH FREQUENCY OSCILLATOR ................. 4.1 DATA COMMANDS 1 4.2 EXTENDED DATA COMMANDS 1 4.3 1 4.4 3 4.5 4.6 3 3 3 4 4 4 4 4 5 5 INTEGRATING ADC (COULOMB COUNTER) CHARACTERISTICS ................................ 5 ADC (TEMPERATURE AND CELL VOLTAGE) CHARACTERISTICS ................................ 5 I2C-COMPATIBLE INTERFACE TIMING CHARACTERISTICS ................................ 5 GENERAL DESCRIPTION ............................. .................................. 8 .................. 14 DATA FLASH INTERFACE ........................ 16 MANUFACTURER INFORMATION BLOCKS ...... 16 ACCESS MODES .................................. 17 1 7 ...................................................... .......................... FUNCTIONAL DESCRIPTION ........................ 5.1 FUEL GAUGING ................................... 5.2 IMPEDANCE TRACK VARIABLES ................ 5.3 TEMPERATURE MEASUREMENT ................ 5.4 OVER-TEMPERATURE INDICATION ............. 4.7 5 SEALING/UNSEALING DATA FLASH ACCESS 5.5 DATA FLASH SUMMARY 17 17 19 19 20 22 22 CHARGING AND CHARGE TERMINATION INDICATION ........................................ 22 ................................... ................................ 5.8 AUTOCALIBRATION ............................... 6 COMMUNICATIONS ................................... 6.1 I2C INTERFACE .................................... 6.2 AUTHENTICATION ................................. 7 REFERENCE SCHEMATIC ........................... REVISION HISTORY ........................................ 5.6 POWER MODES 22 5.7 POWER CONTROL 24 Contents 26 26 26 27 28 29 Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 2 DEVICE INFORMATION 2.1 (1) AVAILABLE OPTIONS TA PACKAGE TSSOP (PW) (1) –40°C to 85°C bq27350PW For the most current package and ordering information, see the Package Option Addendum at the end of this document, or see the TI website at www.ti.com. 2.2 PIN DIAGRAM SE VEN TS NC PAUTH AUTH TOUT SDATA NC SCLK 2.3 CELL+ CELLVCC VSS MRST SRN SRP NC NC NC bq27350 TERMINAL FUNCTIONS TERMINAL NAME NO. I/O (1) DESCRIPTION SE 1 I/O System enable. Open-drain output for controlling LDO enable (active low). VEN 2 O Voltage divider enable TS 3 IA Thermistor measurement input if external thermistor selected PAUTH 5 P Positive supply line for powering optional bq26100 AUTH 6 IO Signal line for communicating with optional bq26100 TOUT 7 OA Thermistor power output SDATA 8 I/O I2C Interface bidirectional data line (open-drain) SCLK 10 I/O I2C Interface clock line (open-drain) SRP 14 IA Analog input pin connected to the internal coulomb-counter where SRP is connected to the CELLside of the sense resistor SRN 15 IA Analog input pin connected to the internal coulomb-counter where SRN is connected to the side of the sense resistor nearest PACK– MRST 16 I Master reset of the bq27350 VSS 17 P Power ground of the IC VCC 18 P Power supply of the IC CELL– 19 IA Negative node of differential cell measurement Input CELL+ 20 IA Positive node of differential cell measurement Input 4, 9, 11, 12, 13 NA Pins electrically connected internally, and should be left floating for normal operation. NC (1) I/O = Digital Input/Output, IA = Analog Input, OA = Analog Output, P = Power Connection ELECTRICAL SPECIFICATIONS Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 3 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 www.ti.com 3 ELECTRICAL SPECIFICATIONS 3.1 ABSOLUTE MAXIMUM RATINGS over operating free-air temperature range (unless otherwise noted) (1) PARAMETER VALUE UNIT –0.3 to 2.75 V –0.3 to 6 V VCC Supply voltage range V(IOD) Open-drain I/O pins VI Input voltage range to all other pins –0.3 to VCC + 0.3 V TA Operating free-air temperature range –40 to 85 °C Tstg Storage temperature range –65 to 150 °C (1) Stresses beyond those listed under absolute maximum ratings may cause permanent damage to the device. These are stress ratings only, and functional operation of the device at these or any other conditions beyond those indicated under recommended operating conditions is not implied. Exposure to absolute-maximum-rated conditions for extended periods may affect device reliability. 3.2 RECOMMENDED OPERATING CONDITIONS TA = 25°C, VCC = 2.5 V (unless otherwise noted) PARAMETER TEST CONDITIONS MIN TYP MAX 2.4 2.5 2.6 UNIT VCC Supply Voltage ICC Normal operating mode current (1) No flash programming 150 μA I(SLP) Low-power storage mode current (2) Sleep mode 7.4 μA I(HIBERNATE) Hibernate operating mode current (3) Hibernate mode 1.5 VOL Output voltage low (SDA, VEN) IOL = 0.5 mA VOH Output high voltage (SDA) IOH = –1 mA VIL Input voltage low (SDA, SCL) VIH Input voltage high (SDA, SCL) CIN Input capacitance V(AI1) Input voltage range (CELL+, CELL–, TS) V(AI2) Input voltage range (SRP, SRN) (1) (2) (3) V μA 0.4 VCC–0.5 V V –0.3 0.8 2 6 V 5 pF VSS–0.3 1 V VSS–0.20 0.20 V Load current > sleep current threshold during half of operation. Load current < sleep current threshold during other half. Low-frequency oscillator, I/O support, and IWAKE comparator circuits on. I/O support and IWAKE comparator circuits on. 3.3 POWER-ON RESET TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; Typical Values at TA = 25°C and VCC = 2.5 V (unless otherwise noted) PARAMETER TEST CONDITIONS MIN TYP MAX UNIT VIT– Negative-going input voltage (VCC) 1.7 1.8 1.9 V VHYS Power-on reset hysteresis 50 125 200 mV 3.4 TEMPERATURE SENSOR CHARACTERISTICS TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; Typical Values at TA = 25°C and VCC = 2.5 V (unless otherwise noted) PARAMETER GTEMP 4 TEST CONDITIONS Temperature sensor voltage gain MIN TYP –2.0 ELECTRICAL SPECIFICATIONS MAX UNIT mV/°C Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com 3.5 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 LOW FREQUENCY OSCILLATOR TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; Typical Values at TA = 25°C and VCC = 2.5 V (unless otherwise noted) PARAMETER f(LOSC) f(LEIO) Frequency error t(LSXO) Start-up time (3) (1) (2) (3) TEST CONDITIONS MIN Operating frequency (1) (2) TYP MAX UNIT 32.768 kHz TA = 0°C to 60°C –1.5% 0.25% 1.5% TA = –20°C to 70°C –2.5% 0.25% 2.5% TA = –40°C to 85°C –4.0% 0.25% 4.0% μs 500 The frequency drift is included and measured from the trimmed frequency at VCC = 2.5V, TA = 25°C. The frequency error is measured from 32.768 kHz. The startup time is defined as the time it takes for the oscillator output frequency to be ±3%. 3.6 HIGH FREQUENCY OSCILLATOR TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; Typical Values at TA = 25°C and VCC = 2.5 V (unless otherwise noted) PARAMETER f(OSC) MIN TYP TA = 0°C to 60°C –2.0% 0.25% 2.0% TA = –20°C to 70°C –3.0% 0.25% 3.0% TA = –40°C to 85°C –4.5% 0.25% 4.5% 2.5 5 Operating frequency f(EIO) Frequency error t(SXO) Start-up time (3) (1) (2) (3) TEST CONDITIONS (1) (2) MAX 4.194 UNIT MHz ms The frequency error is measured from 4.194 MHz. The frequency drift is included and measured from the trimmed frequency at VCC = 2.5V, TA = 25°C. The startup time is defined as the time it takes for the oscillator output frequency to be ±3%. 3.7 INTEGRATING ADC (COULOMB COUNTER) CHARACTERISTICS TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; Typical Values at TA = 25°C and VCC = 2.5 V (unless otherwise noted) PARAMETER V(SR) Input voltage range, V(SRN) and V(SRP) TEST CONDITIONS V(SR) = V(SRN) – V(SRP) MIN TYP –0.20 Input offset INL Integral nonlinearity error ZADC_IN Effective input resistance 3.8 UNIT 0.20 Resolution V(SROS) MAX V 16 After Auto-Calibration bits μV 10 ±0.007 ±0.034 % FSR 2.5 MΩ ADC (TEMPERATURE AND CELL VOLTAGE) CHARACTERISTICS TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; Typical Values at TA = 25°C and VCC = 2.5 V (unless otherwise noted) PARAMETER TEST CONDITIONS Input voltage range MIN TYP UNIT 1 Conversion time V 31.5 Effective resolution 14 Effective input resistance 3.9 MAX –0.2 ms 15 bits 8 MΩ I2C-COMPATIBLE INTERFACE TIMING CHARACTERISTICS TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; Typical Values at TA = 25°C and VCC = 2.5 V (unless otherwise noted) PARAMETER tr SCL/SDA rise time tf SCL/SDA fall time tw(H) SCL pulse width (high) tw(L) SCL pulse width (low) TEST CONDITIONS MIN TYP MAX UNIT 1 300 Submit Documentation Feedback Product Folder Link(s): bq27350 ns 4 μs 4.7 μs ELECTRICAL SPECIFICATIONS Copyright © 2007–2009, Texas Instruments Incorporated μs 5 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 www.ti.com I2C-COMPATIBLE INTERFACE TIMING CHARACTERISTICS (continued) TA = –40°C to 85°C, 2.4 V < VCC < 2.6 V; Typical Values at TA = 25°C and VCC = 2.5 V (unless otherwise noted) PARAMETER tsu(STA) Setup for repeated start td(STA) Start to first falling edge of SCL tsu(DAT) Data setup time th(DAT) Data hold time tsu(STOP) Setup time for stop t(BUF) Bus free time between stop and start f(SCL) Clock frequency t(BUSERR) Bus error timeout TEST CONDITIONS MIN TYP MAX UNIT 4.7 μs 4 μs 250 ns Receive mode 0 Transmit mode 300 ns μs 4 μs 4.7 17.3 100 kHz 21.2 s Figure 3-1. I2C-Compatible Interface Timing Diagram 6 ELECTRICAL SPECIFICATIONS Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 4 GENERAL DESCRIPTION The bq27350 accurately predicts the battery capacity and other operational characteristics of a single Li-based rechargeable cell. It can be interrogated by a host processor to provide cell information, such as State-of-Charge (SOC), Time-to-Empty (TTE) and Time-to-Full (TTF). Information is accessed through a series of commands, called Standard Commands. Further capabilities are provided by the additional Extended Commands set. Both sets of commands, indicated by the general format Command( ), are used to read and write information contained within the bq27350’s control and status registers, as well as its data flash locations. Commands are sent from host to gauge using the bq27350’s I2C engine, and can be executed during application development, pack manufacture, or end-equipment operation. Cell information is stored inside the bq27350 in non-volatile flash memory. Many of these data flash locations are accessible during application development and pack manufacture. They cannot, generally, be accessed directly during end-equipment operation. Access to these locations is achieved by either use of the bq27350’s companion evaluation software, through individual commands, or through a sequence of data-flash-access commands. To access a desired data flash location, the correct data flash subclass and offset must be known. The bq27350 provides 96 bytes of user-programmable data flash memory, partitioned into 3 32-byte blocks: Manufacturer Info A, Manufacturer Info B, and Manufacturer Info C. This data space is accessed through a data flash interface. For specifics on accessing the data flash, refer to the section entitled DATA FLASH INTERFACE. The key to the bq27350’s high-accuracy gas gauging prediction is Texas Instrument’s proprietary Impedance Track™ algorithm. This algorithm combines cell measurements, characteristics, and properties to create state-of-charge predictions that can achieve better than 1% accuracy across a wide variety of operating conditions. The bq27350 measures charge/discharge activity by monitoring the voltage across a small-value series sense resistor (5 mΩ to 20 mΩ typical) between the cell negative terminal and the low-side protection FETs. When an application’s load is applied, cell impedance is measured by comparing its Open Circuit Voltage (OCV) with its measured voltage under loading conditions. The bq27350 can use an external NTC thermistor (default is Semitec 103AT) for temperature measurement, or can also be configured to use its internal temperature sensor. The bq27350 uses temperature to monitor the battery-pack environment, which is used for fuel gauging and cell protection functionality. To minimize power consumption, the bq27350 has several power modes: NORMAL, SLEEP, HIBERNATE, and SHUTDOWN. The bq27350 passes automatically between these modes, depending upon the occurrence of specific events, though a host processor can initiate some of these modes directly. More details can be found in the section entitled POWER MODES. A battery-pack-authentication feature is also implemented on the bq27350. A scratch pad area is used to both receive challenge information from a host and export SHA-1/HMAC encrypted responses. The bq27350 can perform the encryption directly, or can act as a pass-through to a bq26100 stand-alone authentication IC. Specifics can be found in the section entitled AUTHENTICATION. NOTE FORMATTING CONVENTIONS: Commands: italics with parentheses and no breaking spaces, e.g. RemainingCapacity( ). Data Flash: italics, bold, and breaking spaces, e.g. Design Capacity Register Bits and Flags: brackets only, e.g. [TDA] Modes and states: ALL CAPITALS, e.g. UNSEALED mode. GENERAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 7 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 4.1 www.ti.com DATA COMMANDS 4.1.1 STANDARD DATA COMMANDS The bq27350 uses a series of 2-byte standard commands to enable host reading and writing of battery information. Each standard command has an associated command-code pair, as indicated in Table 4-1. Two consecutive I2C transmissions must be executed both to initiate the command function, and to read or write the corresponding two bytes of data. Additional options for transferring data, such as spooling, are described in section I2C INTERFACE. Standard commands are accessible in NORMAL operation. Read/write permissions depend on the active access mode. Table 4-1. Standard Commands COMMAND CODE UNITS SEALED ACCESS UNSEALED ACCESS CNTL 0x00 / 0x01 N/A R/W R/W NAME Control( ) AtRate( ) AR 0x02 / 0x03 mA R/W R/W AtRateTimeToEmpty( ) ARTTE 0x04 / 0x05 Minutes R R Temperature( ) TEMP 0x06 / 0x07 0.1°K R R Voltage( ) VOLT 0x08 / 0x09 mV R R FLAGS 0x0a / 0x0b N/A R R NominalAvailableCapacity( ) NAC 0x0c / 0x0d mAh R R FullAvailableCapacity( ) FAC 0x0e / 0x0f mAh R R RemainingCapacity( ) RM 0x10 / 0x11 mAh R R FullChargeCapacity( ) FCC 0x12 / 0x13 mAh R R AI 0x14 / 0x15 mA R R TimeToEmpty( ) TTE 0x16 / 0x17 Minutes R R TimeToFull( ) TTF 0x18 / 0x19 Minutes R R SI 0x1a / 0x1b mA R R STTE 0x1c / 0x1d Minutes R R MLI 0x1e / 0x1f mA R R MLTTE 0x20 / 0x21 Minutes R R AE 0x22 / 0x23 10mWhr R R Flags( ) AverageCurrent( ) StandbyCurrent( ) StandbyTimeToEmpty( ) MaxLoadCurrent( ) MaxLoadTimeToEmpty( ) AvailableEnergy( ) AveragePower( ) AP 0x24 / 0x25 10mW R R TTEatConstantPower( ) TTECP 0x26 / 0x27 Minutes R R Reserved RSVD 0x28 / 0x29 N/A R R CC 0x2a / 0x2b Counts R R SOC 0x2c / 0x2d % R R CycleCount( ) StateOfCharge( ) 8 GENERAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com 4.1.1.1 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 Control( ): 0x00/0x01 Issuing a Control( ) command requires a subsequent two-byte sub-command (little endian format: least-significant byte written to lowest address location). These additional bytes specify the particular control function desired. The Control( ) command allows the host to control specific features of the bq27350 during normal operation and additional features when the bq27350 is in different access modes, as described in Table 4-2. Table 4-2. Control( ) Subcommands CNTL DATA SEALED ACCESS CONTROL STATUS 0x0000 Yes Reports the status of DF Checksum, Hibernate, IT, etc. DEVICE TYPE 0x0001 Yes Reports the device type (eg: "bq27350") FW VERSION 0x0002 Yes Reports the firmware version on the device type HW VERSION 0x0003 Yes Reports the hardware version of the device type DFCHECKSUM 0x0004 No Enables a DF checksum to be generated and reports on a read RESET DATA 0x0005 No Returns reset data Reserved 0x0006 No Not to be used PREV_MACWRITE 0x0007 No Returns previous MAC command code CHEMID 0x0008 Yes Reports the chemical identifier of the ImpedanceTrack™ configuration BOARD OFFSET 0x0009 No Forces the device Board Offset to be measured and stored CC INT OFFSET 0x000b No Forces the device to measure and store the internal CC offset SET HIBERNATE 0x0011 Yes Forces DF:Pack Configuration [HIBERNATE] to 1 CLEAR HIBERNATE 0x0012 Yes Forces DF:Pack Configuration [HIBERNATE] to 0 SEALED 0x0020 No Places the bq27350 in SEALED access mode IT ENABLE 0x0021 No Enables the ImpedanceTrack™ algorithm IFCHECKSUM 0x0022 No Reports the instruction flash checksum CALMODE 0x0040 No Places the bq27350 in calibration mode RESET 0x0041 No Forces a full reset of the bq27350 CNTL FUNCTION DESCRIPTION CONTROL STATUS: 0x0000 Instructs the gas gauge to return status information to Control addresses 0x00/0x01. The status word should include the following information. Table 4-3. CONTROL STATUS Flags Flags( ) High Byte Low Byte bit7 – – bit6 FAS – bit5 SS – FAS = Full access sealed (Sealed = 1) CSV = Indicates a valid DF checksum has been generated BCA = Board calibration active RUP_DIS = Indicates Ra table updates disabled QEN = QMAX updates enabled if set bit4 CSV – bit3 CCA LDMD bit2 BCA RUP_DIS bit1 – VOK bit0 – QEN SS = Sealed state (Sealed = 1) CCA = Coulomb counter calibration active LDMD = Indicates Z-track alg, using const. power mode VOK = Indicates voltages are OK for QMAX update if set DEVICE TYPE: 0x0001 Instructs the gas gauge to return the device type to addresses 0x00/0x01. FW_VERSION: 0x0002 Instructs the gas gauge to return the firmware version to addresses 0x00/0x01. GENERAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 9 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 www.ti.com HW_VERSION: 0x0003 Instructs the gas gauge to return the hardware version to addresses 0x00/0x01. DF CHECKSUM: 0x0004 Instructs the gas gauge to compute the checksum of the data flash memory. The checksum value is written and returned to addresses 0x00/0x01 (UNSEALED mode only). The checksum will not be calculated in SEALED mode; however, the checksum value can still be read. RESET_DATA: 0x0005 Instructs the gas gauge to return the reset data to addresses 0x00/0x01, with the low-byte being the number of partial resets and the high-byte the number of full resets. PREV_MACWRITE: 0x0007 Instructs the gas gauge to return the previous command written to addresses 0x00/0x01. CHEM ID: 0x0008 Instructs the gas gauge to return the chemical identifier for the ImpedanceTrack™ configuration to addresses 0x00/0x01. BOARD_OFFSET: 0x0009 Instructs the gas gauge to compute the coulomb counter offset with internal short and without internal short applied across the SR inputs. The difference between the two measurements is the Board Offset. The Board Offset shall be written to data flash and should also be returned to addresses 0x00/0x01. User will need to prevent any charge or discharge current from flowing during the process. This function is only available when the gas gauge is UNSEALED. When SEALED, this command will only read back the Board Offset value stored in data flash. CC_INT_OFFSET: 0x000B Instructs the gas gauge to compute the coulomb counter offset with internal short applied across the SR inputs. The offset value shall be written to Data Flash and should also be returned to addresses 0x00/0x01. This function is only available when the gas gauge is UNSEALED. When SEALED, this command will only read back the CC_INT_OFFSET value stored in data flash. SET_HIBERNATE: 0x0011 Instructs the gas gauge to force Pack Configuration’s [HIBERNATE] bit to 1. This will allow the gauge to enter the HIBERNATE power mode after the transition to SLEEP power state is detected. CLEAR_HIBERNATE: 0x0012 Instructs the gas gauge to force Pack Configuration’s [HIBERNATE] bit to 0. This will prevent the gauge from entering the HIBERNATE power mode after the transition to SLEEP power state is detected. SEALED: 0x0020 Instructs the gas gauge to transition from UNSEALED state to SEALED state. The gas gauge should always be set to SEALED state for use in customer’s end equipment. IT ENABLE: 0x0021 This command forces the gas gauge to begin the Impedance Track™ algorithm, sets UpdateStatus to 0x04 and causes the [VOK] and [QEN] flags to be set in the CONTROL STATUS register. [VOK] is cleared if the voltages are not suitable for a Qmax update. Once set, [QEN] cannot be cleared. This command is only available when the gas gauge is UNSEALED. 10 GENERAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 IF CHECKSUM: 0x0022 This command instructs the gas gauge to compute the instruction flash checksum. In UNSEALED mode, the checksum value is returned to addresses 0x00/0x01. The checksum will not be calculated in SEALED mode; however, the checksum value can still be read. CAL MODE: 0x0040 This command instructs the gas gauge to enter calibration mode. This command is only available when the gas gauge is UNSEALED. RESET : 0x0041 This command instructs the gas gauge to perform a full reset. This command is only available when the gas gauge is UNSEALED. 4.1.1.2 AtRate( ): 0x02/0x03 The AtRate( ) read-/write-word function is the first half of a two-function call-set used to set the AtRate value used in calculations made by the AtRateTimeToEmpty( ) function. The AtRate( ) units are in mA. The AtRate( ) value is a signed integer and both positive and negative values will be interpreted as a discharge current value. The AtRateTimeToEmpty( ) function returns the predicted operating time at the AtRate value of discharge. The default value for AtRate( ) is zero and will force AtRate( ) to return 65535. 4.1.1.3 AtRateTimeToEmpty( ): 0x04/0x05 This read-word function returns an unsigned integer value of the predicted remaining operating time if the battery is discharged at the AtRate( ) value in minutes with a range of 0 to 65534. A value of 65535 indicates AtRate( ) = 0. The gas gauge updates AtRateTimeToEmpty( ) within 1s after the host sets the AtRate( ) value. The gas gauge automatically updates AtRateTimeToEmpty( ) based on the AtRate( ) value every 1s. 4.1.1.4 Temperature( ): 0x06/0x07 This read-word function returns an unsigned integer value of the temperature in units of 0.1°K measured by the gas gauge and has a range of 0 to 6553.5°K. The source of the measured temperature is configured by the [TEMPS] bit in Pack Configuration register (see EXTENDED COMMANDS). Table 4-4. Temperature Sensor Selection 4.1.1.5 TEMPS Temperature( ) source 0 Internal Temperature Sensor 1 TS Input (default) Voltage( ): 0x08/0x09 This read-word function returns an unsigned integer value of the measured cell-pack voltage in mV with a range of 0 to 6000mV. 4.1.1.6 Flags( ): 0x0a/0x0b This read-word function returns the contents of the gas-gauge status register, depicting current operation status. GENERAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 11 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 www.ti.com Table 4-5. Flags Bit Definitions High Byte Low Byte bit7 OTC CC_OFF bit6 OTD – bit5 – – bit4 – – bit3 – FC bit2 XCHG RCA bit1 CHG_INH TDA bit0 CHG DSG OTC = Over-Temperature in Charge condition is detected CC_OFF = Coulomb Counter Offset measurement is being performed OTD = Over-Temperature in Discharge condition is detected FC = Fully Charged, set when Charge termination condition is met RCA = Remaining Capacity Alert XCHG = Charge Suspend Alert (temp outside the range –5°C to 55°C) CHG_INH = Charge Inhibit: unable to begin charging (temp outside the range 0°C to 45°C) TDA = Terminate Discharge Alert CHG = (Fast)charging allowed DSG = Discharging detected 4.1.1.7 NominalAvailableCapacity( ): 0x0c/0x0d This read-only command pair returns the uncompensated (no or light load) battery capacity remaining. Units are 1mAh per bit. 4.1.1.8 FullAvailableCapacity( ): 0x0e/0x0f This read-only command pair returns the uncompensated (no or light load) capacity of the battery when fully charged. Units are 1mAh per bit. FullAvailableCapacity( ) is updated at regular intervals, as specified by the IT algorithm. 4.1.1.9 RemainingCapacity( ): 0x10/0x11 This read-only command pair returns the compensated battery capacity remaining. Units are 1mAh per bit. 4.1.1.10 FullChargeCapacity( ): 0x12/13 This read-only command pair returns the compensated capacity of the battery when fully charged. Units are 1mAh per bit. FullChargeCapacity( ) is updated at regular intervals, as specified by the IT algorithm. 4.1.1.11 AverageCurrent( ): 0x14/0x15 This read-only command pair returns a signed integer value that is the average current flow through the sense resistor. It is updated every 1 second. Units are 1mA per bit. 4.1.1.12 TimeToEmpty( ): 0x16/0x17 This read-only function returns an unsigned integer value of the predicted remaining battery life at the present rate of discharge, in minutes. A value of 65535 indicates battery is not being discharged. 4.1.1.13 TimeToFull( ): 0x18/0x19 This read-only function returns an unsigned integer value of predicted remaining time until the battery reaches full charge, in minutes, based upon AverageCurrent( ). The computation should account for the taper current time extension from the linear TTF computation based on a fixed AverageCurrent( ) rate of charge accumulation. A value of 65535 indicates the battery is not being charged. 4.1.1.14 StandbyCurrent( ): 0x1a/0x1b This read-only function returns a signed integer value of the measured standby current through the sense resistor. The StandbyCurrent( ) is an adaptive measurement. Initially it reports the standby current programmed in Initial Standby, and after spending some time in standby, reports the measured standby current. 12 GENERAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 The register value is updated every 1 second when the measured current is above the Deadband (3mA default) and is less than or equal to 2 x Initial Standby. The first and last values that meet this criteria should not be averaged in, since they may not be stable values. To approximate a 1 minute time constant, each new StandbyCurrent( ) value is computed as follows: StandbyCurrent( )NEW = (239/256) × StandbyCurrent( )OLD + (17/256) × AverageCurrent( ). 4.1.1.15 StandbyTimeToEmpty( ): 0x1c/0x1d This read-only function returns an unsigned integer value of the predicted remaining battery life at the standby rate of discharge, in minutes. The computation should use Nominal Available Capacity (NAC), the uncompensated remaining capacity, for this computation. A value of 65535 indicates battery is not being discharged. 4.1.1.16 MaxLoadCurrent( ): 0x1e/0x1f This read-only function returns a signed integer value, in units of mA, of the maximum load conditions. The MaxLoadCurrent( ) is an adaptive measurement which is initially it reports the maximum load current programmed in Initial Max Load Current. If the measured current is ever greater than Initial Max Load Current, then MaxLoadCurrent( ) updates to the new current. MaxLoadCurrent( ) is reduced to the average of the previous value and Initial Max Load Current whenever the battery is charged to full after a previous discharge to an SOC less than 50%. This prevents the reported value from maintaining an unusually high value. 4.1.1.17 MaxLoadTimeToEmpty( ): 0x20/0x21 This read-only function returns an unsigned integer value of the predicted remaining battery life at the maximum load current discharge rate, in minutes. A value of 65535 indicates that the battery is not being discharged. 4.1.1.18 AvailableEnergy( ): 0x22/0x23 This read-only function returns an unsigned integer value of the predicted charge or energy remaining in the battery. The value is reported in units of mWh. 4.1.1.19 AveragePower( ): 0x24/0x25 This read-word function returns an unsigned integer value of the average power of the current discharge. A value of 0 indicates that the battery is not being discharged. The value is reported in units of mW. 4.1.1.20 TimeToEmptyAtConstantPower( ): 0x26/0x27 This read-only function returns an unsigned integer value of the predicted remaining operating time if the battery is discharged at the AveragePower( ) value in minutes. A value of 65535 indicates AveragePower( ) = 0. The gas gauge automatically updates TimeToEmptyatContantPower( ) based on the AveragePower( ) value every 1s. 4.1.1.21 CycleCount( ): 0x2a/0x2b This read-only function returns an unsigned integer value of the number of cycles the battery has experienced with a range of 0 to 65535. One cycle occurs when accumulated discharge ≥ CC Threshold. 4.1.1.22 StateOfCharge( ): 0x2c/0x2d This read-only function returns an unsigned integer value of the predicted remaining battery capacity expressed as a percentage of FullChargeCapacity( ), with a range of 0 to 100%. GENERAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 13 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 4.2 www.ti.com EXTENDED DATA COMMANDS Extended commands offer additional functionality beyond the standard set of commands. They are used in the same manner; however unlike standard commands, extended commands are not limited to 2-byte words. The number of commands bytes for a given extended command ranges in size from single to multiple bytes, as specified in Table 4-6. For details on the SEALED and UNSEALED states, refer to the section Access Modes. Table 4-6. Extended Data Commands NAME Reserved COMMAND CODE UNITS SEALED ACCESS (1) (2) UNSEALED ACCESS (1) (2) RSVD 0x34 / 0x39 N/A R R PKCFG 0x3a / 0x3b N/A R R DCAP 0x3c / 0x3d mAh R R (2) DFCLS 0x3e N/A N/A R/W DataFlashBlock( ) (2) DFBLK 0x3f N/A R/W R/W A/DF 0x40…0x53 N/A R/W R/W ACKS/DFD 0x54 N/A R/W R/W PackConfiguration( ) DesignCapacity( ) DataFlashClass( ) Authenticate( )/BlockData( ) AuthenticateCheckSum( )/BlockData( ) BlockData( ) DFD 0x55…0x5f N/A R R/W BlockDataCheckSum( ) DFDCKS 0x60 N/A R/W R/W BlockDataControl( ) DFDCNTL 0x61 N/A N/A R/W DNAMELEN 0x62 N/A R R DNAME 0x63...0x69 N/A R R RSVD 0x6a...0x7f N/A R R DeviceNameLength( ) DeviceName( ) Reserved (1) (2) SEALED and UNSEALED states are entered via commands to CNTL 0x00/0x01 In sealed mode, data flash CANNOT be accessed through commands 0x3e and 0x3f. 4.2.1 PackConfiguration( ): 0x3a/0x3b This Read-Word function allows the host to read the configuration of selected features of the bq27350 pertaining to power modes and transitioning between them. These features must set direct by data flash writes to location subclass = 64, offset = 0 while in UNSEALED mode. Only the HIBERNATE function can be modified while SEALED mode with the Control( ) command. Table 4-7. Pack Configuration Bit Definitions Operation Cfg High Byte Low Byte bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 RESCAP SHUTDOWN – HIBERNATE BUSLOW SLEEP – RMFCC – – IWAKE – RSNS1 – RSNS0 TEMPS RESCAP = If set, no-load rate of compensation is applied to the reserve capacity calculation BUSLOW = If set, the Interface Bus being low becomes a requirement to enter SLEEP mode IWAKE/RSNS1/RSNS0 = These bits configure the current wake function (ref. Table 5-3) SHUTDOWN = If set, SE is set high before going into HIBERNATE and set low in NORMAL mode HIBERNATE = If set and conditions are suitable for SLEEP mode, then the gas gauge enters HIBERNATE instead of SLEEP SLEEP = If set, the gas gauge can enter SLEEP mode if operating conditions allow RMFCC = If set, on valid charge termination RM is updated with the value from FCC TEMPS = Selects Temperature( ) source, 0 = Internal, 1 = External 4.2.2 DesignCapacity( ): 0x3c/0x3d SEALED and UNSEALED Access: This command returns the theoretical or nominal capacity of a new pack. The value is stored in Design Capacity and is expressed in mAh. 4.2.3 DataFlashClass( ): 0x3e UNSEALED Access: This command sets the data flash class to be accessed. The class to be accessed should be entered in hexadecimal. 14 GENERAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 SEALED Access: This command is not available in SEALED mode. 4.2.4 DataFlashBlock( ): 0x3f UNSEALED Access: This command sets the data flash block to be accessed. When “0x00” is written to BlockDataControl( ), DataFlashBlock( ) holds the block number of the data flash to be read or written. Example: writing a 0x00 to DataFlashBlock( ) specifies access to the first 32 byte block and a 0x01 specifies access to the second 32 byte block, and so on. SEALED Access: This command directs which data flash block will be accessed by the BlockData( ) command. Writing a 0x00 to DataFlashBlock( ) specifies the BlockData( ) command will transfer authentication data. Issuing a 0x01, 0x02 or 0x03 instructs the BlockData( ) command to transfer Manufacturer Info Blocks A, B, or C, respectively. 4.2.5 AuthenticateData/BlockData( ): 0x40…0x53 UNSEALED Access: This data block has two functions. It is used for the authentication challenge and response and is part of the 32 byte data block when accessing data flash. SEALED Access: It is used for the authentication challenge and response and is part of the 32 byte data block when accessing Manufacturer Info Blocks A, B, or C. 4.2.6 AuthenticateChecksum/BlockData( ): 0x54 UNSEALED Access: This byte holds the authenticate checksum when writing the authentication challenge to the bq27350 and is part of the 32 byte data block when accessing data flash. SEALED Access: This byte holds the authenticate checksum when writing the authentication challenge to the bq27350 and is part of the 32 byte data block when accessing Manufacturer Info Blocks A, B, or C. 4.2.7 BlockData( ): 0x55…0x5f UNSEALED Access: This data block is the remainder of the 32 byte data block when accessing data flash. SEALED Access: This data block is the remainder of the 32 byte data block when accessing Manufacturer Info Blocks A, B, or C. 4.2.8 BlockDataChecksum( ): 0x60 UNSEALED Access: This byte contains the checksum for the 32 bytes of block data read or written to data flash. SEALED Access:This byte contains the checksum for the 32 bytes of block data written to Manufacturer Info Blocks B or C. 4.2.9 BlockDataControl( ): 0x61 UNSEALED Access: This command is used to control data flash access. Writing 0x00 to this command enables BlockData( ) to access general data flash. Writing a 0x01 to this command enablesBlockData( ) to access authentication challenge and response. SEALED Access: This command is not available in SEALED mode. 4.2.10 DeviceNameLength( ): 0x62 UNSEALED and SEALED Access: This byte contains the length of the Device Name. 4.2.11 DeviceName( ): 0x63…0x69 UNSEALED and SEALED Access: This block contains the device name that is programmed in Device Name. GENERAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 15 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 www.ti.com 4.2.12 Reserved – 0x6A – 0x7F 4.3 4.3.1 DATA FLASH INTERFACE ACCESSING THE DATA FLASH The bq27350 data flash is a non-volatile memory that contains bq27350 initialization, default, cell status, calibration, configuration, and user information. The data flash can be accessed in several different ways, depending on what mode the bq27350 is operating in and what data is being accessed. Commonly accessed data flash memory locations, frequently read by a host, are conveniently accessed through specific instructions, already described in the DATA COMMANDS section. These commands are available when the bq27350 is either in UNSEALED or SEALED modes. Most data flash locations, however, can only be accessed in UNSEALED mode by using the bq27350 evaluation software or by performing data flash block transfers. These locations should be optimized and/or fixed during the development and manufacture processes. They become part of a golden pack file and can then be written to multiple battery packs. Once established, the values generally remain unchanged during end-equipment operation. To access data flash locations individually, the block containing the desired data flash location(s) must be transferred to the command register locations, where they can be read to the host or changed directly. This is accomplished by sending the set-up command BlockDataControl( ) (code 0x61) with data 0x00. Up to 32 bytes of data can be read directly from the BlockData( ) command locations 0x40…0x5f, externally altered, then re-written to the BlockData( ) command space. Alternatively, specific locations can be read, altered, and re-written if their corresponding offsets are used to index into the BlockData( ) command space. Finally, data residing in the command space is transferred to data flash, once a correct checksum for the whole block is written to BlockDataChecksum( ) (command number 0x60). Occasionally, a data flash CLASS will be larger than the 32-byte block size. In this case, the DataFlashBlock( ) command is used to designate which 32-byte block the desired locations reside in. The correct command address is then given by 0x40 + offset modulo 32. For example, to access Terminate Voltage in the Gas Gauging class, DataFlashClass( ) is issued 80 (0x50) to set the class. Because the offset is 48, it must reside in the second 32-byte block. Hence DataFlashBlock( ) is issued 0x01 to set the block offset, and the offset used to index into the BlockData( ) memory area is 0x40 + 48 modulo 32 = 0x40 + 16 = 0x40 + 0x10 = 0x50. Reading and writing subclass data are block operations 32 bytes in length. Data can be written in shorter block sizes, however. Blocks can be shorter than 32 bytes in length. Writing these blocks back to data flash will not overwrite data that extends beyond the actual block length. None of the data written to memory are bounded by the bq27350 — the values are not rejected by the gas gauge. Writing an incorrect value may result in hardware failure due to firmware program interpretation of the invalid data. The data written is persistent, so a Power-On-Reset does not resolve the fault. 4.4 MANUFACTURER INFORMATION BLOCKS The bq27350 contains 96 bytes of user programmable data flash storage: Manufacturer Info Block A, Manufacturer Info Block B, Manufacturer Info Block C. The method for accessing these memory locations is slightly different, depending on whether the device is in UNSEALED or SEALED modes. When in UNSEALED mode and “0x00” is written to BlockDataControl( ), accessing the Manufacturer Info Blocks is identical to accessing general data flash locations. First, a DataFlashClass( ) command is used to set the subclass, then a DataFlashBlock( ) command sets the offset for the first data flash address within the subclass. The BlockData( ) command codes contain the referenced data flash data. When writing the data flash, a checksum is expected to be received by BlockDataChecksum( ). Only when the checksum is received and verified is the data actually written to data flash. 16 GENERAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 As an example, the data flash location for Manufacturer Info Block B is defined as having a Subclass = 58 and an Offset = 32 through 63 (32 byte block). The specification of Class = "System Data" is not needed to address Manufacturer Info Block B, but is used instead for grouping purposes when viewing data flash info in the bq27350 evaluation software. When in SEALED mode or “0x01” has been written to BlockDataControl( ), data flash is no longer available in the manner used in UNSEALED mode. Rather than issuing subclass information, a designated Manufacturer Information Block is selected with the DataFlashBlock( ) command. Issuing a 0x01, 0x02, or 0x03 with this command causes the corresponding information block (A, B, or C, respectively) to be transferred to the command space 0x40…0x5f for editing or reading by the host. Upon successful writing of checksum information to BlockDataChecksum( ), the modified block is returned to data flash. Note: Manufacturer Info Block A is "read only" when in SEALED mode. 4.5 ACCESS MODES The bq27350 provides three security modes in which control data flash access permissions according to Table 4-8. Public Access refers to those data flash locations, specified in Table 4-9, that are accessible to the user. Private Access refers to reserved data flash locations used by the bq27350 system. Care should be taken to avoid writing to Private data flash locations when performing block writes in Full Access mode, by following the procedure outlined in ACCESSING THE DATAFLASH. Table 4-8. Data Flash Access Security Mode DF – Public Access BOOTROM N/A DF – Private Access N/A FULL ACCESS R/W R/W UNSEALED R/W R/W SEALED R N/A Although FULL ACCESS and UNSEALED modes appear identical, FULL ACCESS allows the bq27350 to directly transition to BOOTROM mode and write access keys. The UNSEAL mode lacks these abilities. 4.6 SEALING/UNSEALING DATA FLASH ACCESS The bq27350 implements a key-access scheme to transition between SEALED, UNSEALED, and FULL-ACCESS modes. Each transition requires that a unique set of 2 keys be sent to the bq27350 via the Control( ) control command (these keys are unrelated to the keys used for SHA-1/HMAC authentication). The keys must be sent consecutively, with no other data being written to the Control( ) register in between. Note that to avoid conflict, the keys must selected different from the codes presented in the CNTL DATA column of Table 4-2 Control( ) subcommands. When in SEALED mode the Control Status( )’s [SS] bit is set, but when the UNSEAL keys are correctly received by the bq27350, the [SS] bit is cleared. When the full access keys are correctly received then the Control Status( ) [FAS] bit is cleared. Both the sets of keys for each level are 2 bytes each in length and are stored in data flash. The UNSEAL key (stored at Unseal Key 0 and Unseal Key 1) and the FULL-ACCESS key (stored at Full Access Key 0 and Full Access Key 1) can only be updated when in FULL-ACCESS Mode. The order of the bytes entered through the Control( ) command is the reverse of what is read from the part. For example, if the 1st and 2nd word of Unseal Key 0 read returns 0x1234 and 0x5678, then the Control( ) should supply 0x3412 and 0x7856 to unseal the part. 4.7 DATA FLASH SUMMARY Table 4-9 summarizes the data flash locations available to the user, including their default, minimum, and maximum values. GENERAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 17 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 www.ti.com Table 4-9. Data Flash Summary 18 Class Subclass ID Subclass Offset Data Type Min Value Max Value Default Value Units Configuration 2 Safety 0 Configuration 2 Safety 2 OT Chg I2 0 1200 550 0.1°C OT Chg Time U1 0 60 2 Configuration 2 Safety s 3 OT Chg Recovery I2 0 1200 500 0.1°C Configuration 2 Configuration 2 Safety 5 OT Dsg I2 0 1200 600 0.1°C Safety 7 OT Dsg Time U1 0 60 2 Configuration s 2 Safety 8 OT Dsg Recovery I2 0 1200 550 0.1°C Configuration 34 Charge 2 Charging Voltage I2 0 20000 4200 mV Configuration 36 Charge Termination 2 Taper Current I2 0 1000 100 mA Configuration 36 Charge Termination 6 Taper Voltage I2 0 1000 100 mV Configuration 36 Charge Termination 8 Current Taper Window U1 0 60 40 s Configuration 48 Data 0 RCA Set I2 0 700 100 mAh Configuration 48 Data 8 Initial Standby Current I1 –256 0 –10 mA Configuration 48 Data 9 Initial Max Load Current I2 –32767 0 –1000 mA Configuration 48 Data 17 Cycle Count U2 0 65535 0 Count Configuration 48 Data 19 CC Threshold I2 100 32767 1400 mAh Configuration 48 Data 23 Design Capacity I2 0 65535 1500 mAh Configuration 48 Data 39 Device Name S8 x x bq27350 Configuration 49 Discharge 0 TDA Set % I1 –1 100 6 % Configuration 49 Discharge 1 TDA Clear % I1 –1 100 8 % System Data 58 Manufacturer Info 0 – 31 Block A [0 – 31] H1 0x00 0xff 0x00 System Data 58 Manufacturer Info 32 – 63 Block B [0 – 31] H1 0x00 0xff 0x00 System Data 58 Manufacturer Info 64 – 95 Block C [0 – 31] H1 0x00 0xff 0x00 Configuration 64 Registers 0 Pack Configuration H2 0x0000 0xffff 0x0131 Configuration 68 Power 0 Flash Update OK Voltage I2 2400 4200 2800 mV Configuration 68 Power 7 Sleep Current I2 0 100 10 mA Gas Gauging 80 IT Cfg 0 Load Select U1 0 255 1 Gas Gauging 80 IT Cfg 1 Load Mode U1 0 255 0 Gas Gauging 80 IT Cfg 48 Terminate Voltage I2 –32768 32767 3000 Gas Gauging 80 IT Cfg 63 User Rate-mA I2 0 9000 0 mA Gas Gauging 80 IT Cfg 65 User Rate-mW I2 0 14000 0 10mW Gas Gauging 80 IT Cfg 67 Reserve Cap-mAh I2 0 9000 0 mAh Gas Gauging 80 IT Cfg 69 Reserve Cap-mWh I2 0 14000 0 10mWh Gas Gauging 81 Current Thresholds 0 Dsg Current Threshold I2 0 2000 75 mA Gas Gauging 81 Current Thresholds 2 Chg Current Threshold I2 0 2000 75 mA Gas Gauging 81 Current Thresholds 4 Quit Current I2 0 1000 50 mA Gas Gauging 81 Current Thresholds 6 Dsg Relax Time U2 0 8191 1800 s Gas Gauging 81 Current Thresholds 8 Chg Relax Time U1 0 255 60 s Gas Gauging 81 Current Thresholds 9 Quit Relax Time U1 0 63 1 s Gas Gauging 82 State 0 Qmax Cell 0 I2 0 32767 1500 mAh Name GENERAL DESCRIPTION mV Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 Table 4-9. Data Flash Summary (continued) Class Subclass ID Subclass Offset Min Value Max Value Default Value Units Gas Gauging 82 State 2 Qmax Pack Gas Gauging 82 State 6 Update Status I2 0 32767 1500 mAh H1 0x00 0x06 0x0 Gas Gauging 82 State 9 Avg I Last Run Gas Gauging 82 State 11 Avg P Last Run I2 –32768 32767 –2000 mA I2 –32768 32767 –3022 mW Ra Table 88 R_a0 0 Ra Table 88 R_a0 2 – 30 Cell0 R_a flag H2 0x0000 0x0000 0xff55 Cell0 R_a [0 –14] I2 183 183 160 Ra Table 89 R_a0x 0 Ra Table 89 R_a0x 2 – 30 xCell0 R_a flag H2 0xffff 0xffff 0xffff xCell0 R_a [0 –14] I2 183 183 160 Calibration 104 Data Calibration 104 Data 0 CC Gain F4 0.1 4 0.9419 4 CC Delta F4 0.1 4 Calibration 104 0.9419 Data 8 Ref Voltage I2 0 32767 Calibration 1225 104 Data 10 CC Offset I2 –32768 32767 –1667 Calibration 104 Data 12 Board Offset I2 –32767 32767 0 Calibration 104 Data 14 Int Temp Offset I1 –128 127 0 Calibration 104 Data 15 Ext1 Temp Offset I1 –128 127 0 Calibration 107 Current 1 Deadband U1 0 255 3 Name Data Type 2-10 Ω 2-10 Ω mA 5 FUNCTIONAL DESCRIPTION 5.1 FUEL GAUGING The bq27350 measures the cell voltage, temperature, and current to determine battery SOC. The bq27350 monitors charge and discharge activity by sensing the voltage across a small-value resistor (5mΩ to 20 mΩ typ.) between the SRP and SRN pins and in-series with the cell. By integrating charge passing through the battery, the cell’s SOC is adjusted during battery charge or discharge. The total battery capacity is found by comparing states of charge before and after applying the load with the amount of charge passed. When an application load is applied, the impedance of the cell is measured by comparing the OCV obtained from a predefined function for present SOC with the measured voltage under load. Measurements of OCV and charge integration determine chemical state of charge and Chemical Capacity (Qmax). The initial Qmax value is taken from a cell manufacturers' data sheet multiplied by the number of parallel cells. It is also used for the value in Design Capacity. The bq27350 acquires and updates the battery-impedance profile during normal battery usage. It uses this profile, along with SOC and the Qmax value, to determine FullChargeCapacity( ) and StateOfCharge( ) specifically for the present load and temperature. FullChargeCapacity( ) is reported as capacity available from a fully charged battery under the present load and temperature until Voltage( ) reaches the Terminate Voltage. NominalAvailableCapacity( ) and FullAvailableCapacity( ) are the uncompensated (no or light load) versions of RemainingCapacity( ) and FullChargeCapacity( ) respectively. The bq27350 has two flags accessed by the Flags( ) function that warns when the cell’s SOC has fallen to critical levels. When RemainingCapacity( ) falls below the first capacity threshold, specified in RCA Set, the [RCA] (“Remaining Capacity Alert”) flag is set. The flag is cleared once RemainingCapacity( ) rises above RCA Set. All units are in mAh. When StateOfCharge( ) falls below the second capacity threshold, TDA Set %, the [TDA] (“Terminate Discharge Alert”) flag is set, serving as a final discharge warning. If TDA Set % = -1, the flag is inoperative during discharge. Similarly, when StateOfCharge( ) rises above TDA Clear % and the [TDA] flag has already been set, the [TDA] flag will be cleared, provided TDA Set % ≠ –1. All units are in percentages. FUNCTIONAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 19 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 5.2 www.ti.com IMPEDANCE TRACK VARIABLES The bq27350 has several data flash variables that permit the user to customize the Impedance Track algorithm for optimized performance. These variables are dependent upon the power characteristics of the application as well as the cell itself. Load Mode Load Mode is used to select either the constant current or constant power model for the Impedance Track™ algorithm as used in Load Select (see Load Select). When Load Mode is 0, the Constant Current Model is used (default). When 1, the Constant Power Model is used. Load Select Load Select defines the type of power or current model to be used to compute load-compensated capacity in the Impedance Track™ algorithm. If Load Mode = 0 (‘Constant Current’) then the options presented in Table 5-1 are available. Table 5-1. Constant-Current Model Used When Load Mode = 0 LoadSelect Value Current Model Used Average discharge current from previous cycle: There is an internal register that records the average discharge current through each entire discharge cycle. The previous average is stored in this register. 0 Present average discharge current: This is the average discharge current from the beginning of this discharge cycle until present time. 1(default) 2 Average Current: based on AverageCurrent( ) 3 Current: based off of a low-pass-filtered version of AverageCurrent( ) (τ =14s) 4 Design Capacity / 5: C Rate based off of Design Capacity /5 or a C / 5 rate in mA. 5 AtRate (mA): Use whatever current is in AtRate( ) 6 User_Rate-mA: Use the value in User_Rate( ). This gives a completely user configurable method. If Load Mode = 1 (‘Constant Power’) then the following options are available: Table 5-2. Constant-Power Model Used When Load Mode = 1 LoadSelect Value 0 1(default) Power Model Used Average discharge power from previous cycle: There is an internal register that records the average discharge power through each entire discharge cycle. The previous average is stored in this register. Present average discharge power: This is the average discharge power from the beginning of this discharge cycle until present time. 2 Average Current×Voltage: based off the AverageCurrent( ) and Voltage( ). 3 Current ×Voltage: based off of a low-pass-filtered version of AverageCurrent( ) (τ=14s) and Voltage( ) 4 Design Energy / 5: C Rate based off of Design Energy /5 or a C / 5 rate in mA. 5 AtRate (10 mW): Use whatever value is in AtRate( ). 6 User_Rate-10mW: Use the value in User_Rate( ) mW. This gives a completely user configurable method. Reserve Cap-mAh Reserve Cap-mAh determines how much actual remaining capacity exists after reaching 0 RemainingCapacity( ), before Terminate Voltage is reached. A no-load rate of compensation is applied to this reserve. Reserve Cap-mWh Reserve Cap-mWh determines how much actual remaining capacity exists after reaching 0 AvailableEnergy( ), before Terminate Voltage is reached. A no-load rate of compensation is applied to this reserve capacity. 20 FUNCTIONAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 Dsg Current Threshold This register is used as a threshold by many functions in the bq27350 to determine if actual discharge current is flowing into or out of the cell. The default for this register is 100mA which should be sufficient for most applications. This threshold should be set low enough to be below any normal application load current but high enough to prevent noise or drift from affecting the measurement. Chg Current Threshold This register is used as a threshold by many functions in the bq27350 to determine if actual charge current is flowing into or out of the cell. The default for this register is 50mA which should be sufficient for most applications. This threshold should be set low enough to be below any normal charge current but high enough to prevent noise or drift from affecting the measurement. Quit Current, Dsg Relax Time, Chg Relax Time, and Quit Relax Time The Quit Current is used as part of the Impedance Track™ algorithm to determine when the bq27350 enters relaxation mode from a current flowing mode in either the charge direction or the discharge direction. The value of Quit Current is set to a default value of 10mA and should be above the standby current of the host system, but not exceed the C/20 rate.. Either of the following criteria must be met to enter relaxation mode: 1. | AverageCurrent( ) | < | Quit Current | for Dsg Relax Time. 2. | AverageCurrent( ) | < | Quit Current | for Chg Relax Time. After about 30 minutes in relaxation mode, and when voltage change rate satisfies the criteria dV/dt < 4uV/sec, the bq27350 attempts to take accurate OCV readings. If state of charge (SOC) change from the previous OCV reading exceeds 37% when a new reading is taken, the total cell capacity, Qmax, is updated. These updates are used in the Impedance Track™ algorithms. It is critical that the battery voltage be relaxed during OCV readings and that the current is not higher than C/20 when attempting to go into relaxation mode. Quit Relax Time specifies the minimum time required for AverageCurrent( ) to remain above the QuitCurrent threshold before exiting relaxation mode. Qmax Qmax contains the maximum chemical capacity of a cell and is determined by comparing states of charge, before and after applying a load, with the amount of charge that passed. It also corresponds to capacity at very low rate of discharge such as C/20 rate. For high accuracy, this value is periodically updated by the bq27350 during operation. The initial value of Qmax should be set to the battery cell capacity specified in its datasheet. Update Status There are 2 bits in this register that are important – Bit 1 (0x02) indicates that the bq27350 has learned new Qmax parameters and is accurate. – Bit 2 (0x04) indicates whether Impedance Track™ algorithm is enabled. The remaining bits are reserved. Bits 1 and 2 are user-configurable; however, bit 1 is also a status flag that can be set by the bq27350. These bits should never be modified except when creating a golden image file as explained in the application note “Preparing Optimized Default Flash Constants for specific Battery Types” (see SLUA334.pdf). Bit 1 is updated as needed by the bq27350 and Bit 2 is set with Control( ) command 0x0021. Avg I Last Run The bq27350 logs the current averaged from the beginning to the end of each discharge cycle. It stores this average current from the previous discharge cycle in this register. This register should never need to be modified. It is only updated by the bq27350 when required. Avg P Last Run FUNCTIONAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 21 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 www.ti.com The bq27350 logs the power averaged from the beginning to the end of each discharge cycle. It stores this average power from the previous discharge cycle in this register. To get a correct average power reading the bq27350 continuously multiplies instantaneous current times Voltage( ) to get power. It then logs this data to derive the average power. This register should never need to be modified. It is only updated by the bq27350 when the required. The Ra Tables This data is automatically updated during device operation. No user changes should be made except for reading the values from another pre-learned pack for creating “Golden Image Files”. Profiles have format Cell0 R_a M, where M is the number indicating state of charge to which the value corresponds. 5.3 TEMPERATURE MEASUREMENT The bq27350 can measure temperature via the on-chip temperature sensor or via the TS input depending on the setting of the [TEMPS] bit PackConfiguration( ). The bit is set by using the PackConfiguration( ) function, described in the section entitled EXTENDED COMMAND SUMMARY. Temperature measurements are made by calling the Temperature( ) function (see STANDARD COMMANDS for specific information). When an external thermistor input is used, TOUT (pin 7) is used to power the thermistor and TS (pin 3) to measure the thermistor voltage. The bq27350 then correlates the voltage to temperature assuming the thermistor is a Semitec 103AT or similar device. 5.4 OVER-TEMPERATURE INDICATION The bq27350 can set safety flag indications based on measure temperature both in charge and discharge states. Over-Temperature: Charge If during charging, Temperature( ) exceeds the threshold of OT Chg for a period of OT Chg Time and AverageCurrent( ) > Chg Current Threshold, then the [OTC] bit of Flags( ) is set. Note: if OT Chg Time = 0 then feature is completely disabled. When Temperature( ) falls below OT Chg Recovery, the [OTC] of Flags( ) is reset. Over-Temperature: Discharge If, during discharging, Temperature( ) exceeds the threshold of OT Dsg for a period of OT Dsg Time, and AverageCurrent( ) ≤ -Dsg Current Threshold, then the [OTD] bit of Flags( ) is set. Note: if OT Dsg Time = 0 then feature is completely disabled. When Temperature( ) falls below OT Dsg Recovery, the [OTD] bit of Flags( ) is reset. 5.5 CHARGING AND CHARGE TERMINATION INDICATION For proper bq27350 operation, the cell charging voltage must be specified by the user. The default value for this variable is Charging Voltage = 4200mV. The bq27350 detects charge termination when (1) during 2 consecutive periods of Current Taper Window, the AverageCurrent( ) is < Taper Current and (2) during the same periods, the accumulated change in capacity > 0.25mAh /Taper Current Window and (3) Voltage( ) > Charging Voltage Charging Taper Voltage. When this occurs, the [FC] bit of Flags( ) is set and [CHG] bit is cleared. Also, if the [RMFCC] bit of Pack Configuration is set, then RemainingCapacity( ) is set equal to FullChargeCapacity( ) 5.6 POWER MODES The bq27350 has four power modes: NORMAL, SLEEP, HIBERNATE, and SHUTDOWN (in descending 22 FUNCTIONAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 order of power consumption). In NORMAL mode, the bq27350 is fully powered and can execute any allowable task. In SLEEP mode the gas gauge exists in a reduced-power state, periodically taking measurements and performing calculations. In HIBERNATE mode the gas gauge is in its lowest power state, only to be woken by communications activity or an increase in the magnitude of battery current. Finally in SHUTDOWN mode, all bq27350 circuits are turned off and power is removed from the device; the IC can be restarted by reapplying sufficient voltage to the device. The relationship between these modes is shown in Figure 5-1. Details are described in the sections that follow. NORMAL Gas gauging and data updated every1s, Exit From HIBERNATE Interface activity OR Current is Detected above I WAKE OR Device reset Exit From SHUTDOWN 2s after both charger is attached AND Protection FETs close/are closed ICC = Normal Entry to SLEEP PkCfg[SLEEP] =1 AND | AverageCurrent( ) |≤ SleepCurrent AND [( If PkCfg[BUSLOW] = 1 for t BUSLOW ≥ 5 seconds) OR (PkCfg[BUSLOW] = 0 )] HIBERNATE Gas gauging and data updating is OFF Exit From SLEEP |AverageCurrent( )| > SleepCurrent OR Current is Detected above I WAKE OR Interface Activity when PkCfg[BUSLOW] = 1 SHUTDOWN Gas gauging and data updating is OFF ICC = 0 ICC = Hibernate Entry to HIBERNATE PkCfg[HIBERNATE] = 1 AND Entry to SLEEP still conditions met SLEEP Gas gauging and data Updating every 5 seconds ICC = Sleep Exit From PRE _SHUTDOWN Interface activity OR Current is Detected above I WAKE OR Device reset Entry to SHUTDOWN No Charger Present Entry to PRE_SHUTDOWN PkCfg [SHUTDOWN] = 1 PRE_SHUTDOWN Gas gauging and data updating is OFF DSG FET Turned OFF SE pin = High ICC = Hibernate Figure 5-1. Power Mode Diagram 5.6.1 NORMAL MODE The gas gauge is in NORMAL mode when not in any other power mode. During this mode, AverageCurrent( ), Voltage( ) and Temperature( ) measurements are taken, and the interface data set is updated. Decisions to change states are also made. This mode is exited by activating a different power mode. 5.6.2 SLEEP MODE SLEEP mode is entered when (1) AverageCurrent( ) is below a programmable level Sleep Current and (2) if the [BUSLOW] bit of Pack Configuration( ) is set and the data bus (both SCL and SDA low pins) is low for 5s. [SLEEP] bit of Control Status( ) is set when the bq27350 enters SLEEP mode. Once entry to SLEEP has been qualified, but prior to entry to sleep mode, the bq27350 performs an ADC autocalibration FUNCTIONAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 23 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 www.ti.com to minimize offset. Entry into SLEEP mode can be disabled by setting the [SLEEP] bit of Pack Configuration( ), where "0" = disabled and "1" = enabled. During SLEEP mode, the bq27350 periodically wakes to take data measurements and update the data set, after which it then returns directly to SLEEP. The bq27350 exits SLEEP if any entry condition is broken, a change in protection status occurs, or a current in excess of IWAKE through RSENSE is detected. 5.6.3 HIBERNATE MODE To enter HIBERNATE mode, the [HIBERNATE] bit of PackConfiguration( ) needs to be set when the device enters SLEEP mode. The HIBERNATE mode is exited if (1) communication is detected, (2) a device reset occurs, or (3) if current through RSENSE is above IWAKE. If the Pack Configuration [HIBERNATE] bit is cleared, the bq27350 will not enter HIBERNATE mode. Upon exiting HIBERNATE mode, the device is returned to NORMAL mode. 5.6.4 SHUTDOWN MODE SHUTDOWN mode requires the use of an external LDO with an enable feature (active low). To enter SHUTDOWN, the PackConfiguration( ) [SHUTDOWN] bit needs to be set when the bq27350 enters HIBERNATE. A charger must not be present and the DSG FET of protector must be turned OFF. If the [SHUTDOWN] bit of PackConfiguration( ) is set, the bq27350 raise its SE pin high on entry into HIBERNATE. This action, in conjunction with the deactivation of the DSG FET (low-side protector implementation), shuts down the LDO and, hence, the bq27350. The LDO recovers when a charger is applied for more than 2s. 5.7 5.7.1 POWER CONTROL RESET FUNCTIONS When the bq27350 detects either a hardware or software reset (MRST pin driven low or the [RESET] bit of Control( ) initiated, respectively), it determines the type of reset and increments the corresponding counter. This information is accessible by issuing the command Control( ) function with the RESET_DATA subcommand. As shown in Figure 5-2 if a partial reset was detected, a RAM checksum is generated and compared against the previously stored checksum. If the checksum values do not match, the RAM is reinitialized (a “Full Reset”). The stored checksum is updated every time RAM is altered. 24 FUNCTIONAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 DEVICE RESET Generate Active RAM checksum value Stored checksum Do the Checksum Values Match? NO Re-initialize all RAM YES NORMAL OPERATION Active RAM changed ? NO YES Store checksum Generate New checksum value Figure 5-2. Partial Reset Flow Diagram 5.7.2 WAKE-UP COMPARATOR The wake up comparator is used to indicate a change in cell current while the bq27350 is in either Sleep or Hibernate modes. PackConfiguration( ) uses bits [RSNS1-RSNS0] to set the sense resistor selection. PackConfiguration( ) uses the [IWAKE] bit to select one of two possible voltage threshold ranges for the given sense resistor selection. An internal interrupt is generated when the threshold is breached in either charge or discharge directions. A setting of 0x00 of RSNS1..0 disables this feature. Table 5-3. IWAKE Threshold Settings (1) (1) 5.7.3 RSNS1 RSNS0 IWAKE Vth(SRP-SRN) 0 0 0 Disabled 0 0 1 Disabled 0 1 0 +1.25 mV or –1.25 mV 0 1 1 +2.5 mV or –2.5 mV 1 0 0 +2.5 mV or –2.5 mV 1 0 1 +5 mV or –5 mV 1 1 0 +5 mV or –5 mV 1 1 1 +10 mV or –10 mV The actual resistance value vs. the setting of the sense resistor is not important just the actual voltage threshold when calculating the configuration. FLASH UPDATES Data Flash can only be updated if Voltage( ) ≥ Flash Update OK Voltage. Flash programming current can cause an increase in LDO dropout. The value of Flash Update OK Voltage should be selected such that the bq27350 Vcc voltage does not fall below its minimum of 2.4V during Flash write operations. For the TPS71525 LDO shown in the Reference Schematic, the default value of 2800mV is appropriate. FUNCTIONAL DESCRIPTION Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 25 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 5.8 www.ti.com AUTOCALIBRATION The bq27350 provides an autocalibration feature that will measure the voltage offset error across SRP and SRN from time-to-time as operating conditions change. It subtracts the resulting offset error from normal sense resistor voltage, Vsr, for maximum measurement accuracy. The gas gauge performs a single offset calibration when (1) the interface lines stay low for a minimum of Bus Low Time and (2) Vsr > Deadband. The gas gauge also performs a single offset when (1) the condition of AverageCurrent( ) ≤ Autocal Min Current and (2) {voltage change since last offset calibration ≥ Delta Voltage} or {temperature change since last offset calibration is greater than Delta Temperature for ≥ Autocal Time}. Capacity and current measurements should continue at the last measured rate during the offset calibration when these measurements cannot be performed. If the battery voltage drops more than Cal Abort during the offset calibration, the load current has likely increased considerably; hence, the offset calibration will be aborted. 6 COMMUNICATIONS The bq27350 uses I2C communications identical to the bq27200, and interfaces directly with TI-OMAP and other standard I2C-master devices. The bq27350 also uses an SDQ interface to communicate with security products, such as the bq26100. The bq27350 is only acting as a format translator between I2C and SDQ. I2C INTERFACE 6.1 The bq27350 supports the standard I2C read, incremental read, quick read, one-byte write, and incremental write functions. The 7-bit device address (ADDR) is the most significant 7 bits of the hex address and is fixed as 0001011. The 8-bit device address is therefore 0x16 or 0x17 for write or read, respectively. bq27350 generated Host generated S ADDR[6:0] 0 A CMD[7:0] A DATA[7:0] A P S ADDR[6:0] (a) 1-byte write S ADDR[6:0] 0 A 1 A DATA[7:0] N P (b) quick read CMD[7:0] A Sr ADDR[6:0] 1 A DATA[7:0] N P (c) 1- byte read S ADDR[6:0] 0 A CMD[7:0] A Sr ADDR[6:0] 1 A DATA[7:0] A ... DATA[7:0] N P (d) incremental read S ADDR[6:0 ] 0 A CMD[7:0] A DATA[7:0] A DATA[7:0] A ... A P (e) incremental write (S = Start, Sr = Repeated Start , A = Acknowledge, N = No Acknowledge, and P = Stop). Figure 6-1. Supported I2C Formats The “quick read” returns data at the address indicated by the address pointer. The address pointer, a register internal to the I2C communication engine, increments whenever data is acknowledged by the bq27350 or the I2C master. “Quick writes” function in the same manner and are a convenient means of sending multiple bytes to consecutive command locations (such as two-byte commands that require two bytes of data). The following command sequences are not supported: Attempt to write a read-only address (NACK after data sent by master): 26 COMMUNICATIONS Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 Attempt to read an address above 0x6A (NACK command): The I2C engine releases both SDA and SCL if the I2C bus is held low for t(BUSERR). If the bq27350 was holding the lines, releasing them frees the master to drive the lines. If an external condition is holding either of the lines low, the I2C engine enters low-power sleep mode. 6.2 AUTHENTICATION The bq27350 can act as a SHA-1/HMAC authentication slave, either by using its internal engine or by using an external bq26100 (contains secure memory). In both implementations, sending a 160-bit SHA-1 challenge message to the bq27350 will cause the IC to return a 160-bit digest, based upon the challenge message and hidden plain-text authentication keys. When this digest matches an identical one, generated by a host or dedicated authenication master operating on the same challenge message and using the same plain text keys, the authentication process is successful. The bq27350 contains a default plain-text authentication key of 0x0123456789ABCDEFFEDCBA987654321. If using the bq27350's internal authentication engine, the default key can be used for development purposes, but should be changed to a secret key and the part immediately sealed, before putting a pack into operation. If using the a bq26100 for external authentication, the key must be changed to 16 bytes of "0x00". 6.2.1 KEY PROGRAMMING When the bq27350's SHA-1/HMAC internal engine is used, authentication keys are stored as plain-text in memory. A plain-text authentication key can only be written to the bq27350 while the IC is in UNSEALED mode. Once the IC is UNSEALED, a 0x00 is written to BlockDataControl( ) to enable the authentication data commands. Next, subclass ID and offset are specified by writing 0x70 and 0x00 to DataFlashClass( ) and DataFlashBlock( ), respectively. The bq27350 is now prepared to receive the 16-byte plain-text key, which must begin at command location 0x4C. The key is accepted once a successful checksum has been written to BlockDataChecksum( ), FOR THE ENTIRE 32-BYTE BLOCK (0x40 through 0x5f), NOT JUST THE 16-BYTE KEY. When using an external bq26100 authentication IC, authentication keys are stored within the bq26100's secure memory. The bq26100 uses a split-key system of two 64-bit keys, instead of a single 128-bit key. Details on programming these keys can be found in the bq26100 data sheet. 6.2.2 EXECUTING AN AUTHENTICATION QUERY To execute an authentication query in UNSEALED mode, a host must first write 0x01 to the BlockDataControl( ) command, to enable the authentication data commands. If in SEALED mode, 0x00 must be written to DataFlashBlock( ), instead. Next, the host writes a 20-byte authentication challenge to the AuthenticateData( ) address locations (0x40 through 0x53). After a valid checksum for the challenge is written to AuthenticateChecksum( ), the bq27350 uses the challenge to perform it own the SHA-1/HMAC computation, in conjunction with its programmed keys. The resulting digest is written to AuthenticateData( ), overwriting the pre-existing challenge. The host may then read this response and compare it against the result created by its own parallel computation. REFERENCE SCHEMATIC Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 27 bq27350 SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 www.ti.com 7 REFERENCE SCHEMATIC The reference circuit on the next page shows an I2C communication implementation of the bq27350. D1 and associated resistors provide added protection against ESD appearing on the communication lines. Capacitors C4/C8 and C15/C16 are also used for ESD protection and are paired together for increased voltage handling ability and redundancy protection, should one capacitor fail in a shorted state. Optional circuits for external authentication, using the bq26100 (U1), and external temperature measurements (R12, R14, and C10) are also shown. Common-mode and differential filters (R7-19 and C12-14) remove noise at input of the coulomb counter input. U4, Q4, and associated passives form the Li+ cell protector, while U3, C5, and C9 comprise the LDO IC and its input/output capacitors. R5 and C7 provide a delayed "power good" signal to the MRST input. Q3, R13, and D2 act as an LDO disable circuit (LDO is off when PACK- and SE pin are both "high"). Finally, Q1, Q2, R1, R2 and R4 form a precision voltage divider that reduces cell voltage to levels suitable for the bq27350. 28 REFERENCE SCHEMATIC Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 bq27350 www.ti.com SLUS754B – MARCH 2007 – REVISED DECEMBER 2009 Revision History NOTE: Page numbers for previous revisions may differ from page numbers in the current version. Changes from A Revision (April 2008) to B Revision .................................................................................................... Page • Changed Li-ion to Li-Ion/Li-Polymer in 3 places ................................................................................. REFERENCE SCHEMATIC Copyright © 2007–2009, Texas Instruments Incorporated Submit Documentation Feedback Product Folder Link(s): bq27350 1 29 PACKAGE OPTION ADDENDUM www.ti.com 10-Dec-2020 PACKAGING INFORMATION Orderable Device Status (1) Package Type Package Pins Package Drawing Qty Eco Plan (2) Lead finish/ Ball material MSL Peak Temp Op Temp (°C) Device Marking (3) (4/5) (6) BQ27350PW ACTIVE TSSOP PW 20 70 RoHS & Green Call TI | NIPDAU Level-1-260C-UNLIM -40 to 85 27350PW BQ27350PWR ACTIVE TSSOP PW 20 2000 RoHS & Green Call TI | NIPDAU Level-1-260C-UNLIM -40 to 85 27350PW (1) The marketing status values are defined as follows: ACTIVE: Product device recommended for new designs. LIFEBUY: TI has announced that the device will be discontinued, and a lifetime-buy period is in effect. NRND: Not recommended for new designs. Device is in production to support existing customers, but TI does not recommend using this part in a new design. PREVIEW: Device has been announced but is not in production. Samples may or may not be available. OBSOLETE: TI has discontinued the production of the device. (2) RoHS: TI defines "RoHS" to mean semiconductor products that are compliant with the current EU RoHS requirements for all 10 RoHS substances, including the requirement that RoHS substance do not exceed 0.1% by weight in homogeneous materials. Where designed to be soldered at high temperatures, "RoHS" products are suitable for use in specified lead-free processes. TI may reference these types of products as "Pb-Free". RoHS Exempt: TI defines "RoHS Exempt" to mean products that contain lead but are compliant with EU RoHS pursuant to a specific EU RoHS exemption. Green: TI defines "Green" to mean the content of Chlorine (Cl) and Bromine (Br) based flame retardants meet JS709B low halogen requirements of
BQ27350PWR 价格&库存

很抱歉,暂时无法提供与“BQ27350PWR”相匹配的价格&库存,您可以联系我们找货

免费人工找货