mirror of
https://github.com/adafruit/DHT-sensor-library.git
synced 2023-10-23 22:20:38 +03:00
Compare commits
8 Commits
Author | SHA1 | Date | |
---|---|---|---|
edcd0e06e6 | |||
15020aa891 | |||
572347f137 | |||
e9daf69083 | |||
56058fecc5 | |||
d71288af17 | |||
ce3190f65c | |||
5bc0a5c796 |
16
DHT.cpp
16
DHT.cpp
@ -11,8 +11,10 @@ written by Adafruit Industries
|
||||
DHT::DHT(uint8_t pin, uint8_t type, uint8_t count) {
|
||||
_pin = pin;
|
||||
_type = type;
|
||||
_bit = digitalPinToBitMask(pin);
|
||||
_port = digitalPinToPort(pin);
|
||||
#ifdef __AVR
|
||||
_bit = digitalPinToBitMask(pin);
|
||||
_port = digitalPinToPort(pin);
|
||||
#endif
|
||||
_maxcycles = microsecondsToClockCycles(1000); // 1 millisecond timeout for
|
||||
// reading pulses from DHT sensor.
|
||||
// Note that count is now ignored as the DHT reading algorithm adjusts itself
|
||||
@ -46,7 +48,7 @@ float DHT::readTemperature(bool S, bool force) {
|
||||
f = data[2] & 0x7F;
|
||||
f *= 256;
|
||||
f += data[3];
|
||||
f /= 10;
|
||||
f *= 0.1;
|
||||
if (data[2] & 0x80) {
|
||||
f *= -1;
|
||||
}
|
||||
@ -60,11 +62,11 @@ float DHT::readTemperature(bool S, bool force) {
|
||||
}
|
||||
|
||||
float DHT::convertCtoF(float c) {
|
||||
return c * 9 / 5 + 32;
|
||||
return c * 1.8 + 32;
|
||||
}
|
||||
|
||||
float DHT::convertFtoC(float f) {
|
||||
return (f - 32) * 5 / 9;
|
||||
return (f - 32) * 0.55555;
|
||||
}
|
||||
|
||||
float DHT::readHumidity(bool force) {
|
||||
@ -79,7 +81,7 @@ float DHT::readHumidity(bool force) {
|
||||
f = data[0];
|
||||
f *= 256;
|
||||
f += data[1];
|
||||
f /= 10;
|
||||
f *= 0.1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -95,7 +97,7 @@ float DHT::computeHeatIndex(float temperature, float percentHumidity, bool isFah
|
||||
if (!isFahrenheit)
|
||||
temperature = convertCtoF(temperature);
|
||||
|
||||
hi = 0.5 * (temperature + 61.0 + ((temperature - 68.0) * 1.2) + (percentHumidity * 0.094));
|
||||
hi = 0.5 * (temperature + 61.0 + ((temperature - 68.0) * 1.2) + (percentHumidity * 0.094));
|
||||
|
||||
if (hi > 79) {
|
||||
hi = -42.379 +
|
||||
|
7
DHT.h
7
DHT.h
@ -48,7 +48,12 @@ class DHT {
|
||||
|
||||
private:
|
||||
uint8_t data[5];
|
||||
uint8_t _pin, _type, _bit, _port;
|
||||
uint8_t _pin, _type;
|
||||
#ifdef __AVR
|
||||
// Use direct GPIO access on an 8-bit AVR so keep track of the port and bitmask
|
||||
// for the digital pin connected to the DHT. Other platforms will use digitalRead.
|
||||
uint8_t _bit, _port;
|
||||
#endif
|
||||
uint32_t _lastreadtime, _maxcycles;
|
||||
bool _lastresult;
|
||||
|
||||
|
@ -1,3 +1,5 @@
|
||||
This is an Arduino library for the DHT series of low cost temperature/humidity sensors.
|
||||
|
||||
To download. click the DOWNLOADS button in the top right corner, rename the uncompressed folder DHT. Check that the DHT folder contains DHT.cpp and DHT.h. Place the DHT library folder your <arduinosketchfolder>/libraries/ folder. You may need to create the libraries subfolder if its your first library. Restart the IDE.
|
||||
Tutorial: https://learn.adafruit.com/dht
|
||||
|
||||
To download. click the DOWNLOADS button in the top right corner, rename the uncompressed folder DHT. Check that the DHT folder contains DHT.cpp and DHT.h. Place the DHT library folder your <arduinosketchfolder>/libraries/ folder. You may need to create the libraries subfolder if its your first library. Restart the IDE.
|
@ -3,11 +3,11 @@
|
||||
|
||||
#include "DHT.h"
|
||||
|
||||
#define DHTPIN 2 // what pin we're connected to
|
||||
#define DHTPIN 2 // what digital pin we're connected to
|
||||
|
||||
// Uncomment whatever type you're using!
|
||||
//#define DHTTYPE DHT11 // DHT 11
|
||||
#define DHTTYPE DHT22 // DHT 22 (AM2302)
|
||||
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
|
||||
//#define DHTTYPE DHT21 // DHT 21 (AM2301)
|
||||
|
||||
// Connect pin 1 (on the left) of the sensor to +5V
|
||||
|
@ -1,5 +1,5 @@
|
||||
name=DHT sensor library
|
||||
version=1.2.1
|
||||
version=1.2.3
|
||||
author=Adafruit
|
||||
maintainer=Adafruit <info@adafruit.com>
|
||||
sentence=Arduino library for DHT11, DHT22, etc Temp & Humidity Sensors
|
||||
|
Reference in New Issue
Block a user