Loading...
Searching...
No Matches
sht3x.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2018 Gunar Schorcht
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
15
16#include <stdint.h>
17#include <stdbool.h>
18
19#include "periph/i2c.h"
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
26#define SHT3X_I2C_ADDR_1 (0x44)
27#define SHT3X_I2C_ADDR_2 (0x45)
28
39
51
75
85
102
120int sht3x_init (sht3x_dev_t *dev, const sht3x_params_t *params);
121
156int sht3x_read (sht3x_dev_t* dev, int16_t* temp, int16_t* hum);
157
158#ifdef __cplusplus
159}
160#endif
161
uint_fast8_t i2c_t
Default i2c_t type definition.
Definition i2c.h:155
Low-level I2C peripheral driver interface definition.
int sht3x_read(sht3x_dev_t *dev, int16_t *temp, int16_t *hum)
Read SHT3x measurement results (temperature and humidity)
sht3x_mode_t
SHT3x measurement modes.
Definition sht3x.h:43
@ SHT3X_PERIODIC_2_MPS
periodic with 2 measurements per second (mps)
Definition sht3x.h:47
@ SHT3X_PERIODIC_4_MPS
periodic with 4 measurements per second (mps)
Definition sht3x.h:48
@ SHT3X_SINGLE_SHOT
single shot measurement
Definition sht3x.h:44
@ SHT3X_PERIODIC_1_MPS
periodic with 1 measurements per second (mps)
Definition sht3x.h:46
@ SHT3X_PERIODIC_10_MPS
periodic with 10 measurements per second (mps)
Definition sht3x.h:49
@ SHT3X_PERIODIC_0_5_MPS
periodic with 0.5 measurements per second (mps)
Definition sht3x.h:45
sht3x_error_codes
Driver error codes (returned as negative values)
Definition sht3x.h:32
@ SHT3X_ERROR_STATUS
sensor has wrong status
Definition sht3x.h:36
@ SHT3X_ERROR_I2C
I2C communication failure.
Definition sht3x.h:34
@ SHT3X_ERROR_MEASURE_CMD_INV
measurement command not executed
Definition sht3x.h:37
@ SHT3X_ERROR_CRC
CRC check failed.
Definition sht3x.h:35
@ SHT3X_OK
no error
Definition sht3x.h:33
sht3x_repeat_t
SHT3x repeatability levels.
Definition sht3x.h:70
@ SHT3X_LOW
low repeatability
Definition sht3x.h:73
@ SHT3X_HIGH
high repeatability
Definition sht3x.h:71
@ SHT3X_MEDIUM
medium repeatability
Definition sht3x.h:72
int sht3x_init(sht3x_dev_t *dev, const sht3x_params_t *params)
Initialize the SHT3x sensor device.
SHT3x sensor device data structure.
Definition sht3x.h:89
uint8_t i2c_addr
I2C address.
Definition sht3x.h:92
i2c_t i2c_dev
I2C device.
Definition sht3x.h:91
uint32_t meas_duration
time in us until the results of the current measurement become available
Definition sht3x.h:99
sht3x_repeat_t repeat
repeatability level used
Definition sht3x.h:95
bool meas_started
indicates whether measurement is started
Definition sht3x.h:97
uint32_t meas_start_time
start time of current measurement in us
Definition sht3x.h:98
sht3x_mode_t mode
measurement mode used
Definition sht3x.h:94
SHT3x device initialization parameters.
Definition sht3x.h:79
i2c_t i2c_dev
I2C device.
Definition sht3x.h:80
uint8_t i2c_addr
I2C address.
Definition sht3x.h:81
sht3x_repeat_t repeat
repeatability level used
Definition sht3x.h:83
sht3x_mode_t mode
measurement mode used
Definition sht3x.h:82