ChibiOS/EX
1.2.0
|
LPS25H MEMS interface module header. More...
Go to the source code of this file.
Data Structures | |
struct | LPS25HConfig |
LPS25H configuration structure. More... | |
struct | LPS25HVMT |
LPS25H virtual methods table. More... | |
struct | LPS25HDriver |
LPS25H 2-axis barometer/thermometer class. More... | |
Macros | |
#define | lps25hBarometerGetAxesNumber(devp) barometerGetAxesNumber(&((devp)->baro_if)) |
Return the number of axes of the BaseBarometer. More... | |
#define | lps25hBarometerReadRaw(devp, axes) barometerReadRaw(&((devp)->baro_if), axes) |
Retrieves raw data from the BaseBarometer. More... | |
#define | lps25hBarometerReadCooked(devp, axes) barometerReadCooked(&((devp)->baro_if), axes) |
Retrieves cooked data from the BaseBarometer. More... | |
#define | lps25hBarometerSetBias(devp, bp) barometerSetBias(&((devp)->baro_if), bp) |
Set bias values for the BaseBarometer. More... | |
#define | lps25hBarometerResetBias(devp) barometerResetBias(&((devp)->baro_if)) |
Reset bias values for the BaseBarometer. More... | |
#define | lps25hBarometerSetSensitivity(devp, sp) barometerSetSensitivity(&((devp)->baro_if), sp) |
Set sensitivity values for the BaseBarometer. More... | |
#define | lps25hBarometerResetSensitivity(devp) barometerResetSensitivity(&((devp)->baro_if)) |
Reset sensitivity values for the BaseBarometer. More... | |
#define | lps25hThermometerGetAxesNumber(devp) thermometerGetAxesNumber(&((devp)->thermo_if)) |
Return the number of axes of the BaseThermometer. More... | |
#define | lps25hThermometerReadRaw(devp, axes) thermometerReadRaw(&((devp)->thermo_if), axes) |
Retrieves raw data from the BaseThermometer. More... | |
#define | lps25hThermometerReadCooked(devp, axes) thermometerReadCooked(&((devp)->thermo_if), axes) |
Retrieves cooked data from the BaseThermometer. More... | |
#define | lps25hThermometerSetBias(devp, bp) thermometerSetBias(&((devp)->thermo_if), bp) |
Set bias values for the BaseThermometer. More... | |
#define | lps25hThermometerResetBias(devp) thermometerResetBias(&((devp)->thermo_if)) |
Reset bias values for the BaseThermometer. More... | |
#define | lps25hThermometerSetSensitivity(devp, sp) thermometerSetSensitivity(&((devp)->thermo_if), sp) |
Set sensitivity values for the BaseThermometer. More... | |
#define | lps25hThermometerResetSensitivity(devp) thermometerResetSensitivity(&((devp)->thermo_if)) |
Reset sensitivity values for the BaseThermometer. More... | |
Version identification | |
#define | EX_LPS25H_VERSION "1.1.2" |
LPS25H driver version string. More... | |
#define | EX_LPS25H_MAJOR 1 |
LPS25H driver version major number. More... | |
#define | EX_LPS25H_MINOR 1 |
LPS25H driver version minor number. More... | |
#define | EX_LPS25H_PATCH 2 |
LPS25H driver version patch number. More... | |
#define | LPS25H_BARO_NUMBER_OF_AXES 1U |
LPS25H barometer subsystem characteristics. More... | |
#define | LPS25H_THERMO_NUMBER_OF_AXES 1U |
LPS25H thermometer subsystem characteristics. More... | |
LPS25H communication interfaces related bit masks | |
#define | LPS25H_DI_MASK 0xFF |
#define | LPS25H_DI(n) (1 << n) |
#define | LPS25H_AD_MASK 0x3F |
#define | LPS25H_AD(n) (1 << n) |
#define | LPS25H_MS (1 << 6) |
#define | LPS25H_RW (1 << 7) |
#define | LPS25H_SUB_MS (1 << 7) |
LPS25H register addresses | |
#define | LPS25H_AD_REF_P_XL 0x08 |
#define | LPS25H_AD_REF_P_L 0x09 |
#define | LPS25H_AD_REF_P_H 0x0A |
#define | LPS25H_AD_WHO_AM_I 0x0F |
#define | LPS25H_AD_RES_CONF 0x10 |
#define | LPS25H_AD_CTRL_REG1 0x20 |
#define | LPS25H_AD_CTRL_REG2 0x21 |
#define | LPS25H_AD_CTRL_REG3 0x22 |
#define | LPS25H_AD_CTRL_REG4 0x23 |
#define | LPS25H_AD_INT_CFG 0x24 |
#define | LPS25H_AD_INT_SRC 0x25 |
#define | LPS25H_AD_STATUS_REG 0x27 |
#define | LPS25H_AD_PRESS_OUT_XL 0x28 |
#define | LPS25H_AD_PRESS_OUT_L 0x29 |
#define | LPS25H_AD_PRESS_OUT_H 0x2A |
#define | LPS25H_AD_TEMP_OUT_L 0x2B |
#define | LPS25H_AD_TEMP_OUT_H 0x2C |
#define | LPS25H_AD_FIFO_CTRL 0x2E |
#define | LPS25H_AD_FIFO_SRC 0x2F |
#define | LPS25H_AD_THS_P_L 0x30 |
#define | LPS25H_AD_THS_P_H 0x31 |
#define | LPS25H_AD_RPDS_L 0x39 |
#define | LPS25H_AD_RPDS_H 0x3A |
LPS25H_CTRL_REG1 register bits definitions | |
#define | LPS25H_CTRL_REG1_MASK 0xFF |
#define | LPS25H_CTRL_REG1_SIM (1 << 0) |
#define | LPS25H_CTRL_REG1_RESET_AZ (1 << 1) |
#define | LPS25H_CTRL_REG1_BDU (1 << 2) |
#define | LPS25H_CTRL_REG1_DIFF_EN (1 << 3) |
#define | LPS25H_CTRL_REG1_ODR0 (1 << 4) |
#define | LPS25H_CTRL_REG1_ODR1 (1 << 5) |
#define | LPS25H_CTRL_REG1_ODR2 (1 << 6) |
#define | LPS25H_CTRL_REG1_PD (1 << 7) |
LPS25H_CTRL_REG2 register bits definitions | |
#define | LPS25H_CTRL_REG2_MASK 0xF3 |
#define | LPS25H_CTRL_REG2_ONE_SHOT (1 << 0) |
#define | LPS25H_CTRL_REG2_AUTO_ZERO (1 << 1) |
#define | LPS25H_CTRL_REG2_SWRESET (1 << 2) |
#define | LPS25H_CTRL_REG2_FIFO_MEAN_DEC (1 << 4) |
#define | LPS25H_CTRL_REG2_WTM_EN (1 << 5) |
#define | LPS25H_CTRL_REG2_FIFO_EN (1 << 6) |
#define | LPS25H_CTRL_REG2_BOOT (1 << 7) |
LPS25H_CTRL_REG3 register bits definitions | |
#define | LPS25H_CTRL_REG3_MASK 0xC3 |
#define | LPS25H_CTRL_REG3_INT_S1 (1 << 0) |
#define | LPS25H_CTRL_REG3_INT_S2 (1 << 1) |
#define | LPS25H_CTRL_REG3_PP_OD (1 << 6) |
#define | LPS25H_CTRL_REG3_INT_H_L (1 << 7) |
LPS25H_CTRL_REG4 register bits definitions | |
#define | LPS25H_CTRL_REG4_MASK 0x0F |
#define | LPS25H_CTRL_REG4_P1_DRDY (1 << 0) |
#define | LPS25H_CTRL_REG4_P1_OVERRUN (1 << 1) |
#define | LPS25H_CTRL_REG4_P1_WTM (1 << 2) |
#define | LPS25H_CTRL_REG4_P1_EMPTY (1 << 3) |
LPS25H_INT1_CFG register bits definitions | |
#define | LPS25H_INT1_CFG_MASK 0x07 |
#define | LPS25H_INT1_CFG_PH_E (1 << 0) |
#define | LPS25H_INT1_CFG_PL_E (1 << 1) |
#define | LPS25H_INT1_CFG_LIR (1 << 2) |
LPS25H_INT1_SRC register bits definitions | |
#define | LPS25H_INT1_SRC_MASK 0x07 |
#define | LPS25H_INT1_SRC_PH (1 << 0) |
#define | LPS25H_INT1_SRC_PL (1 << 1) |
#define | LPS25H_INT1_SRC_IA (1 << 2) |
Configuration options | |
#define | LPS25H_USE_SPI FALSE |
LPS25H SPI interface switch. More... | |
#define | LPS25H_SHARED_SPI FALSE |
LPS25H shared SPI switch. More... | |
#define | LPS25H_USE_I2C TRUE |
LPS25H I2C interface switch. More... | |
#define | LPS25H_SHARED_I2C FALSE |
LPS25H shared I2C switch. More... | |
#define | LPS25H_USE_ADVANCED FALSE |
LPS25H advanced configurations switch. More... | |
Functions | |
void | lps25hObjectInit (LPS25HDriver *devp) |
Initializes an instance. More... | |
void | lps25hStart (LPS25HDriver *devp, const LPS25HConfig *config) |
Configures and activates LPS25H Complex Driver peripheral. More... | |
void | lps25hStop (LPS25HDriver *devp) |
Deactivates the LPS25H Complex Driver peripheral. More... | |
LPS25H data structures and types. | |
#define | _lps25h_methods_alone |
LPS25H specific methods. More... | |
#define | _lps25h_methods |
LPS25H specific methods with inherited ones. More... | |
#define | _lps25h_data |
LPS25HDriver specific data. More... | |
enum | lps25h_sad_t { LPS25H_SAD_GND = 0x5C, LPS25H_SAD_VCC = 0x5D } |
LPS25H slave address. More... | |
enum | lps25h_odr_t { LPS25H_ODR_ONE_SHOT = 0x00, LPS25H_ODR_1HZ = 0x10, LPS25H_ODR_7HZ = 0x20, LPS25H_ODR_12P5HZ = 0x30, LPS25H_ODR_25HZ = 0x40 } |
LPS25H output data rate and bandwidth. More... | |
enum | lps25h_avgp_t { LPS25H_AVGP_8 = 0x00, LPS25H_AVGP_32 = 0x01, LPS25H_AVGP_128 = 0x02, LPS25H_AVGP_512 = 0x03 } |
LPS25H pressure resolution. More... | |
enum | lps25h_avgt_t { LPS25H_AVGT_8 = 0x00, LPS25H_AVGT_32 = 0x04, LPS25H_AVGT_128 = 0x08, LPS25H_AVGT_512 = 0x0C } |
LPS25H temperature resolution. More... | |
enum | lps25h_bdu_t { LPS25H_BDU_CONTINUOUS = 0x00, LPS25H_BDU_BLOCKED = 0x40 } |
LPS25H block data update. More... | |
enum | lps25h_state_t { LPS25H_UNINIT = 0, LPS25H_STOP = 1, LPS25H_READY = 2 } |
Driver state machine possible states. More... | |
typedef struct LPS25HDriver | LPS25HDriver |
Structure representing a LPS25H driver. More... | |
LPS25H MEMS interface module header.
Definition in file lps25h.h.