Share:


2951CMB

Specifications

SKU: 95395

BUY 2951CMB https://www.utsource.net/itm/p/95395.html

Parameter Description
Part Number 2951CMB
Type Digital Temperature Sensor
Supply Voltage 2.7V to 5.5V
**Operating Temperature -40°C to +125°C
Accuracy ±0.5°C from -10°C to +85°C, ±1.0°C from -40°C to +125°C
Resolution 9-bit to 12-bit (Configurable)
**Communication Interface Two-wire (I2C/SMBus)
Package Type TO-92
Conversion Time 750ms at 12-bit resolution, 93.75ms at 9-bit resolution
Power Consumption 65μA (Active), 1μA (Shutdown)
Output Data Format 16-bit signed integer

Instructions for Use

  1. Power Supply:

    • Connect the VDD pin to a power supply between 2.7V and 5.5V.
    • Connect the GND pin to the ground.
  2. Communication Setup:

    • Connect the SDA and SCL pins to the I2C bus lines.
    • Ensure proper pull-up resistors (typically 4.7kΩ) are used on the SDA and SCL lines.
  3. Configuration:

    • Set the desired resolution by writing to the configuration register.
    • The default resolution is 12-bit.
  4. Temperature Conversion:

    • Initiate a temperature conversion by writing to the control register.
    • Wait for the conversion time based on the selected resolution.
  5. Reading Temperature Data:

    • Read the temperature data from the temperature register.
    • The data is a 16-bit signed integer, where each bit represents 0.0625°C.
  6. Shutdown Mode:

    • To reduce power consumption, write to the configuration register to enter shutdown mode.
    • The device will consume approximately 1μA in this mode.
  7. Error Handling:

    • Check the status register for any error flags, such as communication errors or invalid commands.
  8. Example Code (Pseudocode):

    // Initialize I2C communication
    i2c_init();
    
    // Write to configuration register to set 12-bit resolution
    i2c_write(0x01, 0x60);
    
    // Start temperature conversion
    i2c_write(0x00, 0x40);
    
    // Wait for conversion to complete
    delay(750); // 750ms for 12-bit resolution
    
    // Read temperature data
    temp_high = i2c_read(0x00);
    temp_low = i2c_read(0x01);
    
    // Combine high and low bytes
    temperature = (temp_high << 8) | temp_low;
    
    // Convert to Celsius
    temperature = temperature * 0.0625;
    

For more detailed information, refer to the datasheet provided by the manufacturer.

(For reference only)

 Inquiry - 2951CMB