DS2438 PDF
DS2438 PDF
DS2438 PDF
LE
Unique 1-Wire interface requires only one port pin for communication Provides unique 64-bit serial number Eliminates thermistors by sensing battery temperature on-chip On-board A/D converter allows monitoring of battery voltage for end-of-charge and endof-discharge determination On-board integrated current accumulator 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 -40C to +85C Applications include portable computers, portable/cellular phones, consumer electronics, and handheld instrumentation
PIN ASSIGNMENT
GND VSENS+ VSENSVAD 1 2 3 4 8 7 6 5 DQ NC NC VDD
PIN DESCRIPTION
DQ VAD VSENS+ VSENSVDD GND NC Data In/Out General A/D input Battery current monitor input (+) Battery current monitor input (-) Power Supply (2.4V to 10.0V) Ground No connect
DESCRIPTION
The DS2438 Smart Battery Monitor Diagrams provides several functions that are desirable to carry in a battery Functional 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 Pin Configurations appear at end of data sheet. conjunction with a continued microcontroller in sheet. the host system, the DS2438 provides a complete smart battery Functional Diagrams at end of data pack solution that is fully chemistry-independent. The customization for a particular battery chemistry UCSP is a trademark of Maxim Integrated Products, Inc. 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.
of 29 contact Maxim Direct For pricing, delivery, and ordering information,1please at 1-888-629-4642, or visit Maxims website at www.maximintegrated.com. 070605
DS2438
ORDERING INFORMATION
PART DS2438Z+ DS2438Z+T&R DS2438AZ+ DS2438AZ+T&R DS2438Z DS2438Z/T&R DS2438AZ DS2438AZ/T&R
+ Denotes lead-free package.
PACKAGE INFORMATION 8-Pin SOIC DS2438Z+ on Tape-and-Reel 8-Pin SOIC DS2438AZ+ on Tape-and-Reel 8-Pin SOIC DS2438Z on Tape-and-Reel 8-Pin SOIC DS2438AZ on Tape-and-Reel
OVERVIEW
The block diagram of Figure 1 shows the seven major components of the DS2438: 1. 2. 3. 4. 5. 6. 7. 64-bit lasered ROM temperature sensor battery voltage A/D battery current A/D current accumulators elapsed time meter 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 DS2438s 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.
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, twos complement format, which provides 0.03125C 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 -55C to +125C in 0.03125C 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.03125C 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 twos 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.
MSb
S 26 25 24
(unit = C)
23 22 21
LSb
20 MSB
DIGITAL OUTPUT (Binary) 01111101 00000000 00011001 00010000 00000000 10000000 00000000 00000000 11111111 10000000 11100110 11110000 11001001 00000000
DIGITAL OUTPUT (Hex) 7D00h 1910h 0080h 0000h FF80h E6F0h C900h
DS2438
MSb
0 0 0
(unit = 10 mV)
0 0 0 29
LSb
28 MSB
DIGITAL OUTPUT (Binary) 0000 0000 0000 0101 0000 0001 0000 1110 0000 0001 0110 1000 0000 0001 1111 0100 0000 0010 1101 0000 0000 0011 1110 0111 0000 0011 1110 1000
DIGITAL OUTPUT (Hex) 0005h 010Eh 0168h 01F4h 02D0h 03E7h 03E8H
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 VAD input (as opposed to the VDD input) into the Voltage Register in the same format described in Table 2. Depending upon the state of the Status/Configuration Register, either (but not both) the VDD or VAD 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 VAD input is used as the voltage input, the A/D will be accurate for 1.5V < VAD < 2VDD over the range 2.4V < VDD < 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 < VAD < 10V for VDD = 5.0V.
5 of 29
DS2438
MSb
S S S
(unit = 0.2441mV)
S S S 29
LSb
28 MSB
The battery pack current is calculated from the Current Register value using the equation: I = Current Register / (4096 * RSENS) (where RSENS 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 twos-complement format. The four MSbs of the register contain the sign of the offset, as shown in Table 4.
MSb
X X
LSb
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 RSENS 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 twos 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
MSb
LSb
Remaining battery capacity is calculated from the ICA value using the equation: Remaining Capacity = ICA / (2048 * RSENS) (where RSENS 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 DS2438s 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
DS2438
MSb
TH2 0 0 1 1 TH1 0 1 0 1
LSb
THRESHOLD None (default) 2 LSB 4 LSB 8 LSB
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 RSENS, is positive; i.e., when the battery is being charged. Similarly, the Discharge Current 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 shadowto-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.
MSb
215 214
LSb
28 MSB
8 of 29
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.
DS2438
Two other time-related functions are available. The first is the Disconnect Timestamp, which is written to by the DS2438 whenever it senses that the DQ line has been low for approximately 2 seconds. This condition would signal that the battery pack has been removed from the system; the time when that occurs is written into the Disconnect Timestamp register, so that upon replacement into the system, the system can determine how long the device has been in storage, to facilitate self-discharge corrections to the remaining battery capacity. After the disconnect has been detected, the DS2438 reverts to a sleep mode, during which nothing is active except the real time clock. Some applications may prefer that the data converters and current accumulators continue operation following a pack disconnect. Thus, a version of the DS2438 (part number DS2438A) is offered for those applications. Other than not reverting to a low-power sleep mode following disconnect, there are no specification differences between the DS2438 and the DS2438A. The other timestamp is the End-of-Charge timestamp, which is written to by the DS2438 whenever it senses that charging is finished (when current changes direction). This timestamp allows the user to calculate the amount of time the battery has been in a discharge or storage state, again to facilitate selfdischarge calculations. The format of the ETM, Disconnect, and End-of-Charge registers are as shown in Table 10. Refer to the Memory Map section for the address location of the time-related registers.
MSb
215 214 213 212
(unit = 1s)
211 210 29
LSb
28
MSb
223 222 221 220
(unit = 1s)
219 218 217
LSb
216
MSb
231 230 229 228
(unit = 1s)
227 226 225
LSb
224 MSB
10 of 29
DS2438
CRC Generation
The DS2438 has an 8-bit CRC stored in the most significant byte of the 64-bit ROM. The bus master can compute a CRC value from the first 56 bits of the 64-bit ROM and compare it to the value stored within the DS2438 to determine if the ROM data has been received error-free by the bus master. The equivalent polynomial function of this CRC is: CRC = X8 + X5 + X4 +1 The DS2438 also generates an 8-bit CRC value using the same polynomial function shown above and provides this value to the bus master to validate the transfer of data bytes. In each case where a CRC is used for data transfer validation, the bus master must calculate a CRC value using the polynomial function given above and compare the calculated value to either the 8-bit CRC value stored in the 64-bit ROM portion of the DS2438 (for ROM reads) or the 8-bit CRC value computed within the DS2438 (which is read as a 9th byte when a scratchpad is read). The comparison of CRC values and decision to continue with an operation are determined entirely by the bus master. There is no circuitry inside the DS2438 that prevents a command sequence from proceeding if the CRC stored in or calculated by the DS2438 does not match the value generated by the bus master. Proper use of the CRC as outlined in the flowchart of Figure 6 can result in a communication channel with a very high level of integrity. The 1-Wire CRC can be generated using a polynomial generator consisting of a shift register and XOR gates as shown in Figure 4. Additional information about the Dallas 1-Wire Cyclic Redundancy Check is available in Application Note 27 entitled Understanding and Using Cyclic Redundancy Checks with Dallas Semiconductor Touch Memory Products. The shift register bits are initialized to 0. Then starting with the least significant bit of the family code, 1 bit at a time is shifted in. After the 8th bit of the family code has been entered, the serial number is entered. After the 48th bit of the serial number has been entered, the shift register contains the CRC value.
11 of 29
DS2438
12 of 29
DS2438
NO
YES
13 of 29
DS2438
MEMORY MAP
The DS2438s memory is organized as shown in Figure 7. The memory consists of a scratchpad RAM and storage SRAM/EEPROM. The scratchpad helps insure data integrity when communicating over the 1-Wire bus. Data is first written to the scratchpad where it can be read back. After the data has been verified, a copy scratchpad command will transfer the data to the appropriate page in memory (pages 0-2 are primarily volatile SRAM, pages 3-7 are EEPROM). This process insures data integrity when modifying the memory. The DS2438s memory is organized as 64 bytes of memory, in eight 8-byte pages. Each page has its own scratchpad space, organized as 8 bytes of memory. When reading a scratchpad, there is a 9th byte which may be read with a Read Scratchpad command. This byte contains a cyclic redundancy check (CRC) byte, which is the CRC over all of the 8 bytes in the currently selected scratchpad. This CRC is implemented in the fashion described in the section titled CRC Generation.
14 of 29
DS2438
Page 0 (00h)
The first page contains the most frequently accessed information of the DS2438, and most locations are volatile read-only bytes with the exception of the Status/Configuration Register (Byte 0) and the Threshold Register (Byte 7). The Status/Configuration Register is a nonvolatile read/write byte which defines which features of the DS2438 are enabled and how they will function. The register is formatted as follows:
X ADB NVB TB AD EE CA IAD
MSb
LSb
IAD = Current A/D Control Bit. 1 = the current A/D and the ICA are enabled, and current measurements will be taken at the rate of 36.41 Hz; 0 = the current A/D and the ICA have been disabled. The default value of this bit is a 1 (current A/D and ICA are enabled). CA = Current Accumulator Configuration. 1 = CCA/DCA is enabled, and data will be stored and can be retrieved from page 7, bytes 4-7; 0 = CCA/DCA is disabled, and page 7 can be used for general EEPROM storage. The default value of this bit is a 1 (current CCA/DCA are enabled). EE = Current Accumulator Shadow Selector bit. 1 = CCA/DCA counter data will be shadowed to EEPROM each time the respective register is incremented; 0= CCA/DCA counter data will not be shadowed to EEPROM. The CCA/DCA could be lost as the battery pack becomes discharged. If the CA bit in the status/configuration register is set to 0, the EE bit will have no effect on the DS2438 functionality. The default value of this bit is a 1 (current CCA/DCA data shadowed to EEPROM). AD = Voltage A/D Input Select Bit. 1 = the battery input (VDD) is selected as the input for the DS2438 voltage A/D converter; 0 = the general purpose A/D input (VAD) is selected as the voltage A/D input. For either setting, a Convert V command will initialize a voltage A/D conversion. The default value of this bit is a 1 (VDD is the input to the A/D converter). TB = Temperature Busy Flag. 1 = temperature conversion in progress; 0 = temperature conversion complete. NVB = Nonvolatile Memory Busy Flag. 1 = Copy from Scratchpad to EEPROM in progress; 0 = Nonvolatile memory not busy. A copy to EEPROM may take from 2 ms to 10 ms (taking longer at lower supply voltages). ADB = A/D Converter Busy Flag. 1 = A/D conversion in progress on battery voltage; 0 = conversion complete, or no measurement being made. An A/D conversion takes approximately 10 ms. X = Dont care Bytes 1 and 2 of page 0 contain the last completed temperature conversion in the format described in the Operation - Measuring Temperature section. Bytes 3-4 contain the last completed voltage A/D conversion result and bytes 5-6 contain the instantaneous current data. Byte 7 contains the Threshold Register. Refer to the appropriate section for the data format of these locations.
NOTE:
The data in the scratchpad of the status and threshold register will determine the operation of the device.
15 of 29
DS2438
Page 1 (01h)
The second page, Page 1, contains the ICA, elasped time meter, and current offset data. Both the ETM and ICA are volatile read/write locations so that they may be set, changed, or cleared by the host software. Bytes 0-3 contain the ETM data, formatted as described in the Operation - Elapsed Time Meter section. Byte 4 contains the 8-bit ICA. Bytes 5 and 6 contain the Offset Register data. Byte 7 is reserved and will read out as all 1s.
Page 2 (02h)
The third page of memory (Page 2) contains the Disconnect (first 4 bytes) and End of Charge (remaining 4 bytes) timestamps. This page is volatile and read/write. Refer to the Operation Elapsed Time Meter section for the formatting of these locations.
16 of 29
DS2438
HARDWARE CONFIGURATION
The 1-Wire bus has only a single line by definition; it is important that each device on the bus be able to drive it at the appropriate time. To facilitate this, each device attached to the 1-Wire bus must have open drain or 3-state outputs. The 1-Wire port of the DS2438 (DQ pin) is open drain with an internal circuit equivalent to that shown in Figure 8. A multidrop bus consists of a 1-Wire bus with multiple slaves attached. The 1-Wire bus requires a pull-up resistor of approximately 5 kW.
The idle state for the 1 wire bus is high. If for any reason a transaction needs to be suspended, the bus MUST be left in the idle state if the transaction is to resume. Infinite recovery time can occur between bits so long as the 1-Wire bus is in the inactive (high) state during the recovery period. If this does not occur and the bus is left low, all components on the bus will be reset. See Wire-1 Reset Pulse Timing (Figure 9).
TRANSACTION SEQUENCE
The protocol for accessing the DS2438 via the 1-Wire port is as follows: Initialization ROM Function Command Memory Function Command Transaction/Data
INITIALIZATION
All transactions on the 1-Wire bus begin with an initialization sequence. The initialization sequence consists of a reset pulse transmitted by the bus master followed by presence pulse(s) transmitted by the slave(s). The presence pulse lets the bus master know that the DS2438 is on the bus and is ready to operate. For more details, see the 1-Wire Signaling section.
17 of 29
DS2438
DS2438
3. The bus master reads a bit from the 1-Wire bus. Each device will respond by placing the value of the first bit of their respective ROM data onto the 1-Wire bus. ROM1 and ROM4 will place a 0 onto the 1-Wire bus, i.e., pull it low. ROM2 and ROM3 will place a 1 onto the 1-Wire bus by allowing the line to stay high. The result is the logical AND of all devices on the line; therefore the bus master sees a 0. The bus master reads another bit. Since the Search ROM data command is being executed, all of the devices on the 1-Wire bus respond to this second read by placing the complement of the first bit of their respective ROM data onto the 1-Wire bus. ROM1 and ROM4 will place a 1 onto the 1-wire, allowing the line to stay high. ROM2 and ROM3 will place a 0 onto the 1-wire, thus it will be pulled low. The bus master again observes a 0 for the complement of the first ROM data bit. The bus master has determined that there are some devices on the 1-Wire bus that have a 0 in the first position and others that have a 1. The data obtained from the two reads of the three-step routine have the following interpretations: 00 - There are still devices attached which have conflicting bits in this position. 01 - All devices still coupled have a 0 bit in this bit position. 10 - All devices still coupled have a 1 bit in this bit position. 11 - There are no devices attached to the 1-Wire bus. 4. The bus master writes a 0. This deselects ROM2 and ROM3 for the remainder of this search pass, leaving only ROM1 and ROM4 connected to the 1-Wire bus. 5. The bus master performs two more reads and receives a 0 bit followed by a 1 bit. This indicates that all devices still coupled to the bus have 0s as their second ROM data bit. 6. The bus master then writes a 0 to keep both ROM1 and ROM4 coupled. 7. The bus master executes two reads and receives two 0 bits. This indicates that both 1 bits and 0 bits exist as the 3rd bit of the ROM data of the attached devices. 8. The bus master writes a 0 bit. This deselects ROM1, leaving ROM4 as the only device still connected. 9. The bus master reads the remainder of the ROM bits for ROM4 and continues to access the part if desired. This completes the first pass and uniquely identifies one part on the 1-Wire bus. 10. The bus master starts a new ROM search sequence by repeating steps 1 through 7. 11. The bus master writes a 1 bit. This decouples ROM4, leaving only ROM1 still coupled. 12. The bus master reads the remainder of the ROM bits for ROM1 and communicates to the underlying logic if desired. This completes the second ROM search pass, in which another of the ROMs was found. 13. The bus master starts a new ROM search by repeating steps 1 through 3. 14. The bus master writes a 1 bit. This deselects ROM1 and ROM4 for the remainder of this search pass, leaving only ROM2 and ROM3 coupled to the system. 15. The bus master executes two read time slots and receives two 0s.
19 of 29
DS2438
16. The bus master writes a 0 bit. This decouples ROM3, and leaving only ROM2. 17. The bus master reads the remainder of the ROM bits for ROM2 and communicates to the underlying logic if desired. This completes the third ROM search pass, in which another of the ROMs was found. 18. The bus master starts a new ROM search by repeating steps 13 through 15. 19. The bus master writes a 1 bit. This decouples ROM2, leaving only ROM3. 20. The bus master reads the remainder of the ROM bits for ROM3 and communicates to the underlying logic if desired. This completes the fourth ROM search pass, in which another of the ROMs was found. Note that the bus master learns the unique ID number (ROM data pattern) of one 1-Wire device on each ROM Search operation. The time required to derive the parts unique ROM code is: 960 ms + (8 + 3 x 64) 61 ms = 13.16 ms The bus master is therefore capable of identifying 75 different 1-Wire devices per second.
20 of 29
DS2438
Convert T [44h]
This command begins a temperature conversion. No further data is required. The temperature conversion will be performed, setting the TB flag in the Status/Configuration register to a 1 during conversion. When the temperature conversion is done, the TB flag will clear to a 0. If the bus master issues read time slots following this command, the DS2438 will output 0 on the bus as long as it is busy making a temperature conversion; it will return a 1 when the temperature conversion is complete.
Convert V [B4h]
This command instructs the DS2438 to initiate a voltage analog-to-digital conversion cycle. This sets the ADB flag (see Status/Configuration register discussion in the Memory Map section). The voltage supply that is measured is defined by the AD bit of the Status/Configuration register. When the A/D conversion is done, the ADB flag is cleared and the current voltage value is placed in the VOLTAGE REGISTER of page 00h. While an A/D conversion is taking place, all other memory functions are still available for use. If the bus master issues read time slots following this command, the DS2438 will output 0 on the bus as long as it is busy making a voltage measurement; it will return a 1 when the conversion is complete.
PROTOCOL
Reads bytes from DS2438 Scratchpad page xxh Writes bytes to DS2438 Scratchpad page xxh Copies entire contents of Scratchpad page xxh to 8-byte EEPROM/ SRAM page xxh Copies entire contents of EEPROM/SRAM page xxh to Scratchpad page xxh Initiates temperature conversion Initiates voltage A/D conversion
Copy Scratchpad
Recall Memory
B8h<page 00h-07h>
Idle
REGISTER COMMANDS
Convert T 44h Idle or Rx of TB bit {TB bit in Status Register = 1 until conversion complete} {ADB bit in Status Register = 1 until conversion complete}
Convert V
B4h
21 of 29
DS2438
NOTES:
1. Temperature conversion takes up to 10 ms. 2. A/D conversion takes up to 4 ms. 3. EEPROM writes take up to 10 ms.
22 of 29
DS2438
23 of 29
DS2438
I/O SIGNALING
The DS2438 requires strict protocols to insure data integrity. The protocol consists of several types of signaling on one line: reset pulse, presence pulse, write 0, write 1, read 0, and read 1. All of these signals, with the exception of the presence pulse, are initiated by the bus master. The initialization sequence required to begin any communication with the DS2438 is shown in Figure 9. A reset pulse followed by a presence pulse indicates the DS2438 is ready to send or receive data given the correct ROM command and memory function command. The bus master transmits (Tx) a reset pulse (a low signal for a minimum of 480 ms). The bus master then releases the line and goes into a receive mode(Rx). The 1-Wire bus is pulled to a high state via the 5 kW pull-up resistor. After detecting the rising edge on the I/O pin, the DS2438 waits 15-60 ms and then transmits the presence pulse (a low signal for 60-240 ms). DS2438 data is read and written through the use of time slots to manipulate bits and a command word to specify the transaction.
24 of 29
DS2438
480 ms tRSTL < * 480 ms tRSTH < (includes recovery time) 15 ms tPDH < 60 ms 60 ms tPDL < 240 ms
25 of 29
DS2438
RESISTOR MASTER
DS2438
60 ms tSLOT < 120 ms 1 ms tLOWR < 15 ms 0 tRELEASE < 45 ms 1 ms tREC < tRDV = 15 ms tSU < 1ms
26 of 29
DS2438
* This is a stress rating only and functional operation of the device at these or any other conditions above those indicated in the operation sections of this specification is not implied. Exposure to absolute maximum rating conditions for extended periods of time may affect reliability.
SYMBOL
VDD DQ
CONDITION
MIN
2.4 -0.3 2.4
TYP MAX
10.0 +5.5 5.5
UNITS
V V
NOTES
1 1
SYMBOL
VIH VIL IDD1 IDD
CONDITION
MIN
2.0 -0.3
TYP MAX
0.5 25 50 100
UNITS
V V mA mA
NOTES
1 1
DQ=0, RTC Active DQ=1, ICA Active or Temperature or Voltage Conversions or EEPROM write in progress DQ
Input Resistance
RI
500
kW
27 of 29
DS2438
SYMBOL
TERR tCONVT
CONDITION
MIN
TYP MAX
2 3 10
UNITS
C
NOTES
ms
ELECTRICAL CHARACTERISTICS: VOLTAGE A/D CONVERTER (-40C to +85C; 2.4V VDD 10.0V)
PARAMETER
A/D Error
SYMBOL
VDDERR VADERR
CONDITION
VDD input VAD input
MIN
TYP MAX
10 25 50 75 10.0 10.0 3 10 +85
UNITS
mV
NOTES
VAD Input Range VDD Input Range Conversion Time No Missing Code Temperature Range
1.5V 2.4
V V ms
C
1 1
-40
ELECTRICAL CHARACTERISTICS: CURRENT A/D CONVERTER (-40C to +85C; 2.4V VDD 10.0V)
PARAMETER
Current Measurement Input Range (VSENS+ - VSENS-) Current Measurement Error
SYMBOL
IADRANGE IADERR
CONDITION
MIN
TYP
MAX
250
UNI TS
mV LSB %
NOTES
2 1
SYMBOL
RTCERR
CONDITION
0C to +70C
MIN
TYP MAX
1 3
UNITS
% sec
NOTES
28 of 29
DS2438
SYMBOL
tWR NEEWR tEEDR
CONDITION
-20C to +55C -20C to +55C
MIN
50k 10
TYP MAX
2 10
UNITS
ms writes years
NOTES
SYMBOL
tSLOT tREC tLOW0 tLOW1 tRDV tRSTH tRSTL tPDH tPDL CDQ
CONDITION
MIN
60 1 60 1
TYP MAX
120
UNITS
ms ms
NOTES
120 15 15
ms ms ms ms
ms ms ms pF
NOTES:
1. All voltages are referenced to GND. 2. Input load is to GND. 3. Current measurement accuracy is 2 LSb or 1%, whichever is greater.
Maxim cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim product. No circuit patent licenses are implied. Maxim reserves the right to change the circuitry and specifications without notice at any time. The parametric values (min and max limits) shown in the Electrical Characteristics table are guaranteed. Other parametric values quoted in this data sheet are provided for guidance.
Maxim Integrated 160 Rio Robles, San Jose, CA 95134 USA 1-408-601-1000
Maxim Integrated