MAXIM DS2438 Technical data

r
A
www.maxim-ic.com
FEATURES
§ Unique 1-Wire® interface requires only one port pin for communication
Smart Battery Monito
PIN ASSIGNMENT
GND
1
8
DS2438
DQ
§ Eliminates thermistors by sensing battery
temperature on-chip
§ On-board A/D converter allows monitoring of battery voltage for end-of-charge and end­of-discharge determination
§ On-board integrated current accumulator
V
V
SENS+
SENS-
V
2
3
4
D
DS2438Z, DS2438AZ
8-Pin SOIC (150-mil)
NC
7
NC
6
5
V
DD
facilitates fuel gauging
§ Elapsed time meter in binary format
§ 40-byte nonvolatile user memory available
for storage of battery-specific data
§ Reverts to low-power sleep mode on battery pack disconnect (feature disabled on DS2438AZ)
§ Operating range -40ºC to +85ºC
§ Applications include portable computers,
portable/cellular phones, consumer
PIN DESCRIPTION
DQ - Data In/Out VAD - General A/D input V V
- Battery current monitor input (+)
SENS+
- Battery current monitor input (-)
SENS-
VDD - Power Supply (2.4V to 10.0V) GND - Ground NC - No connect
electronics, and handheld instrumentation
DESCRIPTION
The DS2438 Smart Battery Monitor provides several functions that are desirable to carry in a battery pack: a means of tagging a battery pack with a unique serial number, a direct-to-digital temperature sensor which eliminates the need for thermistors in the battery pack, an A/D converter which measures the battery voltage and current, an integrated current accumulator which keeps a running total of all current going into and out of the battery, an elapsed time meter, and 40 bytes of nonvolatile EEPROM memory for storage of important parameters such as battery chemistry, battery capacity, charging methodology and assembly date. Information is sent to/from the DS2438 over a 1-Wire interface, so that only one wire (and ground) needs to be connected from a central microprocessor to a DS2438. This means that battery packs need only have three output connectors: battery power, ground, and the 1-Wire interface.
Because each DS2438 contains a unique silicon serial number, multiple DS2438s can exist on the same 1-Wire bus. This allows multiple battery packs to be charged or used in the system simultaneously.
Applications for the smart battery monitor include portable computers, cellular telephones, and handheld instrumentation battery packs in which it is critical to monitor real-time battery performance. Used in conjunction with a microcontroller in the host system, the DS2438 provides a complete smart battery pack solution that is fully chemistry-independent. The customization for a particular battery chemistry and capacity is realized in the code programmed into the microcontroller and DS2438 EEPROM, and only a software revision is necessary should a designer wish to change battery pack chemistry.
1 of 29 070605
ORDERING INFORMATION
PART MARKING PACKAGE INFORMATION
DS2438Z+ DS2438 8-Pin SOIC
DS2438Z+T&R DS2438 DS2438Z+ on Tape-and-Reel DS2438AZ+ DS2438A 8-Pin SOIC DS2438AZ+T&R DS2438A DS2438AZ+ on Tape-and-Reel DS2438Z DS2438 8-Pin SOIC DS2438Z/T&R DS2438 DS2438Z on Tape-and-Reel DS2438AZ DS2438A 8-Pin SOIC DS2438AZ/T&R DS2438A DS2438AZ on Tape-and-Reel
+ Denotes lead-free package.
DETAILED PIN DESCRIPTION
PIN SYMBOL DESCRIPTION
DS2438
1 GND
2 V
3 V
SENS+
SENS-
Ground
Battery Input: connection for battery current to be monitored (see text)
Battery Input: connection for battery current to be monitored (see text)
4 VAD ADC Input: input for general purpose A/D
5 VDD VDD Pin: input supply voltage
6, 7 NC
No Connect
8 DQ Data Input/Out: for 1-Wire operation: Open drain
OVERVIEW
The block diagram of Figure 1 shows the seven major components of the DS2438:
1. 64-bit lasered ROM
2. temperature sensor
3. battery voltage A/D
4. battery current A/D
5. current accumulators
6. elapsed time meter
7. 40-byte nonvolatile user-memory
Each DS2438 contains a unique 64-bit lasered ROM serial number so that several battery packs can be charged/monitored by the same host system. Furthermore, other Dallas products featuring the same 1-Wire bus architecture with a 64-bit ROM can reside on the same bus; refer to the Dallas Automatic Identification Data book for the specifications of these products.
Communication to the DS2438 is via a 1-Wire port. With the 1-Wire port, the memory and control functions will not be available until the ROM function protocol has been established. The master must first provide one of four ROM function commands: 1) Read ROM, 2) Match ROM, 3) Search ROM, or 4) Skip ROM. These commands operate on the 64-bit lasered ROM portion of each device and can singulate a specific device if many are present on the 1-Wire line as well as to indicate to the bus master how many and what types of devices are present. After a ROM function sequence has been successfully executed, the memory and control functions are accessible and the master may then provide any one of the six memory and control function commands.
2 of 29
DS2438
Control function commands may be issued which instruct the DS2438 to perform a temperature measurement or battery voltage A/D conversion. The result of these measurements will be placed in the DS2438’s memory map, and may be read by issuing a memory function command which reads the contents of the temperature and voltage registers. Additionally, the charging/discharging battery current is measured without user intervention, and again, the last completed result is stored in DS2438 memory space. The DS2438 uses these current measurements to update three current accumulators; the first stores net charge for fuel gauge calculations, the second accumulates the total charging current over the life of the battery, and the remaining accumulator tallies battery discharge current. The elapsed time meter data, which can be used in calculating battery self-discharge or time-related charge termination limits, also resides in the DS2438 memory map and can be extracted with a memory function command. The nonvolatile user memory of the DS2438 consists of 40 bytes of EEPROM. These locations may be used to store any data the user wishes and are written to using a memory function command. All data and commands are read and written least significant bit first.
PARASITE POWER
The block diagram (Figure 1) shows the parasite-powered circuitry. This circuitry “steals” power whenever the DQ pin is high. DQ will provide sufficient power as long as the specified timing and voltage requirements are met (see the section titled “1-Wire Bus System”). The advantage of parasite power is that the ROM may be read in absence of normal power, i.e., if the battery pack is completely discharged.
DS2438 BLOCK DIAGRAM Figure 1
3 of 29
DS2438
OPERATION-MEASURING TEMPERATURE
The DS2438 measures temperatures through the use of an on-board temperature measurement technique.
The temperature reading is provided in a 13-bit, two’s complement format, which provides 0.03125°C of resolution. Table 1 describes the exact relationship of output data to measured temperature. The data is transmitted serially over the 1-Wire interface. The DS2438 can measure temperature over the range of
-55°C to +125°C in 0.03125°C increments. For Fahrenheit usage, a lookup table or conversion factor
must be used.
Note that temperature is represented in the DS2438 in terms of a 0.03125°C LSb, yielding the following 13-bit format. The 3 least significant bits of the Temperature Register will always be 0. The remaining 13 bits contain the two’s complement representation of the temperature in °C, with the MSb holding the sign (S) bit. See “Memory Map” section for the Temperature Register address location.
Temperature Register Format Table 1
2-1 2-2 2-3 2-4 2-5 0 0 0 LSB
MSb (unit = °C) LSb
S 26 25 24 23 22 21 20 MSB
TEMPERATURE DIGITAL OUTPUT (Binary) DIGITAL OUTPUT (Hex)
+125°C 01111101 00000000 7D00h
+25.0625°C 00011001 00010000 1910h
+0.5°C 00000000 10000000 0080h
0°C 00000000 00000000 0000h
-0.5°C 11111111 10000000 FF80h
-25.0625°C 11100110 11110000 E6F0h
-55°C 11001001 00000000 C900h
OPERATION-MEASURING BATTERY VOLTAGE
The on-board analog-to-digital converter (ADC) has 10 bits of resolution and will perform a conversion when the DS2438 receives a command protocol (Convert V) instructing it to do so. The result of this measurement is placed in the 2-byte Voltage Register. The range for the DS2438 ADC is 0 volt to 10 volt; this range is suitable for NiCd or NiMH battery packs up to six cells, and for lithium ion battery packs of two cells. The full-scale range of the ADC is scaled to 10.23 volt, resulting in a resolution of 10 mV.
While the ADC has a range that extends down to 0 volt, it is important to note that the battery voltage can also be the supply voltage to the DS2438. As such, the accuracy of the ADC begins to degrade below battery voltages of 2.4 volt, and the ability to make conversions is limited by the operating voltage range of the DS2438.
Voltage is expressed in this register in scaled binary format, as outlined in Table 2. Note that while codes exist for values below 2.4 volt, accuracy of the ADC and the limitation on the DS2438’s supply voltage make it unlikely that these values would be used in actual practice. See “Memory Map” section for the Voltage Register address location.
4 of 29
DS2438
VOLTAGE REGISTER FORMAT Table 2
27 26 25 24 23 22 21 20 LSB
MSb (unit = 10 mV) LSb
0 0 0 0 0 0 29 28 MSB
BATTERY VOLTAGE
0.05V 0000 0000 0000 0101 0005h
2.7V 0000 0001 0000 1110 010Eh
3.6V 0000 0001 0110 1000 0168h
5V 0000 0001 1111 0100 01F4h
7.2V 0000 0010 1101 0000 02D0h
9.99V 0000 0011 1110 0111 03E7h
10V 0000 0011 1110 1000 03E8H
DIGITAL OUTPUT (Binary) DIGITAL OUTPUT (Hex)
For applications requiring a general purpose voltage A/D converter, the DS2438 can be configured so that the result of a Convert V command will place the scaled binary representation of the voltage on the V input (as opposed to the V Depending upon the state of the Status/Configuration Register, either (but not both) the V
input) into the Voltage Register in the same format described in Table 2.
DD
DD
or V
AD
AD
voltage will be stored in the Voltage Register upon receipt of the Convert V command. Refer to the description of the Status/Configuration Register in the Memory Map section for details. If the V is used as the voltage input, the A/D will be accurate for 1.5V < V
< 2VDD over the range 2.4V < VDD <
AD
AD
input
5.0V. This feature gives the user the ability to have a voltage A/D that meets spec accuracy for inputs
over the entire range of 1.5V < V
< 10V for VDD = 5.0V.
AD
OPERATION - MEASURING BATTERY CURRENT
The DS2438 features an A/D converter that effectively measures the current flow into and out of the battery pack by measuring the voltage across an external sense resistor. It does so in the background at a rate of 36.41 measurements/sec; thus, no command is required to initiate current flow measurements. However, the DS2438 will only perform current A/D measurements if the IAD bit is set to “1” in the Status/Configuration Register. The DS2438 measures current flow in and out of the battery through the
pins; the voltage from the V
V
SENS
current sense resistor, R V
, we recommend use of an RC low pass filter between it and the GND end of R
SENS-
SENS
. The V
diagram in Figure 1). Using a 100 kW (min) resistor (RF) and a 0.1 mF tantalum capacitor (CF), the filter cutoff is approximately 15.9 Hz. The current A/D measures at a rate of 36.41 times per second, or once every 27.46 ms. This filter will capture the effect of most current spikes, and will thus allow the current accumulators to accurately reflect the total charge which has gone into or out of the battery.
The voltage across current sense resistor R Current Register in two’s complement format. The sign (S) of the result, indicating charge or discharge, resides in the most significant bit of the Current Register, as shown in Table 3. See “Memory Map” in Figure 7 for the Current Register address location.
pin to the V
SENS+
terminal may be tied directly to the R
SENS+
is measured by the ADC and the result is placed in the
SENS
pin is considered to be the voltage across the
SENS-
resistor, however, for
SENS
(see the block
SENS
5 of 29
DS2438
CURRENT REGISTER FORMAT Table 3
(This register actually stores the voltage measured across current sense resistor R
SENS
.
This value can be used to calculate battery pack current using the equation below.)
27 26 25 24 23 22 21 20 LSB
MSb (unit = 0.2441mV) LSb
S S S S S S 29 28 MSB
The battery pack current is calculated from the Current Register value using the equation:
I
= Current Register / (4096 * R
SENS)
(where R
SENS
is in W)
For example, if 1.25A is flowing into the pack, and the pack uses a 0.025W sense resistor, the DS2438 will write the value 12810 to the Current Register. From this value, battery pack current can be calculated to be:
I = 128 / ( 4096 * 0.025) = 1.25A
Because small current ADC offset errors can have a large cumulative effect when current is integrated over time, the DS2438 provides a method for canceling offset errors in the current ADC. After each current measurement is completed, the measured value is added to the contents of the Offset Register and the result is then stored in the Current Register. The Offset Register is a two-byte nonvolatile read/write register formatted in two’s-complement format. The four MSb’s of the register contain the sign of the offset, as shown in Table 4.
OFFSET REGISTER FORMAT Table 4
4
2
23 22 21 20 0 0 0 LSB
MSb (unit = 0.2441 mV) LSb
X X X S 28 27 26 25 MSB
The following process can be used to calibrate the current ADC:
1. Write all zeroes to the Offset Register
2. Force zero current through R
SENS
3. Read the Current Register value
4. Disable the current ADC by setting the IAD bit in the Status/Configuration Register to “0”
5. Change the sign of the previously-read Current Register value by performing the two’s complement and write the result to the Offset Register
6. Enable the current ADC by setting the IAD bit in the Status/Configuration Register to “1”
NOTE:
When writing to the Offset Register, current measurement MUST be disabled (IAD bit set to “0”).
The current ADC calibration process is done for each DS2438 device prior to shipment. However, for best results, battery pack manufacturers should calibrate the current ADC during initial battery pack testing, and the host system should calibrate whenever possible (during battery charging, for example).
6 of 29
DS2438
OPERATION - CURRENT ACCUMULATORS
The DS2438 tracks the remaining capacity of a battery using the Integrated Current Accumulator (ICA). The ICA maintains a net accumulated total of current flowing into and out of the battery; therefore, the value stored in this register is an indication of the remaining capacity in a battery and may be used in performing fuel gauge functions. In addition, the DS2438 has another register that accumulates only charging (positive) current (CCA) and one that accumulates only discharging (negative) current (DCA). The CCA and DCA give the host system the information needed to determine the end of life of a rechargeable battery, based on total charge/discharge current over its lifetime.
The current measurement described above yields the voltage across sense resistor R
measured every
SENS
27.46 ms. This value is then used to increment or decrement the ICA register, increment the CCA (if
current is positive), or increment the DCA (if current is negative). The ICA is a scaled 8-bit volatile binary counter that integrates the voltage across R
over time. The ICA is only
SENS
incremented/decremented if the IAD bit is set to 1 in the Status/Configuration Register. Table 5 illustrates the contents of the ICA. See Memory Map section for the address location of the ICA.
ICA REGISTER FORMAT Table 5
(This register accumulates the voltage measured across current sense resistor R value can be used to calculate remaining battery capacity using the equation below.)
27 26 25 24 23 22 21 20
SENS
. This
MSb (unit = 0.4882 mVhr) LSb
Remaining battery capacity is calculated from the ICA value using the equation:
Remaining Capacity
= ICA / (2048 * R
SENS)
(where R
SENS
is in W)
For example, if a battery pack has 0.625 Ahr of remaining capacity, and the pack uses a 0.025W sense resistor, the ICA will contain the value 32. From this value, remaining capacity can be calculated to be:
Remaining Capacity = 32 / ( 2048 * 0.025) = 0.625 Ahr
Since the accuracy of the current ADC is +2 LSb, measurements of very small currents can be inaccurate by a high percentage. Because these inaccuracies can turn into large ICA errors when accumulated over a long period of time, the DS2438 provides a method for filtering out potentially erroneous small signals so that they are not accumulated. The DS2438’s Threshold Register specifies a current measurement magnitude (after offset cancellation) above which the measurement is accumulated in the ICA, CCA and DCA and below which it is not accumulated. The format of the Threshold Register is shown in Table 6. The power-on default Threshold Register value is 00h (no threshold).
NOTE:
When writing to the Threshold Register, current measurement must be disabled (IAD bit set to “0”).
7 of 29
THRESHOLD REGISTER FORMAT Table 6
TH2 TH1 0 0 0 0 0 0
MSb LSb
DS2438
TH2
0 0 None (default)
0 1 ±2 LSB
1 0 ±4 LSB
1 1 ±8 LSB
TH1 THRESHOLD
The Charging Current Accumulator (CCA) is a two-byte nonvolatile read/write counter which represents the total charging current the battery has encountered in its lifetime. It is only updated when current through R
, is positive; i.e., when the battery is being charged. Similarly, the Discharge Current
SENS
Accumulator (DCA) is a two-byte nonvolatile counter which represents the total discharging current the battery has encountered over its lifetime.
The CCA and DCA can be configured to function in any of three modes: disabled, enabled with shadow­to-EEPROM, and enabled without shadow-to-EEPROM. When the CCA and DCA are disabled (by setting either the IAD bit or the CA bit in the Status/Configuration Register to “0”), the memory in page 07h is free for general purpose data storage. When the CCA and DCA are enabled (by setting both IAD and CA to “1”), page 07h is reserved for these registers, and none of the bytes in page 07h should be written to via the 1-Wire bus. When the CCA and DCA are enabled, their values are automatically shadowed to EEPROM memory by setting the EE bit in the Status/Configuration Register to “1”. When these registers are configured to shadow to EEPROM, the information will accumulate over the lifetime of the battery pack and will not be lost when the battery becomes discharged. Shadow-to-EEPROM is disabled when the EE bit is “0”. Table 7 illustrates the format of the CCA and DCA registers. Table 8 summarizes the modes of operation for ICA, CCA and DCA.
CCA/DCA REGISTER FORMAT Table 7
27 26 25 24 23 22 21 20 LSB
MSb (unit = 15.625 mVHr) LSb
215 214 213 212 211 210 29 28 MSB
ICA/CCA/DCA MODES OF OPERATION Table 8
IAD Bit
0 X X Inactive Inactive Inactive
1 0 X Active Inactive Inactive
1 1 0 Active Active Inactive
1 1 1 Active Active Active
8 of 29
CA Bit EE Bit ICA CCA/DCA
CCA/DCA Copy-
to-EEPROM
DS2438
Figure 2 illustrates the activity of the ICA, CCA, and DCA over a sample charge/discharge cycle of a battery pack, assuming the DS2438 is configured for the ICA to function and the CCA/DCA to function and shadow data to EEPROM. To simplify the illustration of the accumulators, they are treated as analog values, although they are digital counters in the DS2438. Note that when the battery becomes fully discharged, i.e., the ICA value reaches 0, the CCA and DCA register values are maintained.
CURRENT ACCUMULATOR ACTIVITY Figure 2
SENSE RESISTOR SELECTION
The selection of R to avoid excessive voltage drop during peak current demands. On the other hand, the impedance of R should be maximized to achieve the finest resolution for current measurement and accumulation. Table 9 below lists several example R LSb of the remaining capacity calculation ( 1/(2048 * R voltage drop at maximum current and required current measurement/accumulation resolution when selecting R
SENS
.
involves a tradeoff. On the one hand, the impedance of R
SENS
values, the LSb of the current calculation ( 1/(4096 * R
SENS
) ). The user should carefully consider
SENS
must be minimized
SENS
) ) and the
SENS
SENS
SENSE RESISTOR TRADEOFFS Table 9
SENSE RESISTOR
VALUE (R
25 mW
50 mW
100 mW
200 mW
SENS
)
CURRENT lsb
9.76 mA 19.53 mAHr 5000 mAhr
4.88 mA 9.76 mAHr 2500 mAhr
2.44 mA 4.88 mAHr 1250 mAhr
1.22 mA 2.44 mAHr 625 mAhr
REMAINING
CAPACITY lsb
MAX REMAINING
CAPACITY VALUE
OPERATION - ELAPSED TIME METER
An internal oscillator is used as the timebase for the timekeeping functions. The elapsed time functions are double buffered, allowing the master to read elapsed time without the data changing while it is being read. To accomplish this, a snapshot of the counter data is transferred to holding registers which the user accesses. This occurs after the 8th bit of the Recall Memory command.
The elapsed time meter (ETM) is a 4-byte binary counter with 1-second resolution. The ETM can accumulate 136 years of seconds before rolling over. Time/date is represented by the number of seconds since a reference point, which is determined by the user. For example, 12:00 A.M., January 1, 1970 could be used as a reference point.
9 of 29
Loading...
+ 20 hidden pages