ChibiOS/EX
1.2.0
|
HTS221 MEMS interface module header. More...
Go to the source code of this file.
Data Structures | |
struct | HTS221Config |
HTS221 configuration structure. More... | |
struct | HTS221VMT |
HTS221 virtual methods table. More... | |
struct | HTS221Driver |
HTS221 2-axis hygrometer/thermometer class. More... | |
Macros | |
#define | hts221HygrometerGetAxesNumber(devp) hygrometerGetAxesNumber(&((devp)->hygro_if)) |
Return the number of axes of the BaseHygrometer. More... | |
#define | hts221HygrometerReadRaw(devp, axes) hygrometerReadRaw(&((devp)->hygro_if), axes) |
Retrieves raw data from the BaseHygrometer. More... | |
#define | hts221HygrometerReadCooked(devp, axes) hygrometerReadCooked(&((devp)->hygro_if), axes) |
Retrieves cooked data from the BaseHygrometer. More... | |
#define | hts221HygrometerSetBias(devp, bp) hygrometerSetBias(&((devp)->hygro_if), bp) |
Set bias values for the BaseHygrometer. More... | |
#define | hts221HygrometerResetBias(devp) hygrometerResetBias(&((devp)->hygro_if)) |
Reset bias values for the BaseHygrometer. More... | |
#define | hts221HygrometerSetSensitivity(devp, sp) hygrometerSetSensitivity(&((devp)->hygro_if), sp) |
Set sensitivity values for the BaseHygrometer. More... | |
#define | hts221HygrometerResetSensitivity(devp) hygrometerResetSensitivity(&((devp)->hygro_if)) |
Reset sensitivity values for the BaseHygrometer. More... | |
#define | hts221ThermometerGetAxesNumber(devp) thermometerGetAxesNumber(&((devp)->thermo_if)) |
Return the number of axes of the BaseThermometer. More... | |
#define | hts221ThermometerReadRaw(devp, axes) thermometerReadRaw(&((devp)->thermo_if), axes) |
Retrieves raw data from the BaseThermometer. More... | |
#define | hts221ThermometerReadCooked(devp, axes) thermometerReadCooked(&((devp)->thermo_if), axes) |
Retrieves cooked data from the BaseThermometer. More... | |
#define | hts221ThermometerSetBias(devp, bp) thermometerSetBias(&((devp)->thermo_if), bp) |
Set bias values for the BaseThermometer. More... | |
#define | hts221ThermometerResetBias(devp) thermometerResetBias(&((devp)->thermo_if)) |
Reset bias values for the BaseThermometer. More... | |
#define | hts221ThermometerSetSensitivity(devp, sp) thermometerSetSensitivity(&((devp)->thermo_if), sp) |
Set sensitivity values for the BaseThermometer. More... | |
#define | hts221ThermometerResetSensitivity(devp) thermometerResetSensitivity(&((devp)->thermo_if)) |
Reset sensitivity values for the BaseThermometer. More... | |
Version identification | |
#define | EX_HTS221_VERSION "1.1.2" |
HTS221 driver version string. More... | |
#define | EX_HTS221_MAJOR 1 |
HTS221 driver version major number. More... | |
#define | EX_HTS221_MINOR 1 |
HTS221 driver version minor number. More... | |
#define | EX_HTS221_PATCH 2 |
HTS221 driver version patch number. More... | |
#define | HTS221_HYGRO_NUMBER_OF_AXES 1U |
HTS221 hygrometer subsystem characteristics. More... | |
#define | HTS221_THERMO_NUMBER_OF_AXES 1U |
HTS221 thermometer subsystem characteristics. More... | |
HTS221 communication interfaces related bit masks | |
#define | HTS221_DI_MASK 0xFF |
#define | HTS221_DI(n) (1 << n) |
#define | HTS221_AD_MASK 0x3F |
#define | HTS221_AD(n) (1 << n) |
#define | HTS221_MS (1 << 6) |
#define | HTS221_RW (1 << 7) |
#define | HTS221_SUB_MS (1 << 7) |
#define | HTS221_SAD 0x5F |
HTS221 register addresses | |
#define | HTS221_AD_WHO_AM_I 0x0F |
#define | HTS221_AD_AV_CONF 0x10 |
#define | HTS221_AD_CTRL_REG1 0x20 |
#define | HTS221_AD_CTRL_REG2 0x21 |
#define | HTS221_AD_CTRL_REG3 0x22 |
#define | HTS221_AD_STATUS_REG 0x27 |
#define | HTS221_AD_HUMIDITY_OUT_L 0x28 |
#define | HTS221_AD_HUMIDITY_OUT_H 0x29 |
#define | HTS221_AD_TEMP_OUT_L 0x2A |
#define | HTS221_AD_TEMP_OUT_H 0x2B |
#define | HTS221_AD_CALIB_0 0x30 |
#define | HTS221_AD_CALIB_1 0x31 |
#define | HTS221_AD_CALIB_2 0x32 |
#define | HTS221_AD_CALIB_3 0x33 |
#define | HTS221_AD_CALIB_4 0x34 |
#define | HTS221_AD_CALIB_5 0x35 |
#define | HTS221_AD_CALIB_6 0x36 |
#define | HTS221_AD_CALIB_7 0x37 |
#define | HTS221_AD_CALIB_8 0x38 |
#define | HTS221_AD_CALIB_9 0x39 |
#define | HTS221_AD_CALIB_A 0x3A |
#define | HTS221_AD_CALIB_B 0x3B |
#define | HTS221_AD_CALIB_C 0x3C |
#define | HTS221_AD_CALIB_D 0x3D |
#define | HTS221_AD_CALIB_E 0x3E |
#define | HTS221_AD_CALIB_F 0x3F |
HTS221_CTRL_REG1 register bits definitions | |
#define | HTS221_CTRL_REG1_MASK 0x87 |
#define | HTS221_CTRL_REG1_ODR0 (1 << 0) |
#define | HTS221_CTRL_REG1_ODR1 (1 << 1) |
#define | HTS221_CTRL_REG1_BDU (1 << 2) |
#define | HTS221_CTRL_REG1_PD (1 << 7) |
HTS221_CTRL_REG2 register bits definitions | |
#define | HTS221_CTRL_REG2_MASK 0x83 |
#define | HTS221_CTRL_REG2_ONE_SHOT (1 << 0) |
#define | HTS221_CTRL_REG2_HEATER (1 << 1) |
#define | HTS221_CTRL_REG2_BOOT (1 << 7) |
HTS221_CTRL_REG3 register bits definitions | |
#define | HTS221_CTRL_REG3_MASK 0xC4 |
#define | HTS221_CTRL_REG3_DRDY (1 << 2) |
#define | HTS221_CTRL_REG3_PP_OD (1 << 6) |
#define | HTS221_CTRL_REG3_INT_H_L (1 << 7) |
Configuration options | |
#define | HTS221_USE_SPI FALSE |
HTS221 SPI interface switch. More... | |
#define | HTS221_SHARED_SPI FALSE |
HTS221 shared SPI switch. More... | |
#define | HTS221_USE_I2C TRUE |
HTS221 I2C interface switch. More... | |
#define | HTS221_SHARED_I2C FALSE |
HTS221 shared I2C switch. More... | |
#define | HTS221_USE_ADVANCED FALSE |
HTS221 advanced configurations switch. More... | |
Functions | |
void | hts221ObjectInit (HTS221Driver *devp) |
Initializes an instance. More... | |
void | hts221Start (HTS221Driver *devp, const HTS221Config *config) |
Configures and activates HTS221 Complex Driver peripheral. More... | |
void | hts221Stop (HTS221Driver *devp) |
Deactivates the HTS221 Complex Driver peripheral. More... | |
HTS221 data structures and types. | |
#define | _hts221_methods_alone |
HTS221 specific methods. More... | |
#define | _hts221_methods |
HTS221 specific methods with inherited ones. More... | |
#define | _hts221_data |
HTS221Driver specific data. More... | |
enum | hts221_odr_t { HTS221_ODR_ONE_SHOT = 0x00, HTS221_ODR_1HZ = 0x01, HTS221_ODR_7HZ = 0x02, HTS221_ODR_12P5HZ = 0x03 } |
HTS221 output data rate and bandwidth. More... | |
enum | hts221_avgh_t { HTS221_AVGH_4 = 0x00, HTS221_AVGH_8 = 0x01, HTS221_AVGH_16 = 0x02, HTS221_AVGH_32 = 0x03, HTS221_AVGH_64 = 0x04, HTS221_AVGH_128 = 0x05, HTS221_AVGH_256 = 0x06, HTS221_AVGH_512 = 0x07 } |
HTS221 humidity resolution. More... | |
enum | hts221_avgt_t { HTS221_AVGT_2 = 0x00, HTS221_AVGT_4 = 0x08, HTS221_AVGT_8 = 0x10, HTS221_AVGT_16 = 0x18, HTS221_AVGT_32 = 0x20, HTS221_AVGT_64 = 0x28, HTS221_AVGT_128 = 0x30, HTS221_AVGT_256 = 0x38 } |
HTS221 temperature resolution. More... | |
enum | hts221_bdu_t { HTS221_BDU_CONTINUOUS = 0x00, HTS221_BDU_BLOCKED = 0x40 } |
HTS221 block data update. More... | |
enum | hts221_state_t { HTS221_UNINIT = 0, HTS221_STOP = 1, HTS221_READY = 2 } |
Driver state machine possible states. More... | |
typedef struct HTS221Driver | HTS221Driver |
Structure representing a HTS221 driver. More... | |
HTS221 MEMS interface module header.
Definition in file hts221.h.