Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of ReferredCoursework2016 by
hum_temp.h
00001 /** 00002 ****************************************************************************** 00003 * @file hum_temp.h 00004 * @author MEMS Application Team 00005 * @version V1.2.0 00006 * @date 28-January-2015 00007 * @brief This header file contains the functions prototypes for the 00008 * humidity and temperature driver. 00009 ****************************************************************************** 00010 * @attention 00011 * 00012 * <h2><center>© COPYRIGHT(c) 2015 STMicroelectronics</center></h2> 00013 * 00014 * Redistribution and use in source and binary forms, with or without modification, 00015 * are permitted provided that the following conditions are met: 00016 * 1. Redistributions of source code must retain the above copyright notice, 00017 * this list of conditions and the following disclaimer. 00018 * 2. Redistributions in binary form must reproduce the above copyright notice, 00019 * this list of conditions and the following disclaimer in the documentation 00020 * and/or other materials provided with the distribution. 00021 * 3. Neither the name of STMicroelectronics nor the names of its contributors 00022 * may be used to endorse or promote products derived from this software 00023 * without specific prior written permission. 00024 * 00025 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 00026 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00027 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 00028 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 00029 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 00030 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 00031 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 00032 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 00033 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 00034 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00035 * 00036 ****************************************************************************** 00037 */ 00038 00039 00040 /* Define to prevent recursive inclusion -------------------------------------*/ 00041 #ifndef __HUM_TEMP_H 00042 #define __HUM_TEMP_H 00043 00044 #ifdef __cplusplus 00045 extern "C" { 00046 #endif 00047 00048 /* Includes ------------------------------------------------------------------*/ 00049 #include <stdint.h> 00050 00051 /** @addtogroup BSP 00052 * @{ 00053 */ 00054 00055 /** @addtogroup Components 00056 * @{ 00057 */ 00058 00059 /** @addtogroup HUM_TEMP 00060 * @{ 00061 */ 00062 00063 /** @defgroup HUM_TEMP_Exported_Types 00064 * @{ 00065 */ 00066 00067 /** 00068 * @brief Humidity and temperature init structure definition 00069 */ 00070 typedef struct 00071 { 00072 uint8_t Power_Mode; /* Power-down/Sleep/Normal Mode */ 00073 uint8_t Data_Update_Mode; /* continuous update/output registers not updated until MSB and LSB reading*/ 00074 uint8_t Reboot_Mode; /* Normal Mode/Reboot memory content */ 00075 uint8_t Humidity_Resolutin; /* Humidity Resolution */ 00076 uint8_t Temperature_Resolution; /* Temperature Resolution */ 00077 uint8_t OutputDataRate; /* One-shot / 1Hz / 7 Hz / 12.5 Hz */ 00078 } HUM_TEMP_InitTypeDef; 00079 00080 /** 00081 * @brief Humidity and temperature status enumerator definition 00082 */ 00083 typedef enum 00084 { 00085 HUM_TEMP_OK = 0, 00086 HUM_TEMP_ERROR = 1, 00087 HUM_TEMP_TIMEOUT = 2, 00088 HUM_TEMP_NOT_IMPLEMENTED = 3 00089 } HUM_TEMP_StatusTypeDef; 00090 00091 /** 00092 * @brief Humidity and temperature component id enumerator definition 00093 */ 00094 typedef enum 00095 { 00096 HUM_TEMP_NONE_COMPONENT = 0, 00097 HUM_TEMP_HTS221_COMPONENT = 1 00098 } HUM_TEMP_ComponentTypeDef; 00099 00100 /** 00101 * @brief Humidity and temperature driver extended structure definition 00102 */ 00103 typedef struct 00104 { 00105 HUM_TEMP_ComponentTypeDef 00106 id; /* This id must be unique for each component belonging to this class that wants to extend common class */ 00107 void *pData; /* This pointer is specific for each component */ 00108 } HUM_TEMP_DrvExtTypeDef; 00109 00110 /** 00111 * @brief Humidity and temperature driver structure definition 00112 */ 00113 typedef struct 00114 { 00115 HUM_TEMP_StatusTypeDef (*Init)(HUM_TEMP_InitTypeDef *); 00116 HUM_TEMP_StatusTypeDef (*PowerOFF)(void); 00117 HUM_TEMP_StatusTypeDef (*ReadID)(uint8_t *); 00118 HUM_TEMP_StatusTypeDef (*Reset)(void); 00119 void (*ConfigIT)(uint16_t); 00120 void (*EnableIT)(uint8_t); 00121 void (*DisableIT)(uint8_t); 00122 uint8_t (*ITStatus)(uint16_t, uint16_t); 00123 void (*ClearIT)(uint16_t, uint16_t); 00124 HUM_TEMP_StatusTypeDef (*GetHumidity)(float *); 00125 HUM_TEMP_StatusTypeDef (*GetTemperature)(float *); 00126 HUM_TEMP_DrvExtTypeDef *extData; 00127 } HUM_TEMP_DrvTypeDef; 00128 00129 /** 00130 * @} 00131 */ 00132 00133 /** 00134 * @} 00135 */ 00136 00137 /** 00138 * @} 00139 */ 00140 00141 /** 00142 * @} 00143 */ 00144 00145 #ifdef __cplusplus 00146 } 00147 #endif 00148 00149 #endif /* __HUM_TEMP_H */ 00150 00151 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
Generated on Sat Jul 16 2022 05:47:21 by
