I. Overview of SHT2X
1, 1.8% accuracy after calibration
2, digital output type, I²C interface
3, ultra-low power consumption
4, ultra-long time stability
5, DFN package, can reflow soldering
Second, sensor analysis
DFN package, 3*3mm height 1.1mm
Note: Center pad connected to the ground, NC feet must be suspended, but also away from the heat source. At 90% RH, each additional 1 degrees of heat, resulting in an error up to%5.
Sensor Chip
In addition to capacitive relative humidity sensor and band gap temperature sensors, the transducer also has op amp, ad Converter, OTP memory and digital processing unit.
1) Sensor characteristics
1. Humidity
2. Temperature
3. Electrical characteristics
4. Operating range
5. The accuracy of humidity at different temperatures
6, at 3V Vdd, the power consumption curve at different temperatures
7, when the ring temperature of 25 ℃, different power consumption situation
8. Usage information
Note: Since the solder may not be fully populated, there will be bare edges or pins that will be oxidized over time.
The classic soldering temperature is 260 degrees, but not more than 30 seconds, preferably infrared or convection reflow soldering. Manual soldering, at up to 350 degrees, preferably not more than 5 seconds.
Very important: After welding, the component should be placed in a space greater than 75% humidity for at least 12 hours for the device to activate, otherwise if placed in the environment, the read will have an offset, the offset will slowly disappear. If the ambient humidity is less than 75% and greater than 40%, wait 5 days to activate.
Repair:
Baking: At ambient temperature of 100-105 degrees humidity less than 5%, 10 hours
Reactivation: At ambient temperature of 20-30 degrees humidity at about 75% 12 hours
I2c
Start sensor
The sensor selects the supply voltage (from 2.1V to 3.6V) for the first start. After power-up, when the SCL is high, at least 15ms is required to wait for his idle state. For example, receive commands from a host. The current consumption can be up to 350uA at startup. The chip automatically enters hibernation whenever power is taken, no measurement or communication is performed.
Start and stop sequences
Same as other i²c communications.
Send command
After sending the boot, the subsequent I²c header consists of 7-word device address 1000 000 and a SDA direction word (read 1, written as 0). After the eighth SCL clock, if there is data transfer, the sensor will pull down the SDA data line, indicating there is an ACK, otherwise nack. After the measurement command is issued (1110 0011 is temperature, 1110 0101 is relative humidity), the MCU must wait until the measurement is complete. The specific directives are shown in the following table:
Host/slave mode
Communication with Sensor This has two different modes of operation, host mode or slave mode. In the first case, the clock line SCL is controlled by the sensor during the measurement process. The second case is that the clock line is controlled by the MCU at the time of measurement. The second mode of communication allows I²c to communicate with other devices when measuring sensor.
Sensor host mode communication timing diagram
Sensor slave mode communication timing diagram:
Note: The I²C communication allows you to repeat start without having to have a stop. Like.
The maximum measurement duration is determined by the measured object and resolution, as follows:
Sensor Software Reset
User Configuration Register
The configuration register must read the default value before writing, then configure, write. Each bit of the register is represented as follows:
The i²c timing is as follows:
CRC data Check
This is more troublesome, you can refer to the sht1x/sht7x CRC manual. The present procedure explains:
Static uint8_t SHT2X_CHECKCRC (uint8_tdata[], uint8_t nbrofbytes, uint8_t checksum)
{
uint8_t CRC = 0;
uint8_t bytectr;
uint8_t bit;
Calculates 8-bit checksum with given polynomial
for (bytectr = 0; bytectr < nbrofbytes; ++bytectr)
{
CRC ^= (DATA[BYTECTR]);
for (bit = 8; bit > 0;--bit)
{
if (CRC & 0X80)
{
CRC = (uint8_t) ((crc<< 1) ^ (uint16_t) polynomial);
}
Else
{
CRC = (crc<< 1);
}
}
}
if (CRC = Checksum)
return FALSE;
Else
return TRUE; /**< match*/
}
Relative Humidity Conversion formula:
SRH is the read value.
Temperature Value Conversion formula:
Temperature and Humidity Module SHT2X user manual