| 246 | |
| 247 | |
| 248 | bool SHT31::readData(bool fast) |
| 249 | { |
| 250 | uint8_t buffer[6]; |
| 251 | if (readBytes(6, (uint8_t*) &buffer[0]) == false) |
| 252 | { |
| 253 | return false; |
| 254 | } |
| 255 | |
| 256 | if (!fast) |
| 257 | { |
| 258 | if (buffer[2] != crc8(buffer, 2)) |
| 259 | { |
| 260 | _error = SHT31_ERR_CRC_TEMP; |
| 261 | return false; |
| 262 | } |
| 263 | if (buffer[5] != crc8(buffer + 3, 2)) |
| 264 | { |
| 265 | _error = SHT31_ERR_CRC_HUM; |
| 266 | return false; |
| 267 | } |
| 268 | } |
| 269 | |
| 270 | _rawTemperature = (buffer[0] << 8) + buffer[1]; |
| 271 | _rawHumidity = (buffer[3] << 8) + buffer[4]; |
| 272 | |
| 273 | _lastRead = millis(); |
| 274 | |
| 275 | return true; |
| 276 | } |
| 277 | |
| 278 | |
| 279 | int SHT31::getError() |