Rainbow Electronics DS1920 User Manual

SPECIAL FEATURES
www.dalsemi.com
1993
A0
1993
§ Digital thermometer measures temperatures
from -55°C to +100°C in typically 0.2 seconds
§ Zero standby power
§ 0.5°C resolution, digital temperature reading
is two’s complement of °C value
resolution through interpolation
§ Reduces control, address, data, and power to
a single data contact
§ 8-bit device-generated CRC for data integrity
§ 8-bit family code specifies DS1920
communications requirements to reader
§ Special command set allows user to skip
ROM section and do temperature measurements simultaneously for all devices on the bus
§ 2 bytes of EEPROM to be used either as
alarm triggers or user memory
§ Alarm search directly indicates which device
senses alarming temperatures
COMMON iButton FEATURES
§ Unique, factory-lasered and tested 64-bit
registration number (8-bit family code + 48­bit serial number + 8-bit CRC tester) assures absolute traceability because no two parts are alike
F3 MICROCAN
0.36
TM
3.10
0.51
YYWW REGISTERED RR
000000FBC52B
c
10
16.25
17.35
DS1920
Temperature iButton
§ Multidrop controller for MicroLAN
§ Digital identification and information by
momentary contact
§ Chip-based data carrier compactly stores
information
§ Data can be accessed while affixed to object
§ Economically communicates to bus master
with a single digital signal at 16.3k bits per second
§ Standard 16 mm diameter and 1-Wire
protocol ensure compatibility with iButton family
§ Button shape is self-aligning with cup-
shaped probes
§ Durable stainless steel case engraved with
registration number withstands harsh environments
§ Easily affixed with self-stick adhesive
backing, latched by its flange, or locked with a ring pressed onto its rim
§ Presence detector acknowledges when reader
first applies voltage
§ Meets UL#913 (4th Edit.); Intrinsically Safe
Apparatus, approved under Entity Concept for use in Class I, Division 1, Group A, B, C and D Locations (application pending)
F5 MICROCAN
5.89
0.36
TM
0.51
YYWW REGISTERED RR
20
000000FBD8B3
c
10
TM
16.25
17.35
DATA
GROUND
All dimensions are shown in millimeters
1 of 22 081699
DATA
GROUND
DS1920
ORDERING INFORMATION
DS1920-F3 F3 MicroCan DS1920-F5 F5 MicroCan
EXAMPLES OF ACCESSORIES
DS9096P Self-Stick Adhesive Pad DS9101 Multi-Purpose Clip DS9093RA Mounting Lock Ring DS9093F Snap-In Fob DS9092 iButton Probe
iButton DESCRIPTION
The DS1920 Temperature iButton provides 9-bit temperature readings which indicate the temperature of the device. Information is sent to/from the DS1920 over a 1-Wire interface. Power for reading, writing, and performing temperature conversions is derived from the data line itself. Because each DS1920 contains a unique silicon serial number, multiple DS1920s can exist on the same 1-Wire bus. This allows for placing temperature sensors in many different places. Applications where this feature is useful include HVAC environmental controls, sensing temperatures inside buildings, equipment or machinery, and in process monitoring and control.
OVERVIEW
The block diagram of Figure 1 shows the major components of the DS1920. The DS1920 has three main data components: 1) 64-bit lasered ROM, 2) temperature sensor, and 3) nonvolatile temperature alarm triggers TH and TL. The device derives its power from the 1-Wire communication line by storing energy on an internal capacitor during periods of time when the signal line is high and continues to operate off this power source during the low times of the 1-Wire line until it returns high to replenish the parasite (capacitor) supply.
Communication to the DS1920 is via a 1-Wire port. With the 1-Wire port, the memory and control functions will not be available before the ROM function protocol has been established. The master must first provide one of five ROM function commands: 1) Read ROM, 2) Match ROM, 3) Search ROM, 4) Skip ROM, or 5) Alarm Search. These commands operate on the 64-bit lasered ROM portion of each device and can single out a specific device if many are present on the 1-Wire line as well as 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 five memory and control function commands.
One control function command instructs the DS1920 to perform a temperature measurement. The result of this measurement will be placed in the DS1920’s scratchpad memory, and may be read by issuing a memory function command which reads the contents of the scratchpad memory. The temperature alarm triggers TH and TL consist of 1 byte of EEPROM each. If the alarm search command is not applied to the DS1920, these registers may be used as general purpose user memory. Writing TH and TL is done using a memory function command. Read access to these registers is through the scratchpad. All data is read and written least significant bit first.
2 of 22
DS1920
DS1920 BLOCK DIAGRAM Figure 1
PARASITE POWER
The block diagram (Figure 1) shows the parasite-powered circuitry. This circuitry “steals” power whenever the data contact is high. Data 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 no local power source is needed for remote sensing of temperature.
In order for the DS1920 to be able to perform accurate temperature conversions, sufficient power must be provided over the data line when a temperature conversion is taking place. The DS1920 requires a current during conversion of up to 1 mA, therefore, the data line will not have sufficient drive due to the 5 k pullup resistor. This problem is particularly acute if several DS1920s are on the same data line and attempting to convert simultaneously.
The way to assure that the DS1920 has sufficient supply current is to provide a strong pullup on the data line whenever temperature conversion or copying to the EEPROM is taking place. This may be accomplished by using a MOSFET to connect the data line directly to the power supply as shown in Figure 2. The data line must be switched over to the strong pullup within 10 µs maximum after issuing a command that involves copying to the EEPROM or initiates a temperature conversion.
3 of 22
DS1920
STRONG PULL-UP FOR SUPPLYING DS1920 DURING TEMPERATURE CONVERSION Figure 2
OPERATION - MEASURING TEMPERATURE
The DS1920 measures temperatures through the use of an on-board proprietary temperature measurement technique. A block diagram of the temperature measurement circuitry is shown in Figure 3.
The DS1920 measures temperature by counting the number of clock cycles that an oscillator with a low temperature coefficient goes through during a gate period determined by a high temperature coefficient oscillator. The counter is preset with a base count that corresponds to -55°C. If the counter reaches 0 before the gate period is over, the temperature register, which is also preset to the -55°C value, is incremented, indicating that the temperature is higher than -55°C.
At the same time, the counter is then preset with a value determined by the slope accumulator circuitry. The counter is then clocked again until it reaches 0. If the gate period is still not finished, then this process repeats.
The slope accumulator compensates for the non-linear behavior of the oscillators over temperature, yielding a high-resolution temperature measurement. This is done by changing the number of counts necessary for the counter to go through for each incremental degree in temperature. To obtain the desired resolution, therefore, both the value of the counter and the number of counts per degree C (the value of the slope accumulator) at a given temperature must be known.
Internally, this calculation is done inside the DS1920 to provide 0.5°C resolution. The temperature reading is provided in a 16-bit, sign-extended two’s complement reading. Table 1 describes the exact relationship of output data to measured temperature. The data is transmitted serially over the 1-Wire interface. The DS1920 can measure temperature over the range of -55°C to +100°C in 0.5°C increments. For Fahrenheit usage, a lookup table or conversion factor must be used.
Note that temperature is represented in the DS1920 in terms of a ½°C LSB, yielding the following 9-bit format:
MSB LSB
1 1 1 0 0 1 1 1 0
= -25°C
4 of 22
DS1920
The most significant (sign) bit is duplicated into all of the bits in the upper MSB of the 2-byte temperature register in memory. This “sign-extension” yields the 16-bit temperature readings as shown in Table 1.
Higher resolutions may be obtained by the following procedure. First, read the temperature, and truncate the 0.5°C bit (the LSB) from the read value. This value is TEMP_READ. The value left in the counter may then be read. This value is the count remaining (COUNT_REMAIN) after the gate period has ceased. The last value needed is the number of counts per degree C (COUNT_PER_C) at that temperature. The actual temperature may be then be calculated by the user using the following formula:
TEMPERATURE = TEMP_READ - 0.25 +
TEMPERATURE MEASURING CIRCUITRY Figure 3
IN)COUNT_REMA-_C(COUNT_PER
CCOUNT_PER_
SET/CLEAR LSB
TEMPERATURE/DATA RELATIONSHIPS Table 1
TEMPERATURE
+100°C
+25°C
°C
+0°C
°C
-25°C
-55°C
DIGITAL OUTPUT
(BINARY)
00000000 11001000 00C8H 00000000 00110010 0032H 00000000 00000001 0001H 00000000 00000000 0000H 11111111 11111111 FFFFH 11111111 11001110 FFCEH 11111111 10010010 FF92H
5 of 22
DIGITAL OUTPUT
(HEX)
DS1920
OPERATION - ALARM SIGNALING
After the DS1920 has performed a temperature conversion, the temperature value is compared to the trigger values stored in TH and TL. Since these registers are 8 bits only, the 0.5°C bit is ignored for comparison. The most significant bit of TH or TL directly corresponds to the sign bit of the 16-bit temperature register. If the result of a temperature measurement is higher than TH or lower than TL, an alarm flag inside the device is set. This flag is updated with every temperature measurement. As long as the alarm flag is set, the DS1920 will respond to the alarm search command. This allows many DS1920s to be connected in parallel doing simultaneous temperature measurements. If somewhere the temperature exceeds the limits, the alarming device(s) can be identified and read immediately without having to read non-alarming devices.
64-BIT LASERED ROM
Each DS1920 contains a unique ROM code that is 64 bits long. The first 8 bits are a 1-Wire family code (DS1920 code is 10h). The next 48 bits are a unique serial number. The last 8 bits are a CRC of the first 56 bits. (See Figure 4.) The 64-bit ROM and ROM Function Control section allow the DS1920 to operate as a 1-Wire device and follow the 1-Wire protocol detailed in the section “1-Wire Bus System.” The memory and control functions of the DS1920 are not accessible until the ROM function protocol has been satisfied. This protocol is described in the ROM function protocol flowchart (Figure 5). The 1-Wire bus master must first provide one of five ROM function commands: 1) Read ROM, 2) Match ROM, 3) Search ROM, 4) Skip ROM, or 5) Alarm Search. After a ROM function sequence has been successfully executed, the functions specific to the DS1920 are accessible and the bus master may then provide any one of the five memory and control function commands.
CRC GENERATION
The DS1920 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 DS1920 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 DS1920 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 DS1920 (for ROM reads) or the 8-bit CRC value computed within the DS1920 (which is read as a 9th byte when the 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 DS1920 that prevents a command sequence from proceeding if the CRC stored in or calculated by the DS1920 does not match the value generated by the bus master.
The 1-Wire CRC can be generated using a polynomial generator consisting of a shift register and XOR gates as shown in Figure 6. Additional information about the Dallas 1-Wire Cyclic Redundancy Check is available in the Book of DS19xx iButton Standards.
The shift register bits are first initialized to 0. For the ROM section, 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, then the serial number is entered. After the 48th bit of the serial number has been entered, the shift register contains the CRC value. Shifting in the 8 bits of CRC should return the shift register to all 0s.
6 of 22
DS1920
64-BIT LASERED ROM Figure 4
8-BIT CRC CODE 48-BIT SERIAL NUMBER 8-BIT FAMILY CODE (10H)
MSB LSB MSB LSB MSB LSB
ROM FUNCTIONS FLOW CHART Figure 5
7 of 22
Loading...
+ 15 hidden pages