DS18S20
CRC GENERATION
CRC bytes are provided as part of the DS18S20’s 64-bit ROM code and in the 9th byte of the scratchpad
memory. The ROM code CRC is calculated from the first 56 bits of the ROM code and is contained in the
most significant byte of the ROM. The scratchpad CRC is calculated from the data stored in the
scratchpad, and therefore it changes when the data in the scratchpad changes. The CRCs provide the bus
master with a method of data validation when data is read from the DS18S20. To verify that data has been
read correctly, the bus master must re-calculate the CRC from the received data and then compare this
value to either the ROM code CRC (for ROM reads) or to the scratchpad CRC (for scratchpad reads). If
the calculated CRC matches the read CRC, the data has been received error free. The comparison of CRC
values and the decision to continue with an operation are determined entirely by the bus master. There is
no circuitry inside the DS18S20 that prevents a command sequence from proceeding if the DS18S20
CRC (ROM or scratchpad) does not match the value generated by the bus master.
The equivalent polynomial function of the CRC (ROM or scratchpad) is:
CRC = X 8 + X 5 + X 4 + 1
The bus master can re-calculate the CRC and compare it to the CRC values from the DS18S20 using the
polynomial generator shown in Figure 8. This circuit consists of a shift register and XOR gates, and the
shift register bits are initialized to 0. Starting with the least significant bit of the ROM code or the least
significant bit of byte 0 in the scratchpad, one bit at a time should shifted into the shift register. After
shifting in the 56th bit from the ROM or the most significant bit of byte 7 from the scratchpad, the
polynomial generator will contain the re-calculated CRC. Next, the 8-bit ROM code or scratchpad CRC
from the DS18S20 must be shifted into the circuit. At this point, if the re-calculated CRC was correct, the
shift register will contain all 0s. Additional information about the Maxim 1-Wire cyclic redundancy check
is available in Application Note 27: Understanding and Using Cyclic Redundancy Checks with Maxim
iButton Products.
Figure 8. CRC Generator
INPUT
(MSB)
XOR
8 of 23
XOR
(LSB)
XOR
相关PDF资料
DS1822+PAR IC THERMOMETER ECONO DIG TO-92
DS1822Z/T&R IC THERMOMETER ECONO DIG 8-SOIC
DS1870E-010+T&R IC CNTRLR RF POWER AMP 16TSSOP
DS18S20-PAR+T&R IC THERM MICROLAN HI-PREC TO-92
DS60R+T&R IC SENSOR MICRO CENTIGRADE SOT23
DV164102 KIT DEV RFPICKIT KIT 1
DVK90109 KIT DEV FOR MLX90109
DVK90121 KIT DEV FOR MLX90121
相关代理商/技术参数
DS1820K 制造商:Maxim Integrated Products 功能描述:THERMOMETER DEMO KIT
DS1820S 制造商:未知厂家 制造商全称:未知厂家 功能描述:DS1820.DS1820S Digital Thermometer Replacements
DS1821 功能描述:板上安装温度传感器 RoHS:否 制造商:Omron Electronics 输出类型:Digital 配置: 准确性:+/- 1.5 C, +/- 3 C 温度阈值: 数字输出 - 总线接口:2-Wire, I2C, SMBus 电源电压-最大:5.5 V 电源电压-最小:4.5 V 最大工作温度:+ 50 C 最小工作温度:0 C 关闭: 安装风格: 封装 / 箱体: 设备功能:Temperature and Humidity Sensor
DS1821_07 制造商:DALLAS 制造商全称:Dallas Semiconductor 功能描述:Programmable Digital Thermostat and Thermometer
DS1821+ 功能描述:板上安装温度传感器 Programmable Digital Thermostat/Thrmmtr RoHS:否 制造商:Omron Electronics 输出类型:Digital 配置: 准确性:+/- 1.5 C, +/- 3 C 温度阈值: 数字输出 - 总线接口:2-Wire, I2C, SMBus 电源电压-最大:5.5 V 电源电压-最小:4.5 V 最大工作温度:+ 50 C 最小工作温度:0 C 关闭: 安装风格: 封装 / 箱体: 设备功能:Temperature and Humidity Sensor
DS1821C+ 功能描述:恒温器 Programmable Digital Thermo-stat/monitor RoHS:否 制造商:Maxim Integrated 功能: 开路温度: 闭合温度: 准确性:+/- 1 C 温度范围:- 55 C to + 125 C 电流额定值:500 uA 电压额定值:2.7 V to 5.5 V 产品:Thermostats
DS1821-C02 功能描述:板上安装温度传感器 RoHS:否 制造商:Omron Electronics 输出类型:Digital 配置: 准确性:+/- 1.5 C, +/- 3 C 温度阈值: 数字输出 - 总线接口:2-Wire, I2C, SMBus 电源电压-最大:5.5 V 电源电压-最小:4.5 V 最大工作温度:+ 50 C 最小工作温度:0 C 关闭: 安装风格: 封装 / 箱体: 设备功能:Temperature and Humidity Sensor
DS1821-C04 制造商:DSC 功能描述: