Simple library for the DHT11 temperature and humidity sensor. Forked from an existing Mbed DHT11 project.
Diff: DHT11.h
- Revision:
- 13:11d0770eb603
- Parent:
- 12:af1eadec17e5
--- a/DHT11.h Mon May 31 07:02:00 2021 +0000 +++ b/DHT11.h Wed Sep 15 14:47:06 2021 +0000 @@ -29,14 +29,7 @@ * * main() * { - * int s; - * s = d.readData(); - * if (s != DHT11::OK) { - * printf("Error!\r\n"); - * } - * else { - * printf("T:%d, H:%d\r\n", d.readTemperature(), d.readHumidity()); - * } + * printf("T:%d, H:%d\r\n", d.readTemperature(), d.readHumidity()); * } * @endcode */ @@ -50,7 +43,8 @@ DHT11(PinName pin); ~DHT11(); - /** Reading the data from the DHT11 + /** Reading the data from the DHT11. Calling this is not required, but + * may be useful for debug. * @return Error code * 0: OK. * 1: Reading the data too often. @@ -62,15 +56,17 @@ */ int readData(void); - /** Reading the humidity from the data - * @return Humidity in %, - * regardless of the error from readData() + /** Returns the current humidity from the DHT11. If the existing data record + * is older than 2000ms, initiates a read from the device. Note that errors + * may result in infinite attempts to read. + * @return Humidity in % */ int readHumidity(void); - /** Reading the temperature from the data - * @return Temperature in Celcius, - * regardless of the error from readData() + /** Returns the current temperature from the DHT11. If the existing data record + * is older than 2000ms, initiates a read from the device. Note that errors + * may result in infinite attempts to read. + * @return Temperature in Celcius */ int readTemperature(void); @@ -91,7 +87,6 @@ uint32_t t_pulse_us; const static int t_tol_start; const static int t_tol_pulse; - bool first_time; uint64_t data; uint32_t chksum; uint32_t cnt; @@ -100,6 +95,7 @@ void init(void); void pos_edge(void); void neg_edge(void); + void readNewData(void); }; #endif \ No newline at end of file