/**
******************************************************************************
* @file stm32l475e_iot01_psensor.c
* @author MCD Application Team
* @brief This file provides a set of functions needed to manage the pressure sensor
******************************************************************************
* @attention
*
*
© Copyright (c) 2017 STMicroelectronics.
* All rights reserved.
*
* This software component is licensed by ST under BSD 3-Clause license,
* the "License"; You may not use this file except in compliance with the
* License. You may obtain a copy of the License at:
* opensource.org/licenses/BSD-3-Clause
*
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include "stm32l475e_iot01_psensor.h"
/** @addtogroup BSP
* @{
*/
/** @addtogroup STM32L475E_IOT01
* @{
*/
/** @defgroup STM32L475E_IOT01_PRESSURE PRESSURE
* @{
*/
/** @defgroup STM32L475E_IOT01_PRESSURE_Private_Variables PRESSURE Private Variables
* @{
*/
static PSENSOR_DrvTypeDef *Psensor_drv;
/**
* @}
*/
/** @defgroup STM32L475E_IOT01_PRESSURE_Private_Functions PRESSURE Private Functions
* @{
*/
/**
* @brief Initializes peripherals used by the I2C Pressure Sensor driver.
* @retval PSENSOR status
*/
uint32_t BSP_PSENSOR_Init(void)
{
uint32_t ret;
if(LPS22HB_P_Drv.ReadID(LPS22HB_I2C_ADDRESS) != LPS22HB_WHO_AM_I_VAL)
{
ret = PSENSOR_ERROR;
}
else
{
Psensor_drv = &LPS22HB_P_Drv;
/* PSENSOR Init */
Psensor_drv->Init(LPS22HB_I2C_ADDRESS);
ret = PSENSOR_OK;
}
return ret;
}
/**
* @brief Read ID of LPS22HB.
* @retval LPS22HB ID value.
*/
uint8_t BSP_PSENSOR_ReadID(void)
{
return Psensor_drv->ReadID(LPS22HB_I2C_ADDRESS);
}
/**
* @brief Read Pressure register of LPS22HB.
* @retval LPS22HB measured pressure value.
*/
float BSP_PSENSOR_ReadPressure(void)
{
return Psensor_drv->ReadPressure(LPS22HB_I2C_ADDRESS);
}
/**
* @}
*/
/**
* @}
*/
/**
* @}
*/
/**
* @}
*/
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/