DS28E05 General Description The DS28E05 is a 112-byte user-programmable EEPROM organized as 7 pages of 16 bytes each. Memory pages can be individually set to write protected or EPROM emulation mode through protection byte settings. Each part has its own guaranteed unique 64-bit ROM identification number (ROM ID) that is factory programmed into the chip. The DS28E05 communicates over Maxim Integrated’s single contact 1-Wire® interface at overdrive speed with the ROM ID acting as node address in the case of a multiple-device 1-Wire network. Applications ● ● ● ● Accessory/PCB Identification Medical Sensor Calibration Data Storage Analog Sensor Calibration Aftermarket Management of Consumables 1-Wire EEPROM Features ● Single-Contact 1-Wire Interface ● 112 Bytes User EEPROM with 1K Write Cycles ● Programmable Write Protection and OTP EPROM Emulation Modes for User Memory ● Unique Factory-Programmed 64-Bit ROM ID Number ● Communicates with Host at Up to 76.9kbps (Overdrive Only) ● Operating Range: 3.3V ±10%, -40°C to +85°C ● ±8kV HBM ESD Protection (typ) on IO Pin ● 3-Pin SOT23 and 6-Pin TSOC Packages Typical Application Circuit VCC Ordering Information appears at end of data sheet. RPUP IO For related parts and recommended products to use with this part, refer to www.maximintegrated.com/DS28E05.related. µC DS28E05 GND 1-Wire is a registered trademark of Maxim Integrated Products, Inc. 19-6568; Rev 0; 12/12 DS28E05 1-Wire EEPROM Absolute Maximum Ratings IO Voltage Range to GND.......................................-0.5V to 4.0V IO Sink Current.................................................................±20mA Operating Temperature Range ........................... -40°C to +85°C Junction Temperature.......................................................+150°C Storage Temperature Range............................. -55°C to +125°C Lead Temperature (soldering, 10s).................................. +300°C Soldering Temperature (reflow) .......................................+260°C 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 in the operational sections of the specifications is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability. Electrical Characteristics (TA = -40°C to +85°C, unless otherwise noted.) (Note 1) PARAMETER SYMBOL CONDITIONS MIN TYP MAX UNITS 3.63 V IO PIN: GENERAL DATA 1-Wire Pullup Voltage VPUP (Note 2) 2.97 1-Wire Pullup Resistance RPUP VPUP = 3.3V ±10% (Note 3) 300 Input Capacitance CIO Input Load Current IL (Notes 4, 5) 1500 1500 IO pin at VPUP 5 Ω pF 20 0.65 x VPUP µA High-to-Low Switching Threshold VTL (Notes 6, 7) V Input Low Voltage VIL (Notes 2, 8) Low-to-High Switching Threshold VTH (Notes 6, 9) 0.75 x VPUP V Switching Hysteresis VHY (Notes 6, 10) 0.3 V Output Low Voltage VOL IOL = 4mA (Note 11) Recovery Time tREC RPUP = 1500Ω (Notes 2, 12) 5 µs Time Slot Duration tSLOT (Notes 2, 13) 13 µs 0.3 0.4 V V IO PIN: 1-Wire RESET, PRESENCE DETECT CYCLE Reset Low Time tRSTL (Note 2) 48 80 µs Reset High Time tRSTH (Note 14) 48 Presence Detect Sample Time tMSP (Notes 2, 15) 8 10 µs Write-Zero Low Time tW0L (Notes 2, 16) 8 16 µs Write-One Low Time tW1L (Notes 2, 16) 1 2 µs tRL (Notes 2, 17) 1 2-δ µs tMSR (Notes 2, 17) tRL + δ 2 µs µs IO PIN: 1-Wire WRITE IO PIN: 1-Wire READ Read Low Time Read Sample Time EEPROM Programming Current IPROG VPUP = 3.63V (Notes 5, 18) 400 µA Programming Time for a 16-Bit Segment tPROG (Note 19) 16 ms Write/Erase Cycling Endurance NCY TA = +85°C (Notes 20, 21) Data Retention tDR TA = +85°C (Notes 22, 23, 24) www.maximintegrated.com 1000 — 10 Years Maxim Integrated │ 2 DS28E05 1-Wire EEPROM Electrical Characteristics (continued) (TA = -40°C to +85°C, unless otherwise noted.) (Note 1) Note 1: Limits are 100% production tested at TA = +25°C and/or TA = +85°C. Limits over the operating temperature range and relevant supply voltage range are guaranteed by design and characterization. Typical values are not guaranteed. Note 2: System requirement. Note 3: Maximum allowable pullup resistance is a function of the number of 1-Wire devices in the system and 1-Wire recovery times. The specified value here applies to systems with only one device and with the minimum 1-Wire recovery times. Note 4: Typical value represents the internal parasite capacitance when VPUP is first applied. Once the parasite capacitance is charged, it does not affect normal communication. Note 5: Guaranteed by design and/or characterization only. Not production tested. Note 6: VTL, VTH, and VHY are a function of the internal supply voltage, which is a function of VPUP, RPUP, 1-Wire timing, and capacitive loading on IO. Lower VPUP, higher RPUP, shorter tREC, and heavier capacitive loading all lead to lower values of VTL, VTH, and VHY. Note 7: Voltage below which, during a falling edge on IO, a logic 0 is detected. Note 8: The voltage on IO must be less than or equal to VILMAX at all times the master is driving IO to a logic 0 level. Note 9: Voltage above which, during a rising edge on IO, a logic 1 is detected. Note 10:After VTH is crossed during a rising edge on IO, the voltage on IO must drop by at least VHY to be detected as logic 0. Note 11:The I-V characteristic is linear for voltages less than 1V. Note 12:Applies to a single device attached to a 1-Wire line. Note 13:Defines maximum possible bit rate. Equal to 1/(tW0LMIN + tRECMIN). Note 14:An additional reset or communication sequence cannot begin until the reset high time has expired. Note 15:Interval after tRSTL during which a bus master can read a logic 0 on IO if there is a DS28E05 present. The power-up presence detect pulse could be outside this interval but will be complete within 2ms after power-up. Note 16:ε in Figure 10 represents the time required for the pullup circuitry to pull the voltage on IO up from VIL to VTH. The actual maximum duration for the master to pull the line low is tW1LMAX + tF - ε and tW0LMAX + tF - ε, respectively. Note 17:δ in Figure 10 represents the time required for the pullup circuitry to pull the voltage on IO up from VIL to the input-high threshold of the bus master. The actual maximum duration for the master to pull the line low is tRLMAX + tF. Note 18:Current drawn from IO during the EEPROM programming interval, during which the voltage at IO must not drop below 1.8V. This condition is met with RPUPMAX over the entire VPUP range. Note 19:The tPROG interval begins immediately after the trailing rising edge on IO for the last time slot of the Release byte for a valid Write Memory sequence. Interval ends once the device’s self-timed EEPROM programming cycle is complete and the current drawn by the device has returned from IPROG to IL. Note 20:Write-cycle endurance is tested in compliance with JESD47G. Note 21:Not 100% production tested; guaranteed by reliability monitor sampling. Note 22:Data retention is tested in compliance with JESD47G. Note 23:Guaranteed by 100% production test at elevated temperature for a shorter time; equivalence of this production test to the data sheet limit at operating temperature range is established by reliability testing. Note 24:EEPROM writes can become nonfunctional after the data-retention time is exceeded. Long-term storage at elevated temperatures is not recommended. www.maximintegrated.com Maxim Integrated │ 3 DS28E05 1-Wire EEPROM Pin Configurations TOP VIEW TOP VIEW IO 1 + + DS28E05 0Drr 3 GND N.C. 2 GND 1 IO 2 N.C. 3 6 N.C. DS28E05 5 N.C. 4 N.C. TSOC SOT23 Pin Descriptions PIN NAME SOT23 TSOC 2 3–6 N.C. 1 2 IO 3 1 GND FUNCTION Not Connected 1-Wire Bus Interface. Open-drain signal that requires an external pullup resistor. Ground Reference Detailed Description The DS28E05 combines 896 bits of user EEPROM organized as seven 128-bit pages, 64 bits of administrative data memory, and a 64-bit ROM ID in a single chip. Data is transferred serially through the 1-Wire protocol, which requires only a single data lead and a ground return. The user memory can have unrestricted write access (factory default), or can be write protected or put in EPROM emulation mode. Write protection prevents changes to the memory data. EPROM emulation mode logically ANDs memory data with incoming new data, which allows changing bits from 1 to 0, but not vice versa. By changing one bit at a time this mode could be used to create nonvolatile nonresettable counters. For more details refer to Application Note 5042: Implementing Nonvolatile, Nonresettable Counters for Embedded Systems. The device’s 64-bit ROM ID can be used to electronically identify the equipment in which the DS28E05 is used. The ROM ID guarantees unique identification and is also used to address the device in a multidrop 1-Wire network environment, where multiple devices reside on a common 1-Wire bus and operate independently of each other. Applications include accessory/PCB identification, medical sensor calibration data storage, analog sensor calibration, and after-market management of consumables. www.maximintegrated.com Overview The block diagram in Figure 1 shows the relationships between the major control and memory sections of the DS28E05. The DS28E05 has three main data components: seven 128-bit pages of user EEPROM, 64 bits of administrative data memory, and a 64-bit ROM ID. Figure 2 shows the hierarchic structure of the 1-Wire protocol. The bus master must first provide one of the five ROM function commands: Read ROM, Match ROM, Search ROM, Skip ROM, or Resume Communication. The protocol required for these ROM function commands is described in Figure 8. After a ROM function command is successfully executed, the memory functions become accessible and the master can select one of the two memory function commands. The function protocols are described in Figure 6. All data is read and written least significant bit first. 64-Bit ROM ID Each DS28E05 contains a unique ROM ID that is 64 bits long. The first 8 bits are a 1-Wire family code. The next 48 bits are a unique serial number. The last 8 bits are a cyclic redundancy check (CRC) of the first 56 bits. See Figure 3 for details. The 1-Wire CRC is generated using a polynomial generator consisting of a shift register and XOR gates as shown in Figure 4. Maxim Integrated │ 4 DS28E05 1-Wire EEPROM PARASITE POWER 1-Wire NET 1-Wire FUNCTION CONTROL DS28E05 64-BIT ROM ID MEMORY FUNCTION CONTROL USER EEPROM 7 PAGES OF (128 BITS EACH) ADMINISTRATIVE DATA (64 BITS) Figure 1. Block Diagram DS28E05 COMMAND LEVEL: 1-Wire ROM FUNCTION COMMANDS DS28E05-SPECIFIC MEMORY FUNCTION COMMANDS AVAILABLE COMMANDS: DATA FIELD AFFECTED: READ ROM MATCH ROM SEARCH ROM SKIP ROM RESUME 64-BIT ROM ID, RC-FLAG 64-BIT ROM ID, RC-FLAG 64-BIT ROM ID, RC-FLAG RC-FLAG RC-FLAG WRITE MEMORY READ MEMORY USER MEMORY, ADMINISTRATIVE DATA USER MEMORY, ADMINISTRATIVE DATA Figure 2. Hierarchical Structure for 1-Wire Protocol MSb LSb 8-BIT CRC CODE MSb 48-BIT SERIAL NUMBER LSb MSb 8-BIT FAMILY CODE (0Dh) LSb MSb LSb Figure 3. 64-Bit ROM ID The polynomial is X8 + X5 + X4 + 1. Additional information about the 1-Wire Cyclic Redundancy Check is available in Application Note 27: Understanding and Using Cyclic Redundancy Checks with Maxim iButton® Products. iButton is a registered trademark of Maxim Integrated Products, Inc. www.maximintegrated.com The shift register bits are initialized to 0. Then, starting with the least significant bit of the family code, one 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 last bit of the serial number has been entered, the shift register contains the CRC value. Shifting in the 8 bits of the CRC returns the shift register to all 0s. Maxim Integrated │ 5 DS28E05 1-Wire EEPROM POLYNOMIAL = X8 + X5 + X4 + 1 1ST STAGE X0 2ND STAGE X1 3RD STAGE X2 4TH STAGE 5TH STAGE X3 6TH STAGE X4 7TH STAGE X5 X6 8TH STAGE X7 X8 INPUT DATA Figure 4. 1-Wire CRC Generator Table 1. Memory Resources NAME SIZE (BYTES) User memory (EEPROM) 112 Read, (Write) Application-specific data storage Administrative data 8 Read, (Write), Internal Read Page protection settings, factory bytes, user bytes/manufacturer ID ROM ID 8 Read, Internal Read 1-Wire network device address ACCESS MODE PURPOSE Table 2. Address to Segment Mapping Segment 7 Segment 6 Segment 5 Segment 4 Segment 3 Segment 2 Segment 1 Segment 0 B1 B1 B1 B1 B1 B1 B1 B1 B0 B0 B0 B0 B0 B0 B0 B0 Page 0 (0Fh) (08h) (00h) Page 1 (1Fh) (18h) (10h) Page 2 (2Fh) (28h) (20h) Page 3 (3Fh) (38h) (30h) Page 4 (4Fh) (48h) (40h) Page 5 (5Fh) (58h) (50h) Page 6 (6Fh) Page 7 (68h) ROM ID (60h) Factory MAN. ID/U. PPD PPC PPB PPA Legend: (5Fh) → designates memory location 5Fh. Text without brackets refers to the register name. Memory Resources The memory of the DS28E05 consists of user memory, administrative data, and a ROM ID. Table 1 shows the size, access mode and purpose of the various memory areas. Brackets around an access mode indicate possible restrictions, such as write protection or read protection. The memory is organized as 8 pages of 16 bytes each (Figure 5). Each page consists of 8 segments. Table 2 shows how the segments relate to a memory address. Pages 0 to 6 are the user memory. Page 7 contains www.maximintegrated.com the administrative data and the ROM ID. The function memory locations 0074h to 0075h depends on the code in the Factory Word (addresses 0076h to 0077h). The Manufacturer ID can be a customer-supplied identification code that assists the application software in identifying the product the DS28E05 is associated with. Contact the factory to set up and register a custom manufacturer ID. Write protection or EPROM emulation mode is activated through the Write Memory command by writing to the corresponding locations (PPA to PPD) in the administrative data page. Once a protection is activated, it cannot Maxim Integrated │ 6 DS28E05 1-Wire EEPROM ADDRESS RANGE TYPE DESCRIPTION 0000h to 000Fh R/(W) User memory page 0 PROTECTION CODES — 0010h to 001Fh R/(W) User memory page 1 — 0020h to 002Fh R/(W) User memory page 2 — 0030h to 003Fh R/(W) User memory page 3 — 0040h to 004Fh R/(W) User memory page 4 — 0050h to 005Fh R/(W) User memory page 5 — 0060h to 006Fh R/(W) User memory page 6 — 0070h* R/(W) Page protection PPA, lower nibble: page 0; upper nibble: page 1 0h: open (factory default); Ah: EPROM mode; all other codes: write protected 0071h* R/(W) Page protection PPB, lower nibble: page 2, upper nibble: page 3 0h: open (factory default); Ah: EPROM mode; all other codes: write protected 0072h* R/(W) Page protection PPC, lower nibble: page 4, upper nibble: page 5 0h: open (factory default); Ah: EPROM mode; all other codes: write protected 0h: open (factory default); Ah: EPROM mode; all other codes: write protected Copy lock 0h: open (factory default); all other codes: Page protection locations PPA,PPB,PPC,PPD write protected. Prevents changes to the page modes. 0073h* R/(W) Page protection PPD, lower nibble: page 6, upper nibble: copy lock 0074h to 0075h R/(W) Manufacturer ID/User bytes — 0076h to 0077h R Factory Word. Set at factory. C3A9h: addresses 0074h to 0075h are user bytes. 3C56h: addresses 0074h to 0075h are write protected and hold a Manufacturer ID. 0078h to 007Fh R ROM ID, alternate readout (family code at address 0078h) — *ONCE A NIBBLE IS PROGRAMMED TO ANYTHING OTHER THAN 0h, THE NIBBLE CANNOT BE CHANGED. Figure 5. User Memory Map be reversed. Once the page protections are finalized, the copy lock nibble (73h, upper) should be set to prevent changes. The protection settings are read-accessible through the Read Memory command. See the Memory Function Commands section for command flow details. Function commands; it is also read-accessible as part of the 8th memory page. The family code is stored at the lower address (78h). The ROM ID uniquely identifies each individual DS28E05 and serves as network address in a mutidrop 1-Wire network. The ROM ID can be read through the ROM The memory function flowchart (Figure 6) describes the protocols to access the memory of the DS28E05. The memory is written in segments of 2 bytes. www.maximintegrated.com Memory Function Commands Maxim Integrated │ 7 DS28E05 1-Wire EEPROM F0h READ MEMORY? MASTER Tx MEMORY FUNCTION COMMAND 55h WRITE MEMORY? N Y FROM ROM FUNCTIONS FLOWCHART (FIGURE 8) N Y MASTER Tx STARTING ADDRESS T[15:0] MASTER Tx PARAMETER BYTE MASTER Tx FFh BYTE N ADDRESS < 0080h? N Y DS28E05 SETS MEMORY ADDRESS = (T[15:0]) PARAMETER BYTE AND FFh BYTE VALID? Y MASTER Tx 2 DATA BYTES MASTER Rx DATA BYTE FROM MEMORY ADDRESS DS28E05 INCREMENTS ADDRESS COUNTER MASTER Tx RESET? MASTER Rx (READS BACK) 2 DATA BYTES AND VERIFIES N Y MASTER Tx FFh RELEASE BYTE? N N Y MASTER WAITS 1 x tPROG* END OF MEMORY? MASTER Rx CS BYTE Y MASTER Rx “1”s N DS28E05 INCREMENTS ADDRESS COUNTER MASTER Tx RESET? MASTER Tx RESET? Y N Y SEGMENT # = 7? N Y MASTER Rx “1”s N MASTER Tx RESET? Y TO ROM FUNCTIONS FLOWCHART (FIGURE 8) *1-Wire IDLE HIGH FOR POWER. Figure 6. Memory Functions Flowchart www.maximintegrated.com Maxim Integrated │ 8 DS28E05 1-Wire EEPROM Write Memory [55h] The Write Memory command is used to program one or more contiguous 2-byte segments of a memory page. This command is applicable only to memory locations that are not write protected. The parameter byte specifies the page and segment number where the writing begins. The new segment data is transmitted in the sequence B0, B1. Table 2 shows the how these bytes map to the addressed memory page. The command flow allows writing one or multiple adjacent segments within a page. To safeguard against transmission errors, the DS28E05 supports read-after-write verification. In case of data error, the master aborts the command by issuing a 1-Wire reset. To start the transfer to EEPROM the master must transmit a release byte (FFh). After the programming time is over, the DS28E05 transmits a CS byte. If a page is in EPROM emulation mode, the new segment data is the bitwise AND of the segment data in memory and the new data provided with the command. Write Memory Command Code 55h Parameter Byte Target page selection, starting segment number (Table 3). Restrictions The memory page must not be write protected. Protocol Variations Writing within a page. Writing through the end of the page. Error conditions Invalid parameter byte. The memory page is write protected. CS Byte AAh = success. 33h = The command failed because the page is write protected. Table 3. Parameter Byte Bitmap BIT 7 BIT 6 0 BIT 5 BIT 4 BIT 3 PAGE # BIT 2 SEG # BIT 1 BIT 0 0 Note: The bits marked as 0 must be transmitted as 0 for the parameter byte to be valid. Bits 6:4: Memory Page Selection (PAGE #). These bits specify the memory page that is to be written to. Valid memory page numbers are 000b (page 0) to 111b (page 7). Bits 3:1: Starting Segment Selection (SEG #). These bits specify the location within the selected memory page where the writing begins. For pages 0 to 6 valid segment numbers are 000b (start of memory page) to 111b (last segment of memory page). Valid segment numbers for page 7 are 000b, 001b, and 010b. www.maximintegrated.com Maxim Integrated │ 9 DS28E05 1-Wire EEPROM Read Memory [F0h] The Read Memory command is used to read the memory. The command needs a 16-bit starting address TA1, TA2. The parameter byte specifies the lower address byte (TA1, T[6:0]) where the reading begins. After the parameter byte, the master transmits TA2 (T[15:8]), which must be 00 to be valid. The reading can start at any valid starting address and continue trough the end of the memory. If memory page 7 is read and the master continues reading, the resulting data is FFh. The master can end the Read Memory command at any time by issuing a reset pulse. Read Memory Command Code F0h Parameter Byte Starting memory address (Table 4). Restrictions None. This command can be issued at any time. Protocol Variations None. Error conditions Invalid parameter byte. CS Byte N/A Table 4. Parameter Byte Bitmap BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 0 BIT 2 BIT 1 BIT 0 TA1 Note: The bit marked as 0 must be transmitted as 0 for the parameter byte to be valid. 1-Wire Bus System Hardware Configuration The 1-Wire bus is a system that has a single bus master and one or more slaves. In all instances the DS28E05 is a slave device. The discussion of this bus system is broken down into three topics: hardware configuration, transaction sequence, and 1-Wire signaling (signal types and timing). The 1-Wire protocol defines bus transactions in terms of the bus state during specific time slots, which are initiated on the falling edge of sync pulses from the bus master. 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 threestate outputs. The 1-Wire port of the DS28E05 is open drain with an internal circuit equivalent to that shown in Figure 7. VPUP BUS MASTER DS28E05 1-Wire PORT RPUP DATA Rx Tx OPEN-DRAIN PORT PIN Rx = RECEIVE Tx = TRANSMIT Rx IL Tx 100Ω MOSFET Figure 7. Hardware Configuration www.maximintegrated.com Maxim Integrated │ 10 DS28E05 A multidrop bus consists of a 1-Wire bus with multiple slaves attached. The DS28E05 supports overdrive speed of 76.9kbps (max) only and cannot be used together with standard speed or dual-speed 1-Wire slaves on the bus. The value of the pullup resistor primarily depends on the 1-Wire pullup voltage, network size and load conditions. The DS28E05 requires a pullup resistor of maximum 1.5kΩ. The idle state for the 1-Wire bus is high. If for any reason a transaction must be suspended, the bus must be left in the idle state if the transaction is to resume. If this does not occur and the bus is left low for more than 16µs, one or more devices on the bus could be reset. Transaction Sequence The protocol for accessing the DS28E05 through 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 DS28E05 is on the bus and is ready to operate. For more details, see the 1-Wire Signaling section. 1-Wire ROM Function Commands Once the bus master has detected a presence, it can issue one of the five ROM function commands that the DS28E05 supports. All ROM function commands are 8 bits long. A list of these commands follows (see the flowchart in Figure 8). Read ROM [33h] The Read ROM command allows the bus master to read the DS28E05’s ROM ID (8-bit family code, unique 48-bit serial number, and 8-bit CRC). This command can only be used if there is a single slave on the bus. If more than one slave is present on the bus, a data collision occurs www.maximintegrated.com 1-Wire EEPROM when all slaves try to transmit at the same time (open drain produces a wired-AND result). The family code and 48-bit serial number as read by the master are unlikely to match the CRC. Match ROM [55h] The Match ROM command, followed by a 64-bit ROM ID, allows the bus master to address a specific DS28E05 on a multidrop bus. Only the DS28E05 that exactly matches the 64-bit ROM ID responds to the following memory function command. All other slaves wait for a reset pulse. This command can be used with a single or multiple devices on the bus. Search ROM [F0h] When a system is initially brought up, the bus master might not know the number of devices on the 1-Wire bus or their ROM ID numbers. By taking advantage of the wired-AND property of the bus, the master can use a process of elimination to identify the ID of all slave devices. For each bit of the ID number, starting with the least significant bit, the bus master issues a triplet of time slots. On the first slot, each slave device participating in the search outputs the true value of its ID number bit. On the second slot, each slave device participating in the search outputs the complemented value of its ID number bit. On the third slot, the master writes the true value of the bit to be selected. All slave devices that do not match the bit written by the master stop participating in the search. If both of the read bits are zero, the master knows that slave devices exist with both states of the bit. By choosing which state to write, the bus master branches in the search tree. After one complete pass, the bus master knows the ROM ID number of a single device. Additional passes identify the ID numbers of the remaining devices. Refer to Application Note 187: 1-Wire Search Algorithm for a detailed discussion, including an example. Skip ROM [CCh] This command can save time in a single-drop bus system by allowing the bus master to access the memory functions without providing the 64-bit ROM ID. If more than one slave is present on the bus and, for example, a read command is issued following the Skip ROM command, data collision occurs on the bus as multiple slaves transmit simultaneously (open-drain pulldowns produce a wired-AND result). Maxim Integrated │ 11 DS28E05 1-Wire EEPROM BUS MASTER Tx RESET PULSE FROM MEMORY FUNCTION FLOWCHART (FIGURE 6) BUS MASTER Tx ROM FUNCTION COMMAND 33h READ ROM COMMAND? DS28E05 Tx PRESENCE PULSE N 55h MATCH ROM COMMAND? F0h SEARCH ROM COMMAND? N N CCh SKIP ROM COMMAND? Y Y Y Y RC = 0 RC = 0 RC = 0 RC = 0 N A5h RESUME COMMAND? Y RC = 1? DS28E05 Tx FAMILY CODE (1 BYTE) DS28E05 Tx BIT 0 MASTER Tx BIT 0 DS28E05 Tx BIT 0 N N Y BIT 0 MATCH? Y Y DS28E05 Tx BIT 1 MASTER Tx BIT 1 DS28E05 Tx BIT 1 MASTER Tx BIT 1 BIT 1 MATCH? N N MASTER Tx RESET? Y N BIT 1 MATCH? Y Y DS28E05 Tx CRC BYTE N MASTER Tx BIT 0 BIT 0 MATCH? DS28E05 Tx SERIAL NUMBER (6 BYTES) N DS28E05 Tx BIT 63 MASTER Tx BIT 63 DS28E05 Tx BIT 63 MASTER Tx BIT 63 BIT 63 MATCH? N N BIT 63 MATCH? Y Y RC = 1 RC = 1 TO MEMORY FUNCTIONS FLOWCHART (FIGURE 6) Figure 8. ROM Functions Flowchart www.maximintegrated.com Maxim Integrated │ 12 DS28E05 1-Wire EEPROM Resume Command [A5h] and memory function command. If the bus master uses slew-rate control on the falling edge, it must pull down the line for tRSTL + tF to compensate for the edge. To maximize the data throughput in a multidrop environ ment, the Resume command is available. This command checks the status of the RC bit and, if it is set, directly transfers control to the memory functions, similar to a Skip ROM command. The only way to set the RC bit is through successfully executing the Match ROM or Search ROM command. Once the RC bit is set, the device can repeatedly be accessed through the Resume command. Accessing another device on the bus clears the RC bit, preventing two or more devices from simultaneously responding to the Resume command. After the bus master has released the line it goes into receive mode. Now the 1-Wire bus is pulled to VPUP through the pullup resistor. When the threshold VTH is crossed, the DS28E05 waits and then transmits a presence pulse by pulling the line low. To detect a presence pulse, the master must test the logical state of the 1-Wire line at tMSP. Read-/Write-Time Slots Data communication with the DS28E05 takes place in time slots that carry a single bit each. Write time slots transport data from bus master to slave. Read time slots transfer data from slave to master. Figure 10 illustrates the definitions of the write- and read-time slots. 1-Wire Signaling The DS28E05 requires strict protocols to ensure data integrity. The protocol consists of four types of signaling on one line: reset sequence with reset pulse and presence pulse, write-zero, write-one, and read-data. Except for the presence pulse, the bus master initiates all falling edges. The DS28E05 communicates at overdrive speed only. All communication begins with the master pulling the data line low. As the voltage on the 1-Wire line falls below the threshold VTL, the DS28E05 starts its internal timing generator that determines when the data line is sampled during a write time slot and how long data is valid during a read time slot. To get from idle to active, the voltage on the 1-Wire line needs to fall from VPUP below the threshold VTL. To get from active to idle, the voltage needs to rise from VIL(MAX) past the threshold VTH. The time it takes for the voltage to make this rise is seen in Figure 9 as ε, and its duration depends on the pullup resistor (RPUP) used and the capacitance of the 1-Wire network attached. The voltage VIL(MAX) is relevant for the DS28E05 when determining a logical level, not triggering any events. Master-to-Slave For a write-one time slot, the voltage on the data line must have crossed the VTH threshold before the writeone low time tW1L(MAX) is expired. For a write-zero time slot, the voltage on the data line must stay below the VTH threshold until the write-zero low time tW0L(MIN) is expired. For the most reliable communication, the voltage on the data line should not exceed VIL(MAX) during the entire tW0L or tW1L window. After the VTH threshold has been crossed, the DS28E05 needs a recovery time tREC before it is ready for the next time slot. Figure 9 shows the initialization sequence required to begin any communication with the DS28E05. A reset pulse followed by a presence pulse indicates that the DS28E05 is ready to receive data, given the correct ROM MASTER Tx "RESET PULSE" MASTER Rx "PRESENCE PULSE" ε tMSP VPUP VIHMASTER VTH VTL VIL(MAX) 0V tRSTL tREC tF tRSTH RESISTOR MASTER DS28E05 Figure 9. Initialization Procedure: Reset and Presence Pulse www.maximintegrated.com Maxim Integrated │ 13 DS28E05 1-Wire EEPROM WRITE-ONE TIME SLOT tW1L VPUP VIHMASTER VTH VTL VIL(MAX) 0V ε tF tSLOT RESISTOR MASTER WRITE-ZERO TIME SLOT tW0L VPUP VIHMASTER VTH VTL VIL(MAX) 0V ε tF tSLOT RESISTOR READ-DATA TIME SLOT tRL VPUP VIHMASTER VTH VTL VIL(MAX) 0V tREC MASTER tMSR MASTER SAMPLING WINDOW δ tF tSLOT RESISTOR MASTER tREC DS28E05 Figure 10. Read/Write Timing Diagrams Slave-to-Master A read-data time slot begins like a write-one time slot. The voltage on the data line must remain below VTL until the read low time tRL is expired. During the tRL window, when responding with a 0, the DS28E05 starts pulling the data www.maximintegrated.com line low; its internal timing generator determines when this pulldown ends and the voltage starts rising again. When responding with a 1, the DS28E05 does not hold the data line low at all, and the voltage starts rising as soon as tRL is over. Maxim Integrated │ 14 DS28E05 1-Wire EEPROM The sum of tRL + δ (rise time) on one side and the internal timing generator of the DS28E05 on the other side define the master sampling window (tMSR(MIN) to tMSR(MAX)), in which the master must perform a read from the data line. For the most reliable communication, tRL should be as short as permissible, and the master should read close to but no later than tMSR(MAX). After reading from the data line, the master must wait until tSLOT is expired. This guarantees sufficient recovery time tREC for the DS28E05 to get ready for the next time slot. Note that tREC specified herein applies only to a single DS28E05 attached to a 1-Wire line. For multidevice configurations, tREC must be extended to accommodate the additional 1-Wire device input capacitance. Improved Network Behavior (Switchpoint Hysteresis) In a 1-Wire environment, line termination is possible only during transients controlled by the bus master (1-Wire driver). 1-Wire networks, therefore, are susceptible to noise of various origins. Depending on the physical size and topology of the network, reflections from end points and branch points can add up or cancel each other to some extent. Such reflections are visible as glitches or VPUP VTH VTL VHY 0V Figure 11. Noise Suppression Scheme ringing on the 1-Wire communication line. Noise coupled onto the 1-Wire line from external sources can also result in signal glitching. A glitch during the rising edge of a time slot can cause a slave device to lose synchronization with the master and, consequently, result in a Search ROM command coming to a dead end or cause a devicespecific function command to abort. The DS28E05 uses a 1-Wire front-end with built-in hysteresis at the low-to-high switching threshold VTH. If a negative glitch crosses VTH but does not go below VTL, it is not recognized (Figure 11). 1-Wire Communication Examples See Table 5 and Table 6 for the 1-Wire communication legend and data direction codes. Table 5. 1-Wire Communication Legend SYMBOL DESCRIPTION RST 1-Wire reset pulse generated by master PD 1-Wire presence detect pulse generated by slave Select Command and data to satisfy the ROM function protocol PB Parameter byte CS Command Success indicator Release FFh byte sent by the master to start a write activity in the slave WM Command “Write Memory” RM Command “Read Memory” <n bytes> <data to EOP> Data FF loop Transfer of n bytes Transfer of as many bytes as are needed to reach the end of the page Transfer of 2 bytes segment data Indefinite loop where the bus master reads FFh bytes Table 6. Data Direction Codes Master-to-Slave Slave-to-Master Master waits (1-Wire idle high) www.maximintegrated.com Maxim Integrated │ 15 DS28E05 1-Wire EEPROM 1-Wire Communication Examples (continued) Write Memory Writing within a page, not reaching the end of the page. RST PD Select WM PB FFh Data Data Release Wait tPROG CS = AAh RST Repeat Writing through the end of the page. RST PD Select WM PB FFh Data Data Release Wait tPROG CS = AAh FF Loop Repeat Writing fails with protection error RST PD Select WM PB FFh Data Data Release Wait tPROG CS = 33h RST Invalid parameter byte RST PD Select WM PB = 7Eh FFh FF Loop Read Memory Starting at address 33h, reading 6 bytes RST PD Select RM PB = 33h 00h <6 bytes> RST Starting at the manufacturer ID, reading beyond the end of memory RST PD Select RM PB = 76h 00h <10 bytes> FF Loop Invalid parameter byte RST PD Select RM PB = 80h 00h Ordering Information PART Package Information TEMP RANGE PIN-PACKAGE DS28E05R+T* -40ºC to +85ºC 3 SOT23 (3k pcs) DS28E05P+ -40ºC to +85ºC 6 TSOC DS28E05P+T -40ºC to +85ºC 6 TSOC (4k pcs) +Denotes a lead(Pb)-free/RoHS-compliant package. T = Tape and reel. *Future product—contact factory for availability. www.maximintegrated.com FF Loop For the latest package outline information and land patterns (footprints), go to www.maximintegrated.com/packages. Note that a “+”, “#”, or “-” in the package code indicates RoHS status only. Package drawings may show a different suffix character, but the drawing pertains to the package regardless of RoHS status. PACKAGE TYPE PACKAGE CODE OUTLINE NO. LAND PATTERN NO. 3 SOT23 U3+2 21-0051 90-0179 6 TSOC D6+1 21-0382 90-0321 Maxim Integrated │ 16 DS28E05 1-Wire EEPROM Revision History REVISION NUMBER REVISION DATE 0 12/12 DESCRIPTION Initial release PAGES CHANGED — For pricing, delivery, and ordering information, please contact Maxim Direct at 1-888-629-4642, or visit Maxim Integrated’s website at www.maximintegrated.com. Maxim Integrated cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim Integrated product. No circuit patent licenses are implied. Maxim Integrated 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 and the Maxim Integrated logo are trademarks of Maxim Integrated Products, Inc. © 2012 Maxim Integrated Products, Inc. │ 17