Skip to content

Driver for the SHT3x temperature and humditiy sensor using STM32Cube HAL

Notifications You must be signed in to change notification settings

henriheimann/stm32-hal-sht3x

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SHT3x

Driver for the range of SHT3x temperature and humidity sensors.

Usage

After connecting an SHT3x sensor to your microcontroller via I2C and initialising the bus using Cube you can use this library to interact with the sensor as shown in the following example. I2C must be running in standard or fast mode and clock stretching must be enabled:

// Create the handle for the sensor.
sht3x_handle_t handle = {
    .i2c_handle = &hi2c1,
    .device_address = SHT3X_I2C_DEVICE_ADDRESS_ADDR_PIN_LOW
};

// Initialise sensor (tests connection by reading the status register).
if (!sht3x_init(&handle)) {
    printf("SHT3x access failed.\n\r");
}

// Read temperature and humidity.
float temperature, humidity;
sht3x_read_temperature_and_humidity(&handle, &temperature, &humidity);
printf("Initial temperature: %.2fC, humidity: %.2f%%RH\n\r", temperature, humidity);

// Enable heater for two seconds.
sht3x_set_header_enable(&handle, true);
HAL_Delay(2000);
sht3x_set_header_enable(&handle, false);

// Read temperature and humidity again.
sht3x_read_temperature_and_humidity(&handle, &temperature, &humidity);
printf("After heating temperature: %.2fC, humidity: %.2f%%RH\n\r", temperature, humidity);

Supported Platforms

STM32L0 and STM32L4 are supported. The HAL header includes for other platforms may be added in sht3x.h.

About

Driver for the SHT3x temperature and humditiy sensor using STM32Cube HAL

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published