Library for supporting the Nucleo Sensor Shield.

Dependents:   Nucleo_Sensors_Demo m2x-temp_ethernet_demo m2x-MEMS_ACKme_Wifi_demo m2x_MEMS_Ublox_Cellular_demo ... more

Fork of Nucleo_Sensor_Shield by Daniel Griffin

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers hts221.h Source File

hts221.h

Go to the documentation of this file.
00001 /**
00002 ******************************************************************************
00003 * @file    x_cube_mems_hts221.h
00004 * @author  AST / EST
00005 * @version V0.0.1
00006 * @date    1-December-2014
00007 * @brief   Header file for component HTS221
00008 ******************************************************************************
00009 * @attention
00010 *
00011 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
00012 *
00013 * Redistribution and use in source and binary forms, with or without modification,
00014 * are permitted provided that the following conditions are met:
00015 *   1. Redistributions of source code must retain the above copyright notice,
00016 *      this list of conditions and the following disclaimer.
00017 *   2. Redistributions in binary form must reproduce the above copyright notice,
00018 *      this list of conditions and the following disclaimer in the documentation
00019 *      and/or other materials provided with the distribution.
00020 *   3. Neither the name of STMicroelectronics nor the names of its contributors
00021 *      may be used to endorse or promote products derived from this software
00022 *      without specific prior written permission.
00023 *
00024 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00025 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00026 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
00027 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
00028 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
00029 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
00030 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
00031 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
00032 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
00033 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00034 *
00035 ******************************************************************************
00036 */
00037 
00038 #ifndef __X_CUBE_MEMS_HTS221_H
00039 #define __X_CUBE_MEMS_HTS221_H
00040 
00041 /* Includes ------------------------------------------------------------------*/
00042 #include "mbed.h"
00043 #include "x_cube_mems_i2c.h"
00044 
00045 /* Classes -------------------------------------------------------------------*/
00046 /** Class representing a HTS221 sensor component
00047  */
00048 class HTS221
00049 {
00050 public:
00051     /** Constructor
00052      * @param 
00053      */
00054     HTS221(DevI2C &i2c) : dev_i2c(i2c) {
00055         HumTempInitialized = 0;
00056         Init();
00057     };
00058 
00059     int GetTemperature(float* pfData);
00060     int GetHumidity(float* pfData);
00061     void    Init(/*HUM_TEMP_InitTypeDef *HTS221_Init*/);
00062     uint8_t   ReadID(void);
00063     void      RebootCmd(void);
00064     int      Power_OFF(void); 
00065     int      Power_ON(void);
00066     int        HTS221_Calibration();
00067 private:
00068     
00069     uint8_t isInitialized(void)
00070     {
00071         return HumTempInitialized;
00072     }
00073     
00074     DevI2C &dev_i2c;
00075     uint8_t HumTempInitialized;
00076 };
00077 
00078 #endif // __X_CUBE_MEMS_HTS221_H