diff --git a/examples/idDHT11_Lib_example/idDHT11_Lib_example.ino b/examples/idDHT11_Lib_example/idDHT11_Lib_example.ino index b043514..05006b6 100644 --- a/examples/idDHT11_Lib_example/idDHT11_Lib_example.ino +++ b/examples/idDHT11_Lib_example/idDHT11_Lib_example.ino @@ -47,8 +47,14 @@ void loop() case IDDHTLIB_ERROR_CHECKSUM: Serial.println("Error\n\r\tChecksum error"); break; - case IDDHTLIB_ERROR_TIMEOUT: - Serial.println("Error\n\r\tTime out error"); + case IDDHTLIB_ERROR_ISR_TIMEOUT: + Serial.println("Error\n\r\tISR Time out error"); + break; + case IDDHTLIB_ERROR_RESPONSE_TIMEOUT: + Serial.println("Error\n\r\tResponse time out error"); + break; + case IDDHTLIB_ERROR_DATA_TIMEOUT: + Serial.println("Error\n\r\tData time out error"); break; case IDDHTLIB_ERROR_ACQUIRING: Serial.println("Error\n\r\tAcquiring"); diff --git a/examples/idDHT11_Lib_example_Simple/idDHT11_Lib_example_Simple.ino b/examples/idDHT11_Lib_example_Simple/idDHT11_Lib_example_Simple.ino index b43182a..28c3ef6 100644 --- a/examples/idDHT11_Lib_example_Simple/idDHT11_Lib_example_Simple.ino +++ b/examples/idDHT11_Lib_example_Simple/idDHT11_Lib_example_Simple.ino @@ -47,8 +47,14 @@ void loop() case IDDHTLIB_ERROR_CHECKSUM: Serial.println("Error\n\r\tChecksum error"); break; - case IDDHTLIB_ERROR_TIMEOUT: - Serial.println("Error\n\r\tTime out error"); + case IDDHTLIB_ERROR_ISR_TIMEOUT: + Serial.println("Error\n\r\tISR time out error"); + break; + case IDDHTLIB_ERROR_RESPONSE_TIMEOUT: + Serial.println("Error\n\r\tResponse time out error"); + break; + case IDDHTLIB_ERROR_DATA_TIMEOUT: + Serial.println("Error\n\r\tData time out error"); break; case IDDHTLIB_ERROR_ACQUIRING: Serial.println("Error\n\r\tAcquiring"); diff --git a/idDHT11.cpp b/idDHT11.cpp index b67ed01..c24bee7 100644 --- a/idDHT11.cpp +++ b/idDHT11.cpp @@ -67,7 +67,7 @@ void idDHT11::isrCallback() { int delta = (newUs-us); us = newUs; if (delta>6000) { - status = IDDHTLIB_ERROR_TIMEOUT; + status = IDDHTLIB_ERROR_ISR_TIMEOUT; state = STOPPED; detachInterrupt(intNumber); return; @@ -81,7 +81,7 @@ void idDHT11::isrCallback() { state = DATA; } else { detachInterrupt(intNumber); - status = IDDHTLIB_ERROR_TIMEOUT; + status = IDDHTLIB_ERROR_RESPONSE_TIMEOUT; state = STOPPED; } break; @@ -90,7 +90,7 @@ void idDHT11::isrCallback() { detachInterrupt(intNumber); status = IDDHTLIB_ERROR_DELTA; state = STOPPED; - } else if(6090) //is a one bits[idx] |= (1 << cnt); if (cnt == 0) { // whe have fullfilled the byte, go to next @@ -114,7 +114,7 @@ void idDHT11::isrCallback() { } else cnt--; } else { detachInterrupt(intNumber); - status = IDDHTLIB_ERROR_TIMEOUT; + status = IDDHTLIB_ERROR_DATA_TIMEOUT; state = STOPPED; } break; @@ -176,4 +176,4 @@ double idDHT11::getDewPointSlow() { double T = log(VP/0.61078); // temp var return (241.88 * T) / (17.558-T); } -// EOF \ No newline at end of file +// EOF diff --git a/idDHT11.h b/idDHT11.h index 384cc44..ea39613 100644 --- a/idDHT11.h +++ b/idDHT11.h @@ -21,17 +21,19 @@ #define IDDHT11LIB_VERSION "0.1" // state codes -#define IDDHTLIB_OK 0 +#define IDDHTLIB_OK 0 #define IDDHTLIB_ACQUIRING 1 #define IDDHTLIB_ACQUIRED 2 -#define IDDHTLIB_RESPONSE_OK 3 +#define IDDHTLIB_RESPONSE_OK 3 // error codes #define IDDHTLIB_ERROR_CHECKSUM -1 -#define IDDHTLIB_ERROR_TIMEOUT -2 -#define IDDHTLIB_ERROR_ACQUIRING -3 -#define IDDHTLIB_ERROR_DELTA -4 -#define IDDHTLIB_ERROR_NOTSTARTED -5 +#define IDDHTLIB_ERROR_ISR_TIMEOUT -2 +#define IDDHTLIB_ERROR_RESPONSE_TIMEOUT -3 +#define IDDHTLIB_ERROR_DATA_TIMEOUT -4 +#define IDDHTLIB_ERROR_ACQUIRING -5 +#define IDDHTLIB_ERROR_DELTA -6 +#define IDDHTLIB_ERROR_NOTSTARTED -7 #define IDDHT11_CHECK_STATE if(state == STOPPED) \ return status; \ @@ -71,4 +73,4 @@ private: volatile float hum; volatile float temp; }; -#endif // idDHT11_H__ \ No newline at end of file +#endif // idDHT11_H__