Martin Johnson / STM32F3-Discovery-minimal

Dependents:   accelerometer_test neopixel_square accelerometer_test_minimal Colour_Video_Demo

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers stm32f3_discovery_lsm303dlhc.h Source File

stm32f3_discovery_lsm303dlhc.h

Go to the documentation of this file.
00001 /**
00002   ******************************************************************************
00003   * @file    stm32f3_discovery_lsm303dlhc.h
00004   * @author  MCD Application Team
00005   * @version V1.1.0
00006   * @date    20-September-2012
00007   * @brief   This file contains definitions for stm32f3_discovery_lsm303dlhc.c 
00008   *          firmware driver.
00009   ******************************************************************************
00010   * @attention
00011   *
00012   * <h2><center>&copy; COPYRIGHT 2012 STMicroelectronics</center></h2>
00013   *
00014   * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
00015   * You may not use this file except in compliance with the License.
00016   * You may obtain a copy of the License at:
00017   *
00018   *        http://www.st.com/software_license_agreement_liberty_v2
00019   *
00020   * Unless required by applicable law or agreed to in writing, software 
00021   * distributed under the License is distributed on an "AS IS" BASIS, 
00022   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00023   * See the License for the specific language governing permissions and
00024   * limitations under the License.
00025   *
00026   ******************************************************************************
00027   */
00028   
00029 
00030 /* Define to prevent recursive inclusion -------------------------------------*/
00031 #ifndef __STM32F3_DISCOVERY_LSM303DLHC_H
00032 #define __STM32F3_DISCOVERY_LSM303DLHC_H
00033 
00034 #ifdef __cplusplus
00035  extern "C" {
00036 #endif
00037 
00038 /* Includes ------------------------------------------------------------------*/
00039  #include "stm32f30x.h"
00040 
00041 /** @addtogroup Utilities
00042   * @{
00043   */
00044   
00045 /** @addtogroup STM32F3_DISCOVERY
00046   * @{
00047   */ 
00048 
00049 /** @addtogroup STM32F3_DISCOVERY_LSM303DLHC
00050   * @{
00051   */
00052   
00053 /** @defgroup STM32F3_DISCOVERY_LSM303DLHC_Exported_Types
00054   * @{
00055   */
00056 
00057 /** 
00058   * @brief  LSM303DLHC Status  
00059   */ 
00060 
00061 /******************************************************************************/
00062 /*************************** START REGISTER MAPPING  **************************/
00063 /******************************************************************************/
00064 /* Acceleration Registers */
00065 #define LSM303DLHC_CTRL_REG1_A               0x20  /* Control register 1 acceleration */
00066 #define LSM303DLHC_CTRL_REG2_A               0x21  /* Control register 2 acceleration */
00067 #define LSM303DLHC_CTRL_REG3_A               0x22  /* Control register 3 acceleration */
00068 #define LSM303DLHC_CTRL_REG4_A               0x23  /* Control register 4 acceleration */
00069 #define LSM303DLHC_CTRL_REG5_A               0x24  /* Control register 5 acceleration */
00070 #define LSM303DLHC_CTRL_REG6_A               0x25  /* Control register 6 acceleration */
00071 #define LSM303DLHC_REFERENCE_A               0x26  /* Reference register acceleration */
00072 #define LSM303DLHC_STATUS_REG_A              0x27  /* Status register acceleration */
00073 #define LSM303DLHC_OUT_X_L_A                 0x28  /* Output Register X acceleration */
00074 #define LSM303DLHC_OUT_X_H_A                 0x29  /* Output Register X acceleration */
00075 #define LSM303DLHC_OUT_Y_L_A                 0x2A  /* Output Register Y acceleration */
00076 #define LSM303DLHC_OUT_Y_H_A                 0x2B  /* Output Register Y acceleration */
00077 #define LSM303DLHC_OUT_Z_L_A                 0x2C  /* Output Register Z acceleration */
00078 #define LSM303DLHC_OUT_Z_H_A                 0x2D  /* Output Register Z acceleration */ 
00079 #define LSM303DLHC_FIFO_CTRL_REG_A           0x2E  /* Fifo control Register acceleration */
00080 #define LSM303DLHC_FIFO_SRC_REG_A            0x2F  /* Fifo src Register acceleration */
00081 
00082 #define LSM303DLHC_INT1_CFG_A                0x30  /* Interrupt 1 configuration Register acceleration */
00083 #define LSM303DLHC_INT1_SOURCE_A             0x31  /* Interrupt 1 source Register acceleration */
00084 #define LSM303DLHC_INT1_THS_A                0x32  /* Interrupt 1 Threshold register acceleration */
00085 #define LSM303DLHC_INT1_DURATION_A           0x33  /* Interrupt 1 DURATION register acceleration */
00086 
00087 #define LSM303DLHC_INT2_CFG_A                0x34  /* Interrupt 2 configuration Register acceleration */
00088 #define LSM303DLHC_INT2_SOURCE_A             0x35  /* Interrupt 2 source Register acceleration */
00089 #define LSM303DLHC_INT2_THS_A                0x36  /* Interrupt 2 Threshold register acceleration */
00090 #define LSM303DLHC_INT2_DURATION_A           0x37  /* Interrupt 2 DURATION register acceleration */
00091 
00092 #define LSM303DLHC_CLICK_CFG_A               0x38  /* Click configuration Register acceleration */
00093 #define LSM303DLHC_CLICK_SOURCE_A            0x39  /* Click 2 source Register acceleration */
00094 #define LSM303DLHC_CLICK_THS_A               0x3A  /* Click 2 Threshold register acceleration */
00095 
00096 #define LSM303DLHC_TIME_LIMIT_A              0x3B  /* Time Limit Register acceleration */
00097 #define LSM303DLHC_TIME_LATENCY_A            0x3C  /* Time Latency Register acceleration */
00098 #define LSM303DLHC_TIME_WINDOW_A             0x3D  /* Time window register acceleration */
00099 
00100 /* Magnetic field Registers */
00101 #define LSM303DLHC_CRA_REG_M                 0x00  /* Control register A magnetic field */
00102 #define LSM303DLHC_CRB_REG_M                 0x01  /* Control register B magnetic field */
00103 #define LSM303DLHC_MR_REG_M                  0x02  /* Control register MR magnetic field */
00104 #define LSM303DLHC_OUT_X_H_M                 0x03  /* Output Register X magnetic field */
00105 #define LSM303DLHC_OUT_X_L_M                 0x04  /* Output Register X magnetic field */
00106 #define LSM303DLHC_OUT_Z_H_M                 0x05  /* Output Register Z magnetic field */
00107 #define LSM303DLHC_OUT_Z_L_M                 0x06  /* Output Register Z magnetic field */ 
00108 #define LSM303DLHC_OUT_Y_H_M                 0x07  /* Output Register Y magnetic field */
00109 #define LSM303DLHC_OUT_Y_L_M                 0x08  /* Output Register Y magnetic field */
00110 
00111 #define LSM303DLHC_SR_REG_M                  0x09  /* Status Register magnetic field */
00112 #define LSM303DLHC_IRA_REG_M                 0x0A  /* IRA Register magnetic field */
00113 #define LSM303DLHC_IRB_REG_M                 0x0B  /* IRB Register magnetic field */
00114 #define LSM303DLHC_IRC_REG_M                 0x0C  /* IRC Register magnetic field */
00115 
00116 #define LSM303DLHC_TEMP_OUT_H_M              0x31  /* Temperature Register magnetic field */
00117 #define LSM303DLHC_TEMP_OUT_L_M              0x32  /* Temperature Register magnetic field */
00118 /******************************************************************************/
00119 /**************************** END REGISTER MAPPING  ***************************/
00120 /******************************************************************************/
00121 
00122 #define ACC_I2C_ADDRESS                      0x32
00123 #define MAG_I2C_ADDRESS                      0x3C
00124 
00125 /** @defgroup Acc_Power_Mode_selection 
00126   * @{
00127   */
00128 #define LSM303DLHC_NORMAL_MODE            ((uint8_t)0x00)
00129 #define LSM303DLHC_LOWPOWER_MODE          ((uint8_t)0x08)
00130 /**
00131   * @}
00132   */
00133 
00134 /** @defgroup Acc_OutPut_DataRate_Selection 
00135   * @{
00136   */
00137 #define LSM303DLHC_ODR_1_HZ                ((uint8_t)0x10)  /*!< Output Data Rate = 1 Hz */
00138 #define LSM303DLHC_ODR_10_HZ               ((uint8_t)0x20)  /*!< Output Data Rate = 10 Hz */
00139 #define LSM303DLHC_ODR_25_HZ               ((uint8_t)0x30)  /*!< Output Data Rate = 25 Hz */
00140 #define LSM303DLHC_ODR_50_HZ               ((uint8_t)0x40)  /*!< Output Data Rate = 50 Hz */
00141 #define LSM303DLHC_ODR_100_HZ              ((uint8_t)0x50)  /*!< Output Data Rate = 100 Hz */
00142 #define LSM303DLHC_ODR_200_HZ              ((uint8_t)0x60)  /*!< Output Data Rate = 200 Hz */
00143 #define LSM303DLHC_ODR_400_HZ              ((uint8_t)0x70)  /*!< Output Data Rate = 400 Hz */
00144 #define LSM303DLHC_ODR_1620_HZ_LP          ((uint8_t)0x80)  /*!< Output Data Rate = 1620 Hz only in Low Power Mode */
00145 #define LSM303DLHC_ODR_1344_HZ             ((uint8_t)0x90)  /*!< Output Data Rate = 1344 Hz in Normal mode and 5376 Hz in Low Power Mode */
00146 
00147 /**
00148   * @}
00149   */
00150 
00151 /** @defgroup Acc_Axes_Selection 
00152   * @{
00153   */
00154 #define LSM303DLHC_X_ENABLE                ((uint8_t)0x01)
00155 #define LSM303DLHC_Y_ENABLE                ((uint8_t)0x02)
00156 #define LSM303DLHC_Z_ENABLE                ((uint8_t)0x04)
00157 #define LSM303DLHC_AXES_ENABLE             ((uint8_t)0x07)
00158 #define LSM303DLHC_AXES_DISABLE            ((uint8_t)0x00)
00159 /**
00160   * @}
00161   */
00162 
00163 /** @defgroup Acc_High_Resolution
00164   * @{
00165   */
00166 #define LSM303DLHC_HR_ENABLE               ((uint8_t)0x08)
00167 #define LSM303DLHC_HR_DISABLE              ((uint8_t)0x00)
00168 /**
00169   * @}
00170   */
00171 
00172 /** @defgroup Acc_Full_Scale_Selection 
00173   * @{
00174   */
00175 #define LSM303DLHC_FULLSCALE_2G            ((uint8_t)0x00)  /*!< �2 g */
00176 #define LSM303DLHC_FULLSCALE_4G            ((uint8_t)0x10)  /*!< �4 g */
00177 #define LSM303DLHC_FULLSCALE_8G            ((uint8_t)0x20)  /*!< �8 g */
00178 #define LSM303DLHC_FULLSCALE_16G           ((uint8_t)0x30)  /*!< �16 g */
00179 /**
00180   * @}
00181   */
00182   
00183 /** @defgroup Acc_Block_Data_Update 
00184   * @{
00185   */  
00186 #define LSM303DLHC_BlockUpdate_Continous   ((uint8_t)0x00) /*!< Continuos Update */
00187 #define LSM303DLHC_BlockUpdate_Single      ((uint8_t)0x80) /*!< Single Update: output registers not updated until MSB and LSB reading */
00188 /**
00189   * @}
00190   */
00191   
00192 /** @defgroup Acc_Endian_Data_selection
00193   * @{
00194   */  
00195 #define LSM303DLHC_BLE_LSB                 ((uint8_t)0x00) /*!< Little Endian: data LSB @ lower address */
00196 #define LSM303DLHC_BLE_MSB             ((uint8_t)0x40) /*!< Big Endian: data MSB @ lower address */
00197 /**
00198   * @}
00199   */
00200   
00201 /** @defgroup Acc_Boot_Mode_selection 
00202   * @{
00203   */
00204 #define LSM303DLHC_BOOT_NORMALMODE         ((uint8_t)0x00)
00205 #define LSM303DLHC_BOOT_REBOOTMEMORY       ((uint8_t)0x80)
00206 /**
00207   * @}
00208   */  
00209  
00210 /** @defgroup Acc_High_Pass_Filter_Mode 
00211   * @{
00212   */   
00213 #define LSM303DLHC_HPM_NORMAL_MODE_RES     ((uint8_t)0x00)
00214 #define LSM303DLHC_HPM_REF_SIGNAL          ((uint8_t)0x40)
00215 #define LSM303DLHC_HPM_NORMAL_MODE         ((uint8_t)0x80)
00216 #define LSM303DLHC_HPM_AUTORESET_INT       ((uint8_t)0xC0)
00217 /**
00218   * @}
00219   */
00220 
00221 /** @defgroup Acc_High_Pass_CUT OFF_Frequency 
00222   * @{
00223   */   
00224 #define LSM303DLHC_HPFCF_8                 ((uint8_t)0x00)
00225 #define LSM303DLHC_HPFCF_16                ((uint8_t)0x10)
00226 #define LSM303DLHC_HPFCF_32                ((uint8_t)0x20)
00227 #define LSM303DLHC_HPFCF_64                ((uint8_t)0x30)
00228 /**
00229   * @}
00230   */
00231     
00232 /** @defgroup Acc_High_Pass_Filter_status 
00233   * @{
00234   */   
00235 #define LSM303DLHC_HIGHPASSFILTER_DISABLE  ((uint8_t)0x00)
00236 #define LSM303DLHC_HIGHPASSFILTER_ENABLE   ((uint8_t)0x08)
00237 /**
00238   * @}
00239   */
00240   
00241 /** @defgroup Acc_High_Pass_Filter_Click_status 
00242   * @{
00243   */   
00244 #define LSM303DLHC_HPF_CLICK_DISABLE       ((uint8_t)0x00)
00245 #define LSM303DLHC_HPF_CLICK_ENABLE        ((uint8_t)0x04)
00246 /**
00247   * @}
00248   */
00249 
00250 /** @defgroup Acc_High_Pass_Filter_AOI1_status 
00251   * @{
00252   */   
00253 #define LSM303DLHC_HPF_AOI1_DISABLE        ((uint8_t)0x00)
00254 #define LSM303DLHC_HPF_AOI1_ENABLE         ((uint8_t)0x01)
00255 /**
00256   * @}
00257   */
00258   
00259 /** @defgroup Acc_High_Pass_Filter_AOI2_status 
00260   * @{
00261   */   
00262 #define LSM303DLHC_HPF_AOI2_DISABLE        ((uint8_t)0x00)
00263 #define LSM303DLHC_HPF_AOI2_ENABLE     ((uint8_t)0x02)
00264 /**
00265   * @}
00266   */ 
00267 
00268 /** @defgroup Acc_LSM303DLHC_Interrupt1_Configuration_definition
00269   * @{
00270   */
00271 #define LSM303DLHC_IT1_CLICK               ((uint8_t)0x80)
00272 #define LSM303DLHC_IT1_AOI1                ((uint8_t)0x40)
00273 #define LSM303DLHC_IT1_AOI2                ((uint8_t)0x20)
00274 #define LSM303DLHC_IT1_DRY1                ((uint8_t)0x10)
00275 #define LSM303DLHC_IT1_DRY2                ((uint8_t)0x08)
00276 #define LSM303DLHC_IT1_WTM                 ((uint8_t)0x04)
00277 #define LSM303DLHC_IT1_OVERRUN             ((uint8_t)0x02)
00278 /**
00279   * @}
00280   */  
00281  
00282 /** @defgroup Acc_LSM303DLHC_Interrupt2_Configuration_definition
00283   * @{
00284   */
00285 #define LSM303DLHC_IT2_CLICK               ((uint8_t)0x80)
00286 #define LSM303DLHC_IT2_INT1                ((uint8_t)0x40)
00287 #define LSM303DLHC_IT2_INT2                ((uint8_t)0x20)
00288 #define LSM303DLHC_IT2_BOOT                ((uint8_t)0x10)
00289 #define LSM303DLHC_IT2_ACT                 ((uint8_t)0x08)
00290 #define LSM303DLHC_IT2_HLACTIVE            ((uint8_t)0x02)
00291 /**
00292   * @}
00293   */ 
00294 
00295 /** @defgroup Acc_INT_Combination_Status 
00296   * @{
00297   */   
00298 #define LSM303DLHC_OR_COMBINATION          ((uint8_t)0x00)  /*!< OR combination of enabled IRQs */
00299 #define LSM303DLHC_AND_COMBINATION         ((uint8_t)0x80)  /*!< AND combination of enabled IRQs */
00300 #define LSM303DLHC_MOV_RECOGNITION         ((uint8_t)0x40)  /*!< 6D movement recognition */
00301 #define LSM303DLHC_POS_RECOGNITION         ((uint8_t)0xC0)  /*!< 6D position recognition */
00302 /**
00303   * @}
00304   */
00305 
00306 /** @defgroup Acc_INT_Axes 
00307   * @{
00308   */   
00309 #define LSM303DLHC_Z_HIGH                  ((uint8_t)0x20)  /*!< Z High enabled IRQs */
00310 #define LSM303DLHC_Z_LOW                     ((uint8_t)0x10)  /*!< Z low enabled IRQs */
00311 #define LSM303DLHC_Y_HIGH                  ((uint8_t)0x08)  /*!< Y High enabled IRQs */
00312 #define LSM303DLHC_Y_LOW                     ((uint8_t)0x04)  /*!< Y low enabled IRQs */
00313 #define LSM303DLHC_X_HIGH                  ((uint8_t)0x02)  /*!< X High enabled IRQs */
00314 #define LSM303DLHC_X_LOW                     ((uint8_t)0x01)  /*!< X low enabled IRQs */
00315 /**
00316   * @}
00317   */
00318       
00319 /** @defgroup Acc_INT_Click 
00320   * @{
00321   */   
00322 #define LSM303DLHC_Z_DOUBLE_CLICK          ((uint8_t)0x20)  /*!< Z double click IRQs */
00323 #define LSM303DLHC_Z_SINGLE_CLICK            ((uint8_t)0x10)  /*!< Z single click IRQs */
00324 #define LSM303DLHC_Y_DOUBLE_CLICK          ((uint8_t)0x08)  /*!< Y double click IRQs */
00325 #define LSM303DLHC_Y_SINGLE_CLICK            ((uint8_t)0x04)  /*!< Y single click IRQs */
00326 #define LSM303DLHC_X_DOUBLE_CLICK          ((uint8_t)0x02)  /*!< X double click IRQs */
00327 #define LSM303DLHC_X_SINGLE_CLICK            ((uint8_t)0x01)  /*!< X single click IRQs */
00328 /**
00329   * @}
00330   */
00331   
00332 /** @defgroup Acc_INT1_Interrupt_status 
00333   * @{
00334   */   
00335 #define LSM303DLHC_INT1INTERRUPT_DISABLE   ((uint8_t)0x00)
00336 #define LSM303DLHC_INT1INTERRUPT_ENABLE    ((uint8_t)0x80)
00337 /**
00338   * @}
00339   */
00340 
00341 /** @defgroup Acc_INT1_Interrupt_ActiveEdge 
00342   * @{
00343   */   
00344 #define LSM303DLHC_INT1INTERRUPT_LOW_EDGE  ((uint8_t)0x20)
00345 #define LSM303DLHC_INT1INTERRUPT_HIGH_EDGE ((uint8_t)0x00)
00346 /**
00347   * @}
00348   */
00349 
00350 /** @defgroup Mag_Data_Rate 
00351   * @{
00352   */ 
00353 #define LSM303DLHC_ODR_0_75_HZ              ((uint8_t) 0x00)  /*!< Output Data Rate = 0.75 Hz */
00354 #define LSM303DLHC_ODR_1_5_HZ               ((uint8_t) 0x04)  /*!< Output Data Rate = 1.5 Hz */
00355 #define LSM303DLHC_ODR_3_0_HZ               ((uint8_t) 0x08)  /*!< Output Data Rate = 3 Hz */
00356 #define LSM303DLHC_ODR_7_5_HZ               ((uint8_t) 0x0C)  /*!< Output Data Rate = 7.5 Hz */
00357 #define LSM303DLHC_ODR_15_HZ                ((uint8_t) 0x10)  /*!< Output Data Rate = 15 Hz */
00358 #define LSM303DLHC_ODR_30_HZ                ((uint8_t) 0x14)  /*!< Output Data Rate = 30 Hz */
00359 #define LSM303DLHC_ODR_75_HZ                ((uint8_t) 0x18)  /*!< Output Data Rate = 75 Hz */
00360 #define LSM303DLHC_ODR_220_HZ               ((uint8_t) 0x1C)  /*!< Output Data Rate = 220 Hz */
00361 /**
00362   * @}
00363   */
00364  
00365 /** @defgroup Mag_Full_Scale
00366   * @{
00367   */ 
00368 #define  LSM303DLHC_FS_1_3_GA               ((uint8_t) 0x20)  /*!< Full scale = �1.3 Gauss */
00369 #define  LSM303DLHC_FS_1_9_GA               ((uint8_t) 0x40)  /*!< Full scale = �1.9 Gauss */
00370 #define  LSM303DLHC_FS_2_5_GA               ((uint8_t) 0x60)  /*!< Full scale = �2.5 Gauss */
00371 #define  LSM303DLHC_FS_4_0_GA               ((uint8_t) 0x80)  /*!< Full scale = �4.0 Gauss */
00372 #define  LSM303DLHC_FS_4_7_GA               ((uint8_t) 0xA0)  /*!< Full scale = �4.7 Gauss */
00373 #define  LSM303DLHC_FS_5_6_GA               ((uint8_t) 0xC0)  /*!< Full scale = �5.6 Gauss */
00374 #define  LSM303DLHC_FS_8_1_GA               ((uint8_t) 0xE0)  /*!< Full scale = �8.1 Gauss */
00375 /**
00376   * @}
00377   */ 
00378  
00379 /**
00380  * @defgroup Magnetometer_Sensitivity              
00381  * @{
00382  */
00383 #define LSM303DLHC_M_SENSITIVITY_XY_1_3Ga     1100  /*!< magnetometer X Y axes sensitivity for 1.3 Ga full scale [LSB/Ga] */
00384 #define LSM303DLHC_M_SENSITIVITY_XY_1_9Ga     855   /*!< magnetometer X Y axes sensitivity for 1.9 Ga full scale [LSB/Ga] */
00385 #define LSM303DLHC_M_SENSITIVITY_XY_2_5Ga     670   /*!< magnetometer X Y axes sensitivity for 2.5 Ga full scale [LSB/Ga] */
00386 #define LSM303DLHC_M_SENSITIVITY_XY_4Ga       450   /*!< magnetometer X Y axes sensitivity for 4 Ga full scale [LSB/Ga] */
00387 #define LSM303DLHC_M_SENSITIVITY_XY_4_7Ga     400   /*!< magnetometer X Y axes sensitivity for 4.7 Ga full scale [LSB/Ga] */
00388 #define LSM303DLHC_M_SENSITIVITY_XY_5_6Ga     330   /*!< magnetometer X Y axes sensitivity for 5.6 Ga full scale [LSB/Ga] */
00389 #define LSM303DLHC_M_SENSITIVITY_XY_8_1Ga     230   /*!< magnetometer X Y axes sensitivity for 8.1 Ga full scale [LSB/Ga] */
00390 #define LSM303DLHC_M_SENSITIVITY_Z_1_3Ga      980   /*!< magnetometer Z axis sensitivity for 1.3 Ga full scale [LSB/Ga] */
00391 #define LSM303DLHC_M_SENSITIVITY_Z_1_9Ga      760   /*!< magnetometer Z axis sensitivity for 1.9 Ga full scale [LSB/Ga] */
00392 #define LSM303DLHC_M_SENSITIVITY_Z_2_5Ga      600   /*!< magnetometer Z axis sensitivity for 2.5 Ga full scale [LSB/Ga] */
00393 #define LSM303DLHC_M_SENSITIVITY_Z_4Ga        400   /*!< magnetometer Z axis sensitivity for 4 Ga full scale [LSB/Ga] */
00394 #define LSM303DLHC_M_SENSITIVITY_Z_4_7Ga      355   /*!< magnetometer Z axis sensitivity for 4.7 Ga full scale [LSB/Ga] */
00395 #define LSM303DLHC_M_SENSITIVITY_Z_5_6Ga      295   /*!< magnetometer Z axis sensitivity for 5.6 Ga full scale [LSB/Ga] */
00396 #define LSM303DLHC_M_SENSITIVITY_Z_8_1Ga      205   /*!< magnetometer Z axis sensitivity for 8.1 Ga full scale [LSB/Ga] */
00397 /**
00398  * @}
00399  */
00400 
00401 /** @defgroup Mag_Working_Mode
00402   * @{
00403   */ 
00404 #define LSM303DLHC_CONTINUOS_CONVERSION      ((uint8_t) 0x00)   /*!< Continuous-Conversion Mode */
00405 #define LSM303DLHC_SINGLE_CONVERSION         ((uint8_t) 0x01)   /*!< Single-Conversion Mode */
00406 #define LSM303DLHC_SLEEP                     ((uint8_t) 0x02)   /*!< Sleep Mode */                       
00407 /**
00408   * @}
00409   */
00410 
00411 /** @defgroup Mag_Temperature_Sensor
00412   * @{
00413   */ 
00414 #define LSM303DLHC_TEMPSENSOR_ENABLE         ((uint8_t) 0x80)   /*!< Temp sensor Enable */
00415 #define LSM303DLHC_TEMPSENSOR_DISABLE        ((uint8_t) 0x00)   /*!< Temp sensor Disable */
00416 /**                           
00417   * @}
00418   */
00419     
00420 /** @defgroup STM32F3_DISCOVERY_LSM303DLHC_Exported_Functions
00421   * @{
00422   */
00423 #ifdef __cplusplus
00424 }
00425 #endif
00426 
00427 #endif /* __STM32F3_DISCOVERY_LSM303DLHC_H */
00428 /**
00429   * @}
00430   */
00431 
00432 /**
00433   * @}
00434   */
00435 
00436 /**
00437   * @}
00438   */
00439 
00440 /**
00441   * @}
00442   */ 
00443 
00444 
00445 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/