NinjaFlight
|
Go to the source code of this file.
Data Structures | |
struct | LSM303DLHCAcc_InitTypeDef |
LSM303DLHC Status. More... | |
struct | LSM303DLHCAcc_FilterConfigTypeDef |
struct | LSM303DLHCMag_InitTypeDef |
Macros | |
#define | LSM303DLHC_OK ((uint32_t) 0) |
#define | LSM303DLHC_FAIL ((uint32_t) 0) |
#define | LSM303DLHC_FLAG_TIMEOUT ((uint32_t)0x1000) |
#define | LSM303DLHC_LONG_TIMEOUT ((uint32_t)(10 * LSM303DLHC_FLAG_TIMEOUT)) |
#define | LSM303DLHC_I2C I2C1 |
LSM303DLHC I2C Interface pins. More... | |
#define | LSM303DLHC_I2C_CLK RCC_APB1Periph_I2C1 |
#define | LSM303DLHC_I2C_SCK_PIN GPIO_Pin_6 /* PB.06 */ |
#define | LSM303DLHC_I2C_SCK_GPIO_PORT GPIOB /* GPIOB */ |
#define | LSM303DLHC_I2C_SCK_GPIO_CLK RCC_AHBPeriph_GPIOB |
#define | LSM303DLHC_I2C_SCK_SOURCE GPIO_PinSource6 |
#define | LSM303DLHC_I2C_SCK_AF GPIO_AF_4 |
#define | LSM303DLHC_I2C_SDA_PIN GPIO_Pin_7 /* PB.7 */ |
#define | LSM303DLHC_I2C_SDA_GPIO_PORT GPIOB /* GPIOB */ |
#define | LSM303DLHC_I2C_SDA_GPIO_CLK RCC_AHBPeriph_GPIOB |
#define | LSM303DLHC_I2C_SDA_SOURCE GPIO_PinSource7 |
#define | LSM303DLHC_I2C_SDA_AF GPIO_AF_4 |
#define | LSM303DLHC_DRDY_PIN GPIO_Pin_2 /* PE.02 */ |
#define | LSM303DLHC_DRDY_GPIO_PORT GPIOE /* GPIOE */ |
#define | LSM303DLHC_DRDY_GPIO_CLK RCC_AHBPeriph_GPIOE |
#define | LSM303DLHC_DRDY_EXTI_LINE EXTI_Line2 |
#define | LSM303DLHC_DRDY_EXTI_PORT_SOURCE EXTI_PortSourceGPIOE |
#define | LSM303DLHC_DRDY_EXTI_PIN_SOURCE EXTI_PinSource2 |
#define | LSM303DLHC_DRDY_EXTI_IRQn EXTI2_TS_IRQn |
#define | LSM303DLHC_I2C_INT1_PIN GPIO_Pin_4 /* PE.04 */ |
#define | LSM303DLHC_I2C_INT1_GPIO_PORT GPIOE /* GPIOE */ |
#define | LSM303DLHC_I2C_INT1_GPIO_CLK RCC_AHBPeriph_GPIOE |
#define | LSM303DLHC_I2C_INT1_EXTI_LINE EXTI_Line4 |
#define | LSM303DLHC_I2C_INT1_EXTI_PORT_SOURCE EXTI_PortSourceGPIOE |
#define | LSM303DLHC_I2C_INT1_EXTI_PIN_SOURCE EXTI_PinSource4 |
#define | LSM303DLHC_I2C_INT1_EXTI_IRQn EXTI4_IRQn |
#define | LSM303DLHC_I2C_INT2_PIN GPIO_Pin_5 /* PE.05 */ |
#define | LSM303DLHC_I2C_INT2_GPIO_PORT GPIOE /* GPIOE */ |
#define | LSM303DLHC_I2C_INT2_GPIO_CLK RCC_AHBPeriph_GPIOE |
#define | LSM303DLHC_I2C_INT2_EXTI_LINE EXTI_Line5 |
#define | LSM303DLHC_I2C_INT2_EXTI_PORT_SOURCE EXTI_PortSourceGPIOE |
#define | LSM303DLHC_I2C_INT2_EXTI_PIN_SOURCE EXTI_PinSource5ss |
#define | LSM303DLHC_I2C_INT2_EXTI_IRQn EXTI9_5_IRQn |
#define | LSM303DLHC_CTRL_REG1_A 0x20 /* Control register 1 acceleration */ |
#define | LSM303DLHC_CTRL_REG2_A 0x21 /* Control register 2 acceleration */ |
#define | LSM303DLHC_CTRL_REG3_A 0x22 /* Control register 3 acceleration */ |
#define | LSM303DLHC_CTRL_REG4_A 0x23 /* Control register 4 acceleration */ |
#define | LSM303DLHC_CTRL_REG5_A 0x24 /* Control register 5 acceleration */ |
#define | LSM303DLHC_CTRL_REG6_A 0x25 /* Control register 6 acceleration */ |
#define | LSM303DLHC_REFERENCE_A 0x26 /* Reference register acceleration */ |
#define | LSM303DLHC_STATUS_REG_A 0x27 /* Status register acceleration */ |
#define | LSM303DLHC_OUT_X_L_A 0x28 /* Output Register X acceleration */ |
#define | LSM303DLHC_OUT_X_H_A 0x29 /* Output Register X acceleration */ |
#define | LSM303DLHC_OUT_Y_L_A 0x2A /* Output Register Y acceleration */ |
#define | LSM303DLHC_OUT_Y_H_A 0x2B /* Output Register Y acceleration */ |
#define | LSM303DLHC_OUT_Z_L_A 0x2C /* Output Register Z acceleration */ |
#define | LSM303DLHC_OUT_Z_H_A 0x2D /* Output Register Z acceleration */ |
#define | LSM303DLHC_FIFO_CTRL_REG_A 0x2E /* Fifo control Register acceleration */ |
#define | LSM303DLHC_FIFO_SRC_REG_A 0x2F /* Fifo src Register acceleration */ |
#define | LSM303DLHC_INT1_CFG_A 0x30 /* Interrupt 1 configuration Register acceleration */ |
#define | LSM303DLHC_INT1_SOURCE_A 0x31 /* Interrupt 1 source Register acceleration */ |
#define | LSM303DLHC_INT1_THS_A 0x32 /* Interrupt 1 Threshold register acceleration */ |
#define | LSM303DLHC_INT1_DURATION_A 0x33 /* Interrupt 1 DURATION register acceleration */ |
#define | LSM303DLHC_INT2_CFG_A 0x34 /* Interrupt 2 configuration Register acceleration */ |
#define | LSM303DLHC_INT2_SOURCE_A 0x35 /* Interrupt 2 source Register acceleration */ |
#define | LSM303DLHC_INT2_THS_A 0x36 /* Interrupt 2 Threshold register acceleration */ |
#define | LSM303DLHC_INT2_DURATION_A 0x37 /* Interrupt 2 DURATION register acceleration */ |
#define | LSM303DLHC_CLICK_CFG_A 0x38 /* Click configuration Register acceleration */ |
#define | LSM303DLHC_CLICK_SOURCE_A 0x39 /* Click 2 source Register acceleration */ |
#define | LSM303DLHC_CLICK_THS_A 0x3A /* Click 2 Threshold register acceleration */ |
#define | LSM303DLHC_TIME_LIMIT_A 0x3B /* Time Limit Register acceleration */ |
#define | LSM303DLHC_TIME_LATENCY_A 0x3C /* Time Latency Register acceleration */ |
#define | LSM303DLHC_TIME_WINDOW_A 0x3D /* Time window register acceleration */ |
#define | LSM303DLHC_CRA_REG_M 0x00 /* Control register A magnetic field */ |
#define | LSM303DLHC_CRB_REG_M 0x01 /* Control register B magnetic field */ |
#define | LSM303DLHC_MR_REG_M 0x02 /* Control register MR magnetic field */ |
#define | LSM303DLHC_OUT_X_H_M 0x03 /* Output Register X magnetic field */ |
#define | LSM303DLHC_OUT_X_L_M 0x04 /* Output Register X magnetic field */ |
#define | LSM303DLHC_OUT_Z_H_M 0x05 /* Output Register Z magnetic field */ |
#define | LSM303DLHC_OUT_Z_L_M 0x06 /* Output Register Z magnetic field */ |
#define | LSM303DLHC_OUT_Y_H_M 0x07 /* Output Register Y magnetic field */ |
#define | LSM303DLHC_OUT_Y_L_M 0x08 /* Output Register Y magnetic field */ |
#define | LSM303DLHC_SR_REG_M 0x09 /* Status Register magnetic field */ |
#define | LSM303DLHC_IRA_REG_M 0x0A /* IRA Register magnetic field */ |
#define | LSM303DLHC_IRB_REG_M 0x0B /* IRB Register magnetic field */ |
#define | LSM303DLHC_IRC_REG_M 0x0C /* IRC Register magnetic field */ |
#define | LSM303DLHC_TEMP_OUT_H_M 0x31 /* Temperature Register magnetic field */ |
#define | LSM303DLHC_TEMP_OUT_L_M 0x32 /* Temperature Register magnetic field */ |
#define | ACC_I2C_ADDRESS 0x32 |
#define | MAG_I2C_ADDRESS 0x3C |
#define | LSM303DLHC_NORMAL_MODE ((uint8_t)0x00) |
#define | LSM303DLHC_LOWPOWER_MODE ((uint8_t)0x08) |
#define | LSM303DLHC_ODR_1_HZ ((uint8_t)0x10) |
#define | LSM303DLHC_ODR_10_HZ ((uint8_t)0x20) |
#define | LSM303DLHC_ODR_25_HZ ((uint8_t)0x30) |
#define | LSM303DLHC_ODR_50_HZ ((uint8_t)0x40) |
#define | LSM303DLHC_ODR_100_HZ ((uint8_t)0x50) |
#define | LSM303DLHC_ODR_200_HZ ((uint8_t)0x60) |
#define | LSM303DLHC_ODR_400_HZ ((uint8_t)0x70) |
#define | LSM303DLHC_ODR_1620_HZ_LP ((uint8_t)0x80) |
#define | LSM303DLHC_ODR_1344_HZ ((uint8_t)0x90) |
#define | LSM303DLHC_X_ENABLE ((uint8_t)0x01) |
#define | LSM303DLHC_Y_ENABLE ((uint8_t)0x02) |
#define | LSM303DLHC_Z_ENABLE ((uint8_t)0x04) |
#define | LSM303DLHC_AXES_ENABLE ((uint8_t)0x07) |
#define | LSM303DLHC_AXES_DISABLE ((uint8_t)0x00) |
#define | LSM303DLHC_HR_ENABLE ((uint8_t)0x08) |
#define | LSM303DLHC_HR_DISABLE ((uint8_t)0x00) |
#define | LSM303DLHC_FULLSCALE_2G ((uint8_t)0x00) |
#define | LSM303DLHC_FULLSCALE_4G ((uint8_t)0x10) |
#define | LSM303DLHC_FULLSCALE_8G ((uint8_t)0x20) |
#define | LSM303DLHC_FULLSCALE_16G ((uint8_t)0x30) |
#define | LSM303DLHC_BlockUpdate_Continous ((uint8_t)0x00) |
#define | LSM303DLHC_BlockUpdate_Single ((uint8_t)0x80) |
#define | LSM303DLHC_BLE_LSB ((uint8_t)0x00) |
#define | LSM303DLHC_BLE_MSB ((uint8_t)0x40) |
#define | LSM303DLHC_BOOT_NORMALMODE ((uint8_t)0x00) |
#define | LSM303DLHC_BOOT_REBOOTMEMORY ((uint8_t)0x80) |
#define | LSM303DLHC_HPM_NORMAL_MODE_RES ((uint8_t)0x00) |
#define | LSM303DLHC_HPM_REF_SIGNAL ((uint8_t)0x40) |
#define | LSM303DLHC_HPM_NORMAL_MODE ((uint8_t)0x80) |
#define | LSM303DLHC_HPM_AUTORESET_INT ((uint8_t)0xC0) |
#define | LSM303DLHC_HPFCF_8 ((uint8_t)0x00) |
#define | LSM303DLHC_HPFCF_16 ((uint8_t)0x10) |
#define | LSM303DLHC_HPFCF_32 ((uint8_t)0x20) |
#define | LSM303DLHC_HPFCF_64 ((uint8_t)0x30) |
#define | LSM303DLHC_HIGHPASSFILTER_DISABLE ((uint8_t)0x00) |
#define | LSM303DLHC_HIGHPASSFILTER_ENABLE ((uint8_t)0x08) |
#define | LSM303DLHC_HPF_CLICK_DISABLE ((uint8_t)0x00) |
#define | LSM303DLHC_HPF_CLICK_ENABLE ((uint8_t)0x04) |
#define | LSM303DLHC_HPF_AOI1_DISABLE ((uint8_t)0x00) |
#define | LSM303DLHC_HPF_AOI1_ENABLE ((uint8_t)0x01) |
#define | LSM303DLHC_HPF_AOI2_DISABLE ((uint8_t)0x00) |
#define | LSM303DLHC_HPF_AOI2_ENABLE ((uint8_t)0x02) |
#define | LSM303DLHC_IT1_CLICK ((uint8_t)0x80) |
#define | LSM303DLHC_IT1_AOI1 ((uint8_t)0x40) |
#define | LSM303DLHC_IT1_AOI2 ((uint8_t)0x20) |
#define | LSM303DLHC_IT1_DRY1 ((uint8_t)0x10) |
#define | LSM303DLHC_IT1_DRY2 ((uint8_t)0x08) |
#define | LSM303DLHC_IT1_WTM ((uint8_t)0x04) |
#define | LSM303DLHC_IT1_OVERRUN ((uint8_t)0x02) |
#define | LSM303DLHC_IT2_CLICK ((uint8_t)0x80) |
#define | LSM303DLHC_IT2_INT1 ((uint8_t)0x40) |
#define | LSM303DLHC_IT2_INT2 ((uint8_t)0x20) |
#define | LSM303DLHC_IT2_BOOT ((uint8_t)0x10) |
#define | LSM303DLHC_IT2_ACT ((uint8_t)0x08) |
#define | LSM303DLHC_IT2_HLACTIVE ((uint8_t)0x02) |
#define | LSM303DLHC_OR_COMBINATION ((uint8_t)0x00) |
#define | LSM303DLHC_AND_COMBINATION ((uint8_t)0x80) |
#define | LSM303DLHC_MOV_RECOGNITION ((uint8_t)0x40) |
#define | LSM303DLHC_POS_RECOGNITION ((uint8_t)0xC0) |
#define | LSM303DLHC_Z_HIGH ((uint8_t)0x20) |
#define | LSM303DLHC_Z_LOW ((uint8_t)0x10) |
#define | LSM303DLHC_Y_HIGH ((uint8_t)0x08) |
#define | LSM303DLHC_Y_LOW ((uint8_t)0x04) |
#define | LSM303DLHC_X_HIGH ((uint8_t)0x02) |
#define | LSM303DLHC_X_LOW ((uint8_t)0x01) |
#define | LSM303DLHC_Z_DOUBLE_CLICK ((uint8_t)0x20) |
#define | LSM303DLHC_Z_SINGLE_CLICK ((uint8_t)0x10) |
#define | LSM303DLHC_Y_DOUBLE_CLICK ((uint8_t)0x08) |
#define | LSM303DLHC_Y_SINGLE_CLICK ((uint8_t)0x04) |
#define | LSM303DLHC_X_DOUBLE_CLICK ((uint8_t)0x02) |
#define | LSM303DLHC_X_SINGLE_CLICK ((uint8_t)0x01) |
#define | LSM303DLHC_INT1INTERRUPT_DISABLE ((uint8_t)0x00) |
#define | LSM303DLHC_INT1INTERRUPT_ENABLE ((uint8_t)0x80) |
#define | LSM303DLHC_INT1INTERRUPT_LOW_EDGE ((uint8_t)0x20) |
#define | LSM303DLHC_INT1INTERRUPT_HIGH_EDGE ((uint8_t)0x00) |
#define | LSM303DLHC_ODR_0_75_HZ ((uint8_t) 0x00) |
#define | LSM303DLHC_ODR_1_5_HZ ((uint8_t) 0x04) |
#define | LSM303DLHC_ODR_3_0_HZ ((uint8_t) 0x08) |
#define | LSM303DLHC_ODR_7_5_HZ ((uint8_t) 0x0C) |
#define | LSM303DLHC_ODR_15_HZ ((uint8_t) 0x10) |
#define | LSM303DLHC_ODR_30_HZ ((uint8_t) 0x14) |
#define | LSM303DLHC_ODR_75_HZ ((uint8_t) 0x18) |
#define | LSM303DLHC_ODR_220_HZ ((uint8_t) 0x1C) |
#define | LSM303DLHC_FS_1_3_GA ((uint8_t) 0x20) |
#define | LSM303DLHC_FS_1_9_GA ((uint8_t) 0x40) |
#define | LSM303DLHC_FS_2_5_GA ((uint8_t) 0x60) |
#define | LSM303DLHC_FS_4_0_GA ((uint8_t) 0x80) |
#define | LSM303DLHC_FS_4_7_GA ((uint8_t) 0xA0) |
#define | LSM303DLHC_FS_5_6_GA ((uint8_t) 0xC0) |
#define | LSM303DLHC_FS_8_1_GA ((uint8_t) 0xE0) |
#define | LSM303DLHC_M_SENSITIVITY_XY_1_3Ga 1100 |
#define | LSM303DLHC_M_SENSITIVITY_XY_1_9Ga 855 |
#define | LSM303DLHC_M_SENSITIVITY_XY_2_5Ga 670 |
#define | LSM303DLHC_M_SENSITIVITY_XY_4Ga 450 |
#define | LSM303DLHC_M_SENSITIVITY_XY_4_7Ga 400 |
#define | LSM303DLHC_M_SENSITIVITY_XY_5_6Ga 330 |
#define | LSM303DLHC_M_SENSITIVITY_XY_8_1Ga 230 |
#define | LSM303DLHC_M_SENSITIVITY_Z_1_3Ga 980 |
#define | LSM303DLHC_M_SENSITIVITY_Z_1_9Ga 760 |
#define | LSM303DLHC_M_SENSITIVITY_Z_2_5Ga 600 |
#define | LSM303DLHC_M_SENSITIVITY_Z_4Ga 400 |
#define | LSM303DLHC_M_SENSITIVITY_Z_4_7Ga 355 |
#define | LSM303DLHC_M_SENSITIVITY_Z_5_6Ga 295 |
#define | LSM303DLHC_M_SENSITIVITY_Z_8_1Ga 205 |
#define | LSM303DLHC_CONTINUOS_CONVERSION ((uint8_t) 0x00) |
#define | LSM303DLHC_SINGLE_CONVERSION ((uint8_t) 0x01) |
#define | LSM303DLHC_SLEEP ((uint8_t) 0x02) |
#define | LSM303DLHC_TEMPSENSOR_ENABLE ((uint8_t) 0x80) |
#define | LSM303DLHC_TEMPSENSOR_DISABLE ((uint8_t) 0x00) |
bool | lsm303dlhcAccDetect (acc_t *acc) |
#define ACC_I2C_ADDRESS 0x32 |
#define LSM303DLHC_AND_COMBINATION ((uint8_t)0x80) |
AND combination of enabled IRQs
#define LSM303DLHC_AXES_DISABLE ((uint8_t)0x00) |
#define LSM303DLHC_AXES_ENABLE ((uint8_t)0x07) |
#define LSM303DLHC_BLE_LSB ((uint8_t)0x00) |
Acc_Endian_Data_selectionLittle Endian: data LSB @ lower address
#define LSM303DLHC_BLE_MSB ((uint8_t)0x40) |
Big Endian: data MSB @ lower address
#define LSM303DLHC_BlockUpdate_Continous ((uint8_t)0x00) |
Acc_Block_Data_UpdateContinuos Update
#define LSM303DLHC_BlockUpdate_Single ((uint8_t)0x80) |
Single Update: output registers not updated until MSB and LSB reading
#define LSM303DLHC_BOOT_NORMALMODE ((uint8_t)0x00) |
Acc_Boot_Mode_selection
#define LSM303DLHC_BOOT_REBOOTMEMORY ((uint8_t)0x80) |
#define LSM303DLHC_CLICK_CFG_A 0x38 /* Click configuration Register acceleration */ |
#define LSM303DLHC_CLICK_SOURCE_A 0x39 /* Click 2 source Register acceleration */ |
#define LSM303DLHC_CLICK_THS_A 0x3A /* Click 2 Threshold register acceleration */ |
#define LSM303DLHC_CONTINUOS_CONVERSION ((uint8_t) 0x00) |
Mag_Working_ModeContinuous-Conversion Mode
#define LSM303DLHC_CRA_REG_M 0x00 /* Control register A magnetic field */ |
#define LSM303DLHC_CRB_REG_M 0x01 /* Control register B magnetic field */ |
#define LSM303DLHC_CTRL_REG1_A 0x20 /* Control register 1 acceleration */ |
#define LSM303DLHC_CTRL_REG2_A 0x21 /* Control register 2 acceleration */ |
#define LSM303DLHC_CTRL_REG3_A 0x22 /* Control register 3 acceleration */ |
#define LSM303DLHC_CTRL_REG4_A 0x23 /* Control register 4 acceleration */ |
#define LSM303DLHC_CTRL_REG5_A 0x24 /* Control register 5 acceleration */ |
#define LSM303DLHC_CTRL_REG6_A 0x25 /* Control register 6 acceleration */ |
#define LSM303DLHC_DRDY_EXTI_IRQn EXTI2_TS_IRQn |
#define LSM303DLHC_DRDY_EXTI_LINE EXTI_Line2 |
#define LSM303DLHC_DRDY_EXTI_PIN_SOURCE EXTI_PinSource2 |
#define LSM303DLHC_DRDY_EXTI_PORT_SOURCE EXTI_PortSourceGPIOE |
#define LSM303DLHC_DRDY_GPIO_CLK RCC_AHBPeriph_GPIOE |
#define LSM303DLHC_DRDY_GPIO_PORT GPIOE /* GPIOE */ |
#define LSM303DLHC_DRDY_PIN GPIO_Pin_2 /* PE.02 */ |
#define LSM303DLHC_FAIL ((uint32_t) 0) |
#define LSM303DLHC_FIFO_CTRL_REG_A 0x2E /* Fifo control Register acceleration */ |
#define LSM303DLHC_FIFO_SRC_REG_A 0x2F /* Fifo src Register acceleration */ |
#define LSM303DLHC_FLAG_TIMEOUT ((uint32_t)0x1000) |
#define LSM303DLHC_FS_1_3_GA ((uint8_t) 0x20) |
Mag_Full_ScaleFull scale = ±1.3 Gauss
#define LSM303DLHC_FS_1_9_GA ((uint8_t) 0x40) |
Full scale = ±1.9 Gauss
#define LSM303DLHC_FS_2_5_GA ((uint8_t) 0x60) |
Full scale = ±2.5 Gauss
#define LSM303DLHC_FS_4_0_GA ((uint8_t) 0x80) |
Full scale = ±4.0 Gauss
#define LSM303DLHC_FS_4_7_GA ((uint8_t) 0xA0) |
Full scale = ±4.7 Gauss
#define LSM303DLHC_FS_5_6_GA ((uint8_t) 0xC0) |
Full scale = ±5.6 Gauss
#define LSM303DLHC_FS_8_1_GA ((uint8_t) 0xE0) |
Full scale = ±8.1 Gauss
#define LSM303DLHC_FULLSCALE_16G ((uint8_t)0x30) |
±16 g
#define LSM303DLHC_FULLSCALE_2G ((uint8_t)0x00) |
Acc_Full_Scale_Selection±2 g
#define LSM303DLHC_FULLSCALE_4G ((uint8_t)0x10) |
±4 g
#define LSM303DLHC_FULLSCALE_8G ((uint8_t)0x20) |
±8 g
#define LSM303DLHC_HIGHPASSFILTER_DISABLE ((uint8_t)0x00) |
Acc_High_Pass_Filter_status
#define LSM303DLHC_HIGHPASSFILTER_ENABLE ((uint8_t)0x08) |
#define LSM303DLHC_HPF_AOI1_DISABLE ((uint8_t)0x00) |
Acc_High_Pass_Filter_AOI1_status
#define LSM303DLHC_HPF_AOI1_ENABLE ((uint8_t)0x01) |
#define LSM303DLHC_HPF_AOI2_DISABLE ((uint8_t)0x00) |
Acc_High_Pass_Filter_AOI2_status
#define LSM303DLHC_HPF_AOI2_ENABLE ((uint8_t)0x02) |
#define LSM303DLHC_HPF_CLICK_DISABLE ((uint8_t)0x00) |
Acc_High_Pass_Filter_Click_status
#define LSM303DLHC_HPF_CLICK_ENABLE ((uint8_t)0x04) |
#define LSM303DLHC_HPFCF_16 ((uint8_t)0x10) |
#define LSM303DLHC_HPFCF_32 ((uint8_t)0x20) |
#define LSM303DLHC_HPFCF_64 ((uint8_t)0x30) |
#define LSM303DLHC_HPFCF_8 ((uint8_t)0x00) |
Acc_High_Pass_CUT OFF_Frequency
#define LSM303DLHC_HPM_AUTORESET_INT ((uint8_t)0xC0) |
#define LSM303DLHC_HPM_NORMAL_MODE ((uint8_t)0x80) |
#define LSM303DLHC_HPM_NORMAL_MODE_RES ((uint8_t)0x00) |
Acc_High_Pass_Filter_Mode
#define LSM303DLHC_HPM_REF_SIGNAL ((uint8_t)0x40) |
#define LSM303DLHC_HR_DISABLE ((uint8_t)0x00) |
#define LSM303DLHC_HR_ENABLE ((uint8_t)0x08) |
Acc_High_Resolution
#define LSM303DLHC_I2C I2C1 |
LSM303DLHC I2C Interface pins.
#define LSM303DLHC_I2C_CLK RCC_APB1Periph_I2C1 |
#define LSM303DLHC_I2C_INT1_EXTI_IRQn EXTI4_IRQn |
#define LSM303DLHC_I2C_INT1_EXTI_LINE EXTI_Line4 |
#define LSM303DLHC_I2C_INT1_EXTI_PIN_SOURCE EXTI_PinSource4 |
#define LSM303DLHC_I2C_INT1_EXTI_PORT_SOURCE EXTI_PortSourceGPIOE |
#define LSM303DLHC_I2C_INT1_GPIO_CLK RCC_AHBPeriph_GPIOE |
#define LSM303DLHC_I2C_INT1_GPIO_PORT GPIOE /* GPIOE */ |
#define LSM303DLHC_I2C_INT1_PIN GPIO_Pin_4 /* PE.04 */ |
#define LSM303DLHC_I2C_INT2_EXTI_IRQn EXTI9_5_IRQn |
#define LSM303DLHC_I2C_INT2_EXTI_LINE EXTI_Line5 |
#define LSM303DLHC_I2C_INT2_EXTI_PIN_SOURCE EXTI_PinSource5ss |
#define LSM303DLHC_I2C_INT2_EXTI_PORT_SOURCE EXTI_PortSourceGPIOE |
#define LSM303DLHC_I2C_INT2_GPIO_CLK RCC_AHBPeriph_GPIOE |
#define LSM303DLHC_I2C_INT2_GPIO_PORT GPIOE /* GPIOE */ |
#define LSM303DLHC_I2C_INT2_PIN GPIO_Pin_5 /* PE.05 */ |
#define LSM303DLHC_I2C_SCK_AF GPIO_AF_4 |
#define LSM303DLHC_I2C_SCK_GPIO_CLK RCC_AHBPeriph_GPIOB |
#define LSM303DLHC_I2C_SCK_GPIO_PORT GPIOB /* GPIOB */ |
#define LSM303DLHC_I2C_SCK_PIN GPIO_Pin_6 /* PB.06 */ |
#define LSM303DLHC_I2C_SCK_SOURCE GPIO_PinSource6 |
#define LSM303DLHC_I2C_SDA_AF GPIO_AF_4 |
#define LSM303DLHC_I2C_SDA_GPIO_CLK RCC_AHBPeriph_GPIOB |
#define LSM303DLHC_I2C_SDA_GPIO_PORT GPIOB /* GPIOB */ |
#define LSM303DLHC_I2C_SDA_PIN GPIO_Pin_7 /* PB.7 */ |
#define LSM303DLHC_I2C_SDA_SOURCE GPIO_PinSource7 |
#define LSM303DLHC_INT1_CFG_A 0x30 /* Interrupt 1 configuration Register acceleration */ |
#define LSM303DLHC_INT1_DURATION_A 0x33 /* Interrupt 1 DURATION register acceleration */ |
#define LSM303DLHC_INT1_SOURCE_A 0x31 /* Interrupt 1 source Register acceleration */ |
#define LSM303DLHC_INT1_THS_A 0x32 /* Interrupt 1 Threshold register acceleration */ |
#define LSM303DLHC_INT1INTERRUPT_DISABLE ((uint8_t)0x00) |
Acc_INT1_Interrupt_status
#define LSM303DLHC_INT1INTERRUPT_ENABLE ((uint8_t)0x80) |
#define LSM303DLHC_INT1INTERRUPT_HIGH_EDGE ((uint8_t)0x00) |
#define LSM303DLHC_INT1INTERRUPT_LOW_EDGE ((uint8_t)0x20) |
Acc_INT1_Interrupt_ActiveEdge
#define LSM303DLHC_INT2_CFG_A 0x34 /* Interrupt 2 configuration Register acceleration */ |
#define LSM303DLHC_INT2_DURATION_A 0x37 /* Interrupt 2 DURATION register acceleration */ |
#define LSM303DLHC_INT2_SOURCE_A 0x35 /* Interrupt 2 source Register acceleration */ |
#define LSM303DLHC_INT2_THS_A 0x36 /* Interrupt 2 Threshold register acceleration */ |
#define LSM303DLHC_IRA_REG_M 0x0A /* IRA Register magnetic field */ |
#define LSM303DLHC_IRB_REG_M 0x0B /* IRB Register magnetic field */ |
#define LSM303DLHC_IRC_REG_M 0x0C /* IRC Register magnetic field */ |
#define LSM303DLHC_IT1_AOI1 ((uint8_t)0x40) |
#define LSM303DLHC_IT1_AOI2 ((uint8_t)0x20) |
#define LSM303DLHC_IT1_CLICK ((uint8_t)0x80) |
Acc_LSM303DLHC_Interrupt1_Configuration_definition
#define LSM303DLHC_IT1_DRY1 ((uint8_t)0x10) |
#define LSM303DLHC_IT1_DRY2 ((uint8_t)0x08) |
#define LSM303DLHC_IT1_OVERRUN ((uint8_t)0x02) |
#define LSM303DLHC_IT1_WTM ((uint8_t)0x04) |
#define LSM303DLHC_IT2_ACT ((uint8_t)0x08) |
#define LSM303DLHC_IT2_BOOT ((uint8_t)0x10) |
#define LSM303DLHC_IT2_CLICK ((uint8_t)0x80) |
Acc_LSM303DLHC_Interrupt2_Configuration_definition
#define LSM303DLHC_IT2_HLACTIVE ((uint8_t)0x02) |
#define LSM303DLHC_IT2_INT1 ((uint8_t)0x40) |
#define LSM303DLHC_IT2_INT2 ((uint8_t)0x20) |
#define LSM303DLHC_LONG_TIMEOUT ((uint32_t)(10 * LSM303DLHC_FLAG_TIMEOUT)) |
#define LSM303DLHC_LOWPOWER_MODE ((uint8_t)0x08) |
#define LSM303DLHC_M_SENSITIVITY_XY_1_3Ga 1100 |
Magnetometer_Sensitivitymagnetometer X Y axes sensitivity for 1.3 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_XY_1_9Ga 855 |
magnetometer X Y axes sensitivity for 1.9 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_XY_2_5Ga 670 |
magnetometer X Y axes sensitivity for 2.5 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_XY_4_7Ga 400 |
magnetometer X Y axes sensitivity for 4.7 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_XY_4Ga 450 |
magnetometer X Y axes sensitivity for 4 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_XY_5_6Ga 330 |
magnetometer X Y axes sensitivity for 5.6 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_XY_8_1Ga 230 |
magnetometer X Y axes sensitivity for 8.1 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_Z_1_3Ga 980 |
magnetometer Z axis sensitivity for 1.3 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_Z_1_9Ga 760 |
magnetometer Z axis sensitivity for 1.9 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_Z_2_5Ga 600 |
magnetometer Z axis sensitivity for 2.5 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_Z_4_7Ga 355 |
magnetometer Z axis sensitivity for 4.7 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_Z_4Ga 400 |
magnetometer Z axis sensitivity for 4 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_Z_5_6Ga 295 |
magnetometer Z axis sensitivity for 5.6 Ga full scale [LSB/Ga]
#define LSM303DLHC_M_SENSITIVITY_Z_8_1Ga 205 |
magnetometer Z axis sensitivity for 8.1 Ga full scale [LSB/Ga]
#define LSM303DLHC_MOV_RECOGNITION ((uint8_t)0x40) |
6D movement recognition
#define LSM303DLHC_MR_REG_M 0x02 /* Control register MR magnetic field */ |
#define LSM303DLHC_NORMAL_MODE ((uint8_t)0x00) |
Acc_Power_Mode_selection
#define LSM303DLHC_ODR_0_75_HZ ((uint8_t) 0x00) |
Mag_Data_RateOutput Data Rate = 0.75 Hz
#define LSM303DLHC_ODR_100_HZ ((uint8_t)0x50) |
Output Data Rate = 100 Hz
#define LSM303DLHC_ODR_10_HZ ((uint8_t)0x20) |
Output Data Rate = 10 Hz
#define LSM303DLHC_ODR_1344_HZ ((uint8_t)0x90) |
Output Data Rate = 1344 Hz in Normal mode and 5376 Hz in Low Power Mode
#define LSM303DLHC_ODR_15_HZ ((uint8_t) 0x10) |
Output Data Rate = 15 Hz
#define LSM303DLHC_ODR_1620_HZ_LP ((uint8_t)0x80) |
Output Data Rate = 1620 Hz only in Low Power Mode
#define LSM303DLHC_ODR_1_5_HZ ((uint8_t) 0x04) |
Output Data Rate = 1.5 Hz
#define LSM303DLHC_ODR_1_HZ ((uint8_t)0x10) |
Acc_OutPut_DataRate_SelectionOutput Data Rate = 1 Hz
#define LSM303DLHC_ODR_200_HZ ((uint8_t)0x60) |
Output Data Rate = 200 Hz
#define LSM303DLHC_ODR_220_HZ ((uint8_t) 0x1C) |
Output Data Rate = 220 Hz
#define LSM303DLHC_ODR_25_HZ ((uint8_t)0x30) |
Output Data Rate = 25 Hz
#define LSM303DLHC_ODR_30_HZ ((uint8_t) 0x14) |
Output Data Rate = 30 Hz
#define LSM303DLHC_ODR_3_0_HZ ((uint8_t) 0x08) |
Output Data Rate = 3 Hz
#define LSM303DLHC_ODR_400_HZ ((uint8_t)0x70) |
Output Data Rate = 400 Hz
#define LSM303DLHC_ODR_50_HZ ((uint8_t)0x40) |
Output Data Rate = 50 Hz
#define LSM303DLHC_ODR_75_HZ ((uint8_t) 0x18) |
Output Data Rate = 75 Hz
#define LSM303DLHC_ODR_7_5_HZ ((uint8_t) 0x0C) |
Output Data Rate = 7.5 Hz
#define LSM303DLHC_OK ((uint32_t) 0) |
STM32F3_DISCOVERY_LSM303DLHC_Exported_Constants
#define LSM303DLHC_OR_COMBINATION ((uint8_t)0x00) |
Acc_INT_Combination_StatusOR combination of enabled IRQs
#define LSM303DLHC_OUT_X_H_A 0x29 /* Output Register X acceleration */ |
#define LSM303DLHC_OUT_X_H_M 0x03 /* Output Register X magnetic field */ |
#define LSM303DLHC_OUT_X_L_A 0x28 /* Output Register X acceleration */ |
#define LSM303DLHC_OUT_X_L_M 0x04 /* Output Register X magnetic field */ |
#define LSM303DLHC_OUT_Y_H_A 0x2B /* Output Register Y acceleration */ |
#define LSM303DLHC_OUT_Y_H_M 0x07 /* Output Register Y magnetic field */ |
#define LSM303DLHC_OUT_Y_L_A 0x2A /* Output Register Y acceleration */ |
#define LSM303DLHC_OUT_Y_L_M 0x08 /* Output Register Y magnetic field */ |
#define LSM303DLHC_OUT_Z_H_A 0x2D /* Output Register Z acceleration */ |
#define LSM303DLHC_OUT_Z_H_M 0x05 /* Output Register Z magnetic field */ |
#define LSM303DLHC_OUT_Z_L_A 0x2C /* Output Register Z acceleration */ |
#define LSM303DLHC_OUT_Z_L_M 0x06 /* Output Register Z magnetic field */ |
#define LSM303DLHC_POS_RECOGNITION ((uint8_t)0xC0) |
6D position recognition
#define LSM303DLHC_REFERENCE_A 0x26 /* Reference register acceleration */ |
#define LSM303DLHC_SINGLE_CONVERSION ((uint8_t) 0x01) |
Single-Conversion Mode
#define LSM303DLHC_SLEEP ((uint8_t) 0x02) |
Sleep Mode
#define LSM303DLHC_SR_REG_M 0x09 /* Status Register magnetic field */ |
#define LSM303DLHC_STATUS_REG_A 0x27 /* Status register acceleration */ |
#define LSM303DLHC_TEMP_OUT_H_M 0x31 /* Temperature Register magnetic field */ |
#define LSM303DLHC_TEMP_OUT_L_M 0x32 /* Temperature Register magnetic field */ |
#define LSM303DLHC_TEMPSENSOR_DISABLE ((uint8_t) 0x00) |
Temp sensor Disable
#define LSM303DLHC_TEMPSENSOR_ENABLE ((uint8_t) 0x80) |
Mag_Temperature_SensorTemp sensor Enable
#define LSM303DLHC_TIME_LATENCY_A 0x3C /* Time Latency Register acceleration */ |
#define LSM303DLHC_TIME_LIMIT_A 0x3B /* Time Limit Register acceleration */ |
#define LSM303DLHC_TIME_WINDOW_A 0x3D /* Time window register acceleration */ |
#define LSM303DLHC_X_DOUBLE_CLICK ((uint8_t)0x02) |
X double click IRQs
#define LSM303DLHC_X_ENABLE ((uint8_t)0x01) |
Acc_Axes_Selection
#define LSM303DLHC_X_HIGH ((uint8_t)0x02) |
X High enabled IRQs
#define LSM303DLHC_X_LOW ((uint8_t)0x01) |
X low enabled IRQs
#define LSM303DLHC_X_SINGLE_CLICK ((uint8_t)0x01) |
X single click IRQs
#define LSM303DLHC_Y_DOUBLE_CLICK ((uint8_t)0x08) |
Y double click IRQs
#define LSM303DLHC_Y_ENABLE ((uint8_t)0x02) |
#define LSM303DLHC_Y_HIGH ((uint8_t)0x08) |
Y High enabled IRQs
#define LSM303DLHC_Y_LOW ((uint8_t)0x04) |
Y low enabled IRQs
#define LSM303DLHC_Y_SINGLE_CLICK ((uint8_t)0x04) |
Y single click IRQs
#define LSM303DLHC_Z_DOUBLE_CLICK ((uint8_t)0x20) |
Acc_INT_ClickZ double click IRQs
#define LSM303DLHC_Z_ENABLE ((uint8_t)0x04) |
#define LSM303DLHC_Z_HIGH ((uint8_t)0x20) |
Acc_INT_AxesZ High enabled IRQs
#define LSM303DLHC_Z_LOW ((uint8_t)0x10) |
Z low enabled IRQs
#define LSM303DLHC_Z_SINGLE_CLICK ((uint8_t)0x10) |
Z single click IRQs
#define MAG_I2C_ADDRESS 0x3C |
bool lsm303dlhcAccDetect | ( | acc_t * | acc | ) |