INSAT Mini Project

Dependencies:   ST_INTERFACES X_NUCLEO_COMMON

Fork of X_NUCLEO_6180XA1 by ST

Committer:
gallonm
Date:
Wed Sep 09 16:00:39 2015 +0000
Revision:
1:1de1ea2994d9
Child:
3:454541a079f4
Added some files

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gallonm 1:1de1ea2994d9 1 /**
gallonm 1:1de1ea2994d9 2 ******************************************************************************
gallonm 1:1de1ea2994d9 3 * @file vl6180x_class.cpp
gallonm 1:1de1ea2994d9 4 * @author AST / EST
gallonm 1:1de1ea2994d9 5 * @version V0.0.1
gallonm 1:1de1ea2994d9 6 * @date 14-April-2015
gallonm 1:1de1ea2994d9 7 * @brief Implementation file for the HTS221 driver class
gallonm 1:1de1ea2994d9 8 ******************************************************************************
gallonm 1:1de1ea2994d9 9 * @attention
gallonm 1:1de1ea2994d9 10 *
gallonm 1:1de1ea2994d9 11 * <h2><center>&copy; COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
gallonm 1:1de1ea2994d9 12 *
gallonm 1:1de1ea2994d9 13 * Redistribution and use in source and binary forms, with or without modification,
gallonm 1:1de1ea2994d9 14 * are permitted provided that the following conditions are met:
gallonm 1:1de1ea2994d9 15 * 1. Redistributions of source code must retain the above copyright notice,
gallonm 1:1de1ea2994d9 16 * this list of conditions and the following disclaimer.
gallonm 1:1de1ea2994d9 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
gallonm 1:1de1ea2994d9 18 * this list of conditions and the following disclaimer in the documentation
gallonm 1:1de1ea2994d9 19 * and/or other materials provided with the distribution.
gallonm 1:1de1ea2994d9 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
gallonm 1:1de1ea2994d9 21 * may be used to endorse or promote products derived from this software
gallonm 1:1de1ea2994d9 22 * without specific prior written permission.
gallonm 1:1de1ea2994d9 23 *
gallonm 1:1de1ea2994d9 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
gallonm 1:1de1ea2994d9 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
gallonm 1:1de1ea2994d9 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
gallonm 1:1de1ea2994d9 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
gallonm 1:1de1ea2994d9 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
gallonm 1:1de1ea2994d9 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
gallonm 1:1de1ea2994d9 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
gallonm 1:1de1ea2994d9 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
gallonm 1:1de1ea2994d9 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
gallonm 1:1de1ea2994d9 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
gallonm 1:1de1ea2994d9 34 *
gallonm 1:1de1ea2994d9 35 ******************************************************************************
gallonm 1:1de1ea2994d9 36 */
gallonm 1:1de1ea2994d9 37
gallonm 1:1de1ea2994d9 38 /* Includes ------------------------------------------------------------------*/
gallonm 1:1de1ea2994d9 39 #include "vl6180x_class.h"
gallonm 1:1de1ea2994d9 40
gallonm 1:1de1ea2994d9 41
gallonm 1:1de1ea2994d9 42
gallonm 1:1de1ea2994d9 43 /**
gallonm 1:1de1ea2994d9 44 * @brief Set HTS221 Initialization
gallonm 1:1de1ea2994d9 45 * @param HTS221_Init the configuration setting for the HTS221
gallonm 1:1de1ea2994d9 46 * @retval HUM_TEMP_OK in case of success, an error code otherwise
gallonm 1:1de1ea2994d9 47 */
gallonm 1:1de1ea2994d9 48 VL6180x_ErrCode_t VL6180X::VL6180X_Init(HUM_TEMP_InitTypeDef *HTS221_Init)
gallonm 1:1de1ea2994d9 49 {
gallonm 1:1de1ea2994d9 50 uint8_t tmp = 0x00;
gallonm 1:1de1ea2994d9 51
gallonm 1:1de1ea2994d9 52 /* Configure the low level interface ---------------------------------------*/
gallonm 1:1de1ea2994d9 53 if(HTS221_IO_Init() != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 54 {
gallonm 1:1de1ea2994d9 55 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 56 }
gallonm 1:1de1ea2994d9 57
gallonm 1:1de1ea2994d9 58 if(HTS221_Power_On() != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 59 {
gallonm 1:1de1ea2994d9 60 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 61 }
gallonm 1:1de1ea2994d9 62
gallonm 1:1de1ea2994d9 63 if(HTS221_Calibration() != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 64 {
gallonm 1:1de1ea2994d9 65 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 66 }
gallonm 1:1de1ea2994d9 67
gallonm 1:1de1ea2994d9 68 if(HTS221_IO_Read(&tmp, HTS221_CTRL_REG1_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 69 {
gallonm 1:1de1ea2994d9 70 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 71 }
gallonm 1:1de1ea2994d9 72
gallonm 1:1de1ea2994d9 73 /* Output Data Rate selection */
gallonm 1:1de1ea2994d9 74 tmp &= ~(HTS221_ODR_MASK);
gallonm 1:1de1ea2994d9 75 tmp |= HTS221_Init->OutputDataRate;
gallonm 1:1de1ea2994d9 76
gallonm 1:1de1ea2994d9 77 if(HTS221_IO_Write(&tmp, HTS221_CTRL_REG1_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 78 {
gallonm 1:1de1ea2994d9 79 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 80 }
gallonm 1:1de1ea2994d9 81
gallonm 1:1de1ea2994d9 82 HTS221_IO_ITConfig();
gallonm 1:1de1ea2994d9 83
gallonm 1:1de1ea2994d9 84 return HUM_TEMP_OK;
gallonm 1:1de1ea2994d9 85 }
gallonm 1:1de1ea2994d9 86
gallonm 1:1de1ea2994d9 87 /**
gallonm 1:1de1ea2994d9 88 * @brief Read ID address of HTS221
gallonm 1:1de1ea2994d9 89 * @param ht_id the pointer where the ID of the device is stored
gallonm 1:1de1ea2994d9 90 * @retval HUM_TEMP_OK in case of success, an error code otherwise
gallonm 1:1de1ea2994d9 91 */
gallonm 1:1de1ea2994d9 92 HUM_TEMP_StatusTypeDef HTS221::HTS221_ReadID(uint8_t *ht_id)
gallonm 1:1de1ea2994d9 93 {
gallonm 1:1de1ea2994d9 94 if(!ht_id)
gallonm 1:1de1ea2994d9 95 {
gallonm 1:1de1ea2994d9 96 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 97 }
gallonm 1:1de1ea2994d9 98
gallonm 1:1de1ea2994d9 99 return HTS221_IO_Read(ht_id, HTS221_WHO_AM_I_ADDR, 1);
gallonm 1:1de1ea2994d9 100 }
gallonm 1:1de1ea2994d9 101
gallonm 1:1de1ea2994d9 102 /**
gallonm 1:1de1ea2994d9 103 * @brief Reboot memory content of HTS221
gallonm 1:1de1ea2994d9 104 * @retval HUM_TEMP_OK in case of success, an error code otherwise
gallonm 1:1de1ea2994d9 105 */
gallonm 1:1de1ea2994d9 106 HUM_TEMP_StatusTypeDef HTS221::HTS221_RebootCmd(void)
gallonm 1:1de1ea2994d9 107 {
gallonm 1:1de1ea2994d9 108 uint8_t tmpreg;
gallonm 1:1de1ea2994d9 109
gallonm 1:1de1ea2994d9 110 /* Read CTRL_REG2 register */
gallonm 1:1de1ea2994d9 111 if(HTS221_IO_Read(&tmpreg, HTS221_CTRL_REG2_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 112 {
gallonm 1:1de1ea2994d9 113 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 114 }
gallonm 1:1de1ea2994d9 115
gallonm 1:1de1ea2994d9 116 /* Enable or Disable the reboot memory */
gallonm 1:1de1ea2994d9 117 tmpreg |= HTS221_BOOT_REBOOTMEMORY;
gallonm 1:1de1ea2994d9 118
gallonm 1:1de1ea2994d9 119 /* Write value to MEMS CTRL_REG2 regsister */
gallonm 1:1de1ea2994d9 120 if(HTS221_IO_Write(&tmpreg, HTS221_CTRL_REG2_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 121 {
gallonm 1:1de1ea2994d9 122 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 123 }
gallonm 1:1de1ea2994d9 124
gallonm 1:1de1ea2994d9 125 return HUM_TEMP_OK;
gallonm 1:1de1ea2994d9 126 }
gallonm 1:1de1ea2994d9 127
gallonm 1:1de1ea2994d9 128
gallonm 1:1de1ea2994d9 129 /**
gallonm 1:1de1ea2994d9 130 * @brief Read HTS221 output register, and calculate the humidity
gallonm 1:1de1ea2994d9 131 * @param pfData the pointer to data output
gallonm 1:1de1ea2994d9 132 * @retval HUM_TEMP_OK in case of success, an error code otherwise
gallonm 1:1de1ea2994d9 133 */
gallonm 1:1de1ea2994d9 134 HUM_TEMP_StatusTypeDef HTS221::HTS221_GetHumidity(float* pfData)
gallonm 1:1de1ea2994d9 135 {
gallonm 1:1de1ea2994d9 136 int16_t H_T_out, humidity_t;
gallonm 1:1de1ea2994d9 137 uint8_t tempReg[2] = {0, 0};
gallonm 1:1de1ea2994d9 138 uint8_t tmp = 0x00;
gallonm 1:1de1ea2994d9 139 float H_rh;
gallonm 1:1de1ea2994d9 140
gallonm 1:1de1ea2994d9 141 if(HTS221_IO_Read(&tmp, HTS221_CTRL_REG1_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 142 {
gallonm 1:1de1ea2994d9 143 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 144 }
gallonm 1:1de1ea2994d9 145
gallonm 1:1de1ea2994d9 146 /* Output Data Rate selection */
gallonm 1:1de1ea2994d9 147 tmp &= (HTS221_ODR_MASK);
gallonm 1:1de1ea2994d9 148
gallonm 1:1de1ea2994d9 149 if(tmp == 0x00)
gallonm 1:1de1ea2994d9 150 {
gallonm 1:1de1ea2994d9 151 if(HTS221_IO_Read(&tmp, HTS221_CTRL_REG2_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 152 {
gallonm 1:1de1ea2994d9 153 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 154 }
gallonm 1:1de1ea2994d9 155
gallonm 1:1de1ea2994d9 156 /* Serial Interface Mode selection */
gallonm 1:1de1ea2994d9 157 tmp &= ~(HTS221_ONE_SHOT_MASK);
gallonm 1:1de1ea2994d9 158 tmp |= HTS221_ONE_SHOT_START;
gallonm 1:1de1ea2994d9 159
gallonm 1:1de1ea2994d9 160 if(HTS221_IO_Write(&tmp, HTS221_CTRL_REG2_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 161 {
gallonm 1:1de1ea2994d9 162 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 163 }
gallonm 1:1de1ea2994d9 164
gallonm 1:1de1ea2994d9 165 do
gallonm 1:1de1ea2994d9 166 {
gallonm 1:1de1ea2994d9 167
gallonm 1:1de1ea2994d9 168 if(HTS221_IO_Read(&tmp, HTS221_STATUS_REG_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 169 {
gallonm 1:1de1ea2994d9 170 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 171 }
gallonm 1:1de1ea2994d9 172
gallonm 1:1de1ea2994d9 173 }
gallonm 1:1de1ea2994d9 174 while(!(tmp & 0x02));
gallonm 1:1de1ea2994d9 175 }
gallonm 1:1de1ea2994d9 176
gallonm 1:1de1ea2994d9 177
gallonm 1:1de1ea2994d9 178 if(HTS221_IO_Read(&tempReg[0], (HTS221_HUMIDITY_OUT_L_ADDR | HTS221_I2C_MULTIPLEBYTE_CMD),
gallonm 1:1de1ea2994d9 179 2) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 180 {
gallonm 1:1de1ea2994d9 181 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 182 }
gallonm 1:1de1ea2994d9 183
gallonm 1:1de1ea2994d9 184 H_T_out = ((((int16_t)tempReg[1]) << 8) + (int16_t)tempReg[0]);
gallonm 1:1de1ea2994d9 185
gallonm 1:1de1ea2994d9 186 H_rh = ( float )(((( H_T_out - H0_T0_out ) * ( H1_rh - H0_rh )) / ( H1_T0_out - H0_T0_out )) + H0_rh );
gallonm 1:1de1ea2994d9 187
gallonm 1:1de1ea2994d9 188 // Truncate to specific number of decimal digits
gallonm 1:1de1ea2994d9 189 humidity_t = (uint16_t)(H_rh * pow(10.0f, HUM_DECIMAL_DIGITS));
gallonm 1:1de1ea2994d9 190 *pfData = ((float)humidity_t) / pow(10.0f, HUM_DECIMAL_DIGITS);
gallonm 1:1de1ea2994d9 191
gallonm 1:1de1ea2994d9 192 // Prevent data going below 0% and above 100% due to linear interpolation
gallonm 1:1de1ea2994d9 193 if ( *pfData < 0.0f ) *pfData = 0.0f;
gallonm 1:1de1ea2994d9 194 if ( *pfData > 100.0f ) *pfData = 100.0f;
gallonm 1:1de1ea2994d9 195
gallonm 1:1de1ea2994d9 196 return HUM_TEMP_OK;
gallonm 1:1de1ea2994d9 197 }
gallonm 1:1de1ea2994d9 198
gallonm 1:1de1ea2994d9 199 /**
gallonm 1:1de1ea2994d9 200 * @brief Read HTS221 output register, and calculate the temperature
gallonm 1:1de1ea2994d9 201 * @param pfData the pointer to data output
gallonm 1:1de1ea2994d9 202 * @retval HUM_TEMP_OK in case of success, an error code otherwise
gallonm 1:1de1ea2994d9 203 */
gallonm 1:1de1ea2994d9 204 HUM_TEMP_StatusTypeDef HTS221::HTS221_GetTemperature(float* pfData)
gallonm 1:1de1ea2994d9 205 {
gallonm 1:1de1ea2994d9 206 int16_t T_out, temperature_t;
gallonm 1:1de1ea2994d9 207 uint8_t tempReg[2] = {0, 0};
gallonm 1:1de1ea2994d9 208 uint8_t tmp = 0x00;
gallonm 1:1de1ea2994d9 209 float T_degC;
gallonm 1:1de1ea2994d9 210
gallonm 1:1de1ea2994d9 211 if(HTS221_IO_Read(&tmp, HTS221_CTRL_REG1_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 212 {
gallonm 1:1de1ea2994d9 213 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 214 }
gallonm 1:1de1ea2994d9 215
gallonm 1:1de1ea2994d9 216 /* Output Data Rate selection */
gallonm 1:1de1ea2994d9 217 tmp &= (HTS221_ODR_MASK);
gallonm 1:1de1ea2994d9 218
gallonm 1:1de1ea2994d9 219 if(tmp == 0x00)
gallonm 1:1de1ea2994d9 220 {
gallonm 1:1de1ea2994d9 221 if(HTS221_IO_Read(&tmp, HTS221_CTRL_REG2_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 222 {
gallonm 1:1de1ea2994d9 223 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 224 }
gallonm 1:1de1ea2994d9 225
gallonm 1:1de1ea2994d9 226 /* Serial Interface Mode selection */
gallonm 1:1de1ea2994d9 227 tmp &= ~(HTS221_ONE_SHOT_MASK);
gallonm 1:1de1ea2994d9 228 tmp |= HTS221_ONE_SHOT_START;
gallonm 1:1de1ea2994d9 229
gallonm 1:1de1ea2994d9 230 if(HTS221_IO_Write(&tmp, HTS221_CTRL_REG2_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 231 {
gallonm 1:1de1ea2994d9 232 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 233 }
gallonm 1:1de1ea2994d9 234
gallonm 1:1de1ea2994d9 235 do
gallonm 1:1de1ea2994d9 236 {
gallonm 1:1de1ea2994d9 237
gallonm 1:1de1ea2994d9 238 if(HTS221_IO_Read(&tmp, HTS221_STATUS_REG_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 239 {
gallonm 1:1de1ea2994d9 240 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 241 }
gallonm 1:1de1ea2994d9 242
gallonm 1:1de1ea2994d9 243 }
gallonm 1:1de1ea2994d9 244 while(!(tmp & 0x01));
gallonm 1:1de1ea2994d9 245 }
gallonm 1:1de1ea2994d9 246
gallonm 1:1de1ea2994d9 247 if(HTS221_IO_Read(&tempReg[0], (HTS221_TEMP_OUT_L_ADDR | HTS221_I2C_MULTIPLEBYTE_CMD),
gallonm 1:1de1ea2994d9 248 2) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 249 {
gallonm 1:1de1ea2994d9 250 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 251 }
gallonm 1:1de1ea2994d9 252
gallonm 1:1de1ea2994d9 253 T_out = ((((int16_t)tempReg[1]) << 8) + (int16_t)tempReg[0]);
gallonm 1:1de1ea2994d9 254
gallonm 1:1de1ea2994d9 255 T_degC = ((float)(T_out - T0_out)) / (T1_out - T0_out) * (T1_degC - T0_degC) + T0_degC;
gallonm 1:1de1ea2994d9 256
gallonm 1:1de1ea2994d9 257 temperature_t = (int16_t)(T_degC * pow(10.0f, TEMP_DECIMAL_DIGITS));
gallonm 1:1de1ea2994d9 258
gallonm 1:1de1ea2994d9 259 *pfData = ((float)temperature_t) / pow(10.0f, TEMP_DECIMAL_DIGITS);
gallonm 1:1de1ea2994d9 260
gallonm 1:1de1ea2994d9 261 return HUM_TEMP_OK;
gallonm 1:1de1ea2994d9 262 }
gallonm 1:1de1ea2994d9 263
gallonm 1:1de1ea2994d9 264
gallonm 1:1de1ea2994d9 265 /**
gallonm 1:1de1ea2994d9 266 * @brief Exit the shutdown mode for HTS221
gallonm 1:1de1ea2994d9 267 * @retval HUM_TEMP_OK in case of success, an error code otherwise
gallonm 1:1de1ea2994d9 268 */
gallonm 1:1de1ea2994d9 269 HUM_TEMP_StatusTypeDef HTS221::HTS221_Power_On(void)
gallonm 1:1de1ea2994d9 270 {
gallonm 1:1de1ea2994d9 271 uint8_t tmpReg;
gallonm 1:1de1ea2994d9 272
gallonm 1:1de1ea2994d9 273 /* Read the register content */
gallonm 1:1de1ea2994d9 274 if(HTS221_IO_Read(&tmpReg, HTS221_CTRL_REG1_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 275 {
gallonm 1:1de1ea2994d9 276 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 277 }
gallonm 1:1de1ea2994d9 278
gallonm 1:1de1ea2994d9 279 /* Set the power down bit */
gallonm 1:1de1ea2994d9 280 tmpReg |= HTS221_MODE_ACTIVE;
gallonm 1:1de1ea2994d9 281
gallonm 1:1de1ea2994d9 282 /* Write register */
gallonm 1:1de1ea2994d9 283 if(HTS221_IO_Write(&tmpReg, HTS221_CTRL_REG1_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 284 {
gallonm 1:1de1ea2994d9 285 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 286 }
gallonm 1:1de1ea2994d9 287
gallonm 1:1de1ea2994d9 288 return HUM_TEMP_OK;
gallonm 1:1de1ea2994d9 289 }
gallonm 1:1de1ea2994d9 290
gallonm 1:1de1ea2994d9 291 /**
gallonm 1:1de1ea2994d9 292 * @brief Enter the shutdown mode for HTS221
gallonm 1:1de1ea2994d9 293 * @retval HUM_TEMP_OK in case of success, an error code otherwise
gallonm 1:1de1ea2994d9 294 */
gallonm 1:1de1ea2994d9 295 HUM_TEMP_StatusTypeDef HTS221::HTS221_Power_OFF(void)
gallonm 1:1de1ea2994d9 296 {
gallonm 1:1de1ea2994d9 297 uint8_t tmpReg;
gallonm 1:1de1ea2994d9 298
gallonm 1:1de1ea2994d9 299 /* Read the register content */
gallonm 1:1de1ea2994d9 300 if(HTS221_IO_Read(&tmpReg, HTS221_CTRL_REG1_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 301 {
gallonm 1:1de1ea2994d9 302 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 303 }
gallonm 1:1de1ea2994d9 304
gallonm 1:1de1ea2994d9 305 /* Reset the power down bit */
gallonm 1:1de1ea2994d9 306 tmpReg &= ~(HTS221_MODE_ACTIVE);
gallonm 1:1de1ea2994d9 307
gallonm 1:1de1ea2994d9 308 /* Write register */
gallonm 1:1de1ea2994d9 309 if(HTS221_IO_Write(&tmpReg, HTS221_CTRL_REG1_ADDR, 1) != HUM_TEMP_OK)
gallonm 1:1de1ea2994d9 310 {
gallonm 1:1de1ea2994d9 311 return HUM_TEMP_ERROR;
gallonm 1:1de1ea2994d9 312 }
gallonm 1:1de1ea2994d9 313
gallonm 1:1de1ea2994d9 314 return HUM_TEMP_OK;
gallonm 1:1de1ea2994d9 315 }
gallonm 1:1de1ea2994d9 316
gallonm 1:1de1ea2994d9 317 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/