I think just being completely flexible about the setup timings just works

I wonder if I put too much trust into the datasheet? I don't know
This commit is contained in:
2023-10-31 21:13:21 +00:00
parent 36041e63d2
commit 6a3e39342e

View File

@@ -76,10 +76,10 @@ dht22_error dht22_read() {
if (elapsed_time == DHT22_TIMEOUT_ERROR) {
portENABLE_INTERRUPTS();
return DHT22_TIMEOUT_ERROR;
} else if (elapsed_time > 40) {
} /*else if (elapsed_time > 50) {
portENABLE_INTERRUPTS();
return DHT22_TIMING_ERROR;
}
}*/
/*
* From datasheet:
@@ -91,19 +91,19 @@ dht22_error dht22_read() {
if (elapsed_time == DHT22_TIMEOUT_ERROR) {
portENABLE_INTERRUPTS();
return DHT22_TIMEOUT_ERROR;
} else if (elapsed_time < 70 || elapsed_time > 90) {
} /*else if (elapsed_time < 50 || elapsed_time > 110) {
portENABLE_INTERRUPTS();
return DHT22_TIMING_ERROR;
}
}*/
elapsed_time = wait_for_signal_to_change_from(1);
if (elapsed_time == DHT22_TIMEOUT_ERROR) {
portENABLE_INTERRUPTS();
return DHT22_TIMEOUT_ERROR;
} else if (elapsed_time < 70 || elapsed_time > 90) {
} /*else if (elapsed_time < 50 || elapsed_time > 110) {
portENABLE_INTERRUPTS();
return DHT22_TIMING_ERROR;
}
}*/
/*
* From datasheet:
@@ -116,7 +116,7 @@ dht22_error dht22_read() {
for (uint8_t i = 0; i < 40; i++) {
elapsed_time = wait_for_signal_to_change_from(0);
if (elapsed_time == DHT22_TIMEOUT_ERROR || elapsed_time < 30 ||
elapsed_time > 70) {
elapsed_time > 80) {
portENABLE_INTERRUPTS();
return DHT22_TIMEOUT_ERROR;
}