B-L475E-IOT01 BSP User Manual
|
stm32l475e_iot01_psensor.c
Go to the documentation of this file.
00001 /** 00002 ****************************************************************************** 00003 * @file stm32l475e_iot01_psensor.c 00004 * @author MCD Application Team 00005 * @version V1.0.0 00006 * @date 17-March-2017 00007 * @brief This file provides a set of functions needed to manage the pressure sensor 00008 ****************************************************************************** 00009 * @attention 00010 * 00011 * <h2><center>© Copyright (c) 2017 STMicroelectronics International N.V. 00012 * All rights reserved.</center></h2> 00013 * 00014 * Redistribution and use in source and binary forms, with or without 00015 * modification, are permitted, provided that the following conditions are met: 00016 * 00017 * 1. Redistribution of source code must retain the above copyright notice, 00018 * this list of conditions and the following disclaimer. 00019 * 2. Redistributions in binary form must reproduce the above copyright notice, 00020 * this list of conditions and the following disclaimer in the documentation 00021 * and/or other materials provided with the distribution. 00022 * 3. Neither the name of STMicroelectronics nor the names of other 00023 * contributors to this software may be used to endorse or promote products 00024 * derived from this software without specific written permission. 00025 * 4. This software, including modifications and/or derivative works of this 00026 * software, must execute solely and exclusively on microcontroller or 00027 * microprocessor devices manufactured by or for STMicroelectronics. 00028 * 5. Redistribution and use of this software other than as permitted under 00029 * this license is void and will automatically terminate your rights under 00030 * this license. 00031 * 00032 * THIS SOFTWARE IS PROVIDED BY STMICROELECTRONICS AND CONTRIBUTORS "AS IS" 00033 * AND ANY EXPRESS, IMPLIED OR STATUTORY WARRANTIES, INCLUDING, BUT NOT 00034 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A 00035 * PARTICULAR PURPOSE AND NON-INFRINGEMENT OF THIRD PARTY INTELLECTUAL PROPERTY 00036 * RIGHTS ARE DISCLAIMED TO THE FULLEST EXTENT PERMITTED BY LAW. IN NO EVENT 00037 * SHALL STMICROELECTRONICS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 00038 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 00039 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, 00040 * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 00041 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 00042 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 00043 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00044 * 00045 ****************************************************************************** 00046 */ 00047 00048 /* Includes ------------------------------------------------------------------*/ 00049 #include "stm32l475e_iot01_psensor.h" 00050 00051 /** @addtogroup BSP 00052 * @{ 00053 */ 00054 00055 /** @addtogroup STM32L475E_IOT01 00056 * @{ 00057 */ 00058 00059 /** @defgroup STM32L475E_IOT01_PRESSURE PRESSURE 00060 * @{ 00061 */ 00062 00063 /** @defgroup STM32L475E_IOT01_PRESSURE_Private_Variables PRESSURE Private Variables 00064 * @{ 00065 */ 00066 static PSENSOR_DrvTypeDef *Psensor_drv; 00067 /** 00068 * @} 00069 */ 00070 00071 /** @defgroup STM32L475E_IOT01_PRESSURE_Private_Functions PRESSURE Private Functions 00072 * @{ 00073 */ 00074 00075 /** 00076 * @brief Initializes peripherals used by the I2C Pressure Sensor driver. 00077 * @retval PSENSOR status 00078 */ 00079 uint32_t BSP_PSENSOR_Init(void) 00080 { 00081 uint32_t ret; 00082 00083 if(LPS22HB_P_Drv.ReadID(LPS22HB_I2C_ADDRESS) != LPS22HB_WHO_AM_I_VAL) 00084 { 00085 ret = PSENSOR_ERROR; 00086 } 00087 else 00088 { 00089 Psensor_drv = &LPS22HB_P_Drv; 00090 00091 /* PSENSOR Init */ 00092 Psensor_drv->Init(LPS22HB_I2C_ADDRESS); 00093 ret = PSENSOR_OK; 00094 } 00095 00096 return ret; 00097 } 00098 00099 /** 00100 * @brief Read ID of LPS22HB. 00101 * @retval LPS22HB ID value. 00102 */ 00103 uint8_t BSP_PSENSOR_ReadID(void) 00104 { 00105 return Psensor_drv->ReadID(LPS22HB_I2C_ADDRESS); 00106 } 00107 00108 /** 00109 * @brief Read Pressure register of LPS22HB. 00110 * @retval LPS22HB measured pressure value. 00111 */ 00112 float BSP_PSENSOR_ReadPressure(void) 00113 { 00114 return Psensor_drv->ReadPressure(LPS22HB_I2C_ADDRESS); 00115 } 00116 /** 00117 * @} 00118 */ 00119 00120 /** 00121 * @} 00122 */ 00123 00124 /** 00125 * @} 00126 */ 00127 00128 /** 00129 * @} 00130 */ 00131 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
Generated on Thu Mar 16 2017 10:38:32 for B-L475E-IOT01 BSP User Manual by
