Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
Nodemcu Firmware
Commits
1bc81f4c
Commit
1bc81f4c
authored
Apr 03, 2015
by
Martin Han
Browse files
Add support to DHT11 and add some comments.
parent
d8f2c2ba
Changes
1
Hide whitespace changes
Inline
Side-by-side
lua_modules/dht22/README.md
View file @
1bc81f4c
# DHT
22
module
# DHT
xx
module
This module is compatible with DHT22 and DHT21.
Supports nodemcu with or without floating point.
This module is compatible with DHT11, DHT21 and DHT22.
No need to use a resistor to connect the pin data of DHT22 to ESP8266.
## Example
##Integer Verison[When using DHT11, Float version is useless...]
### Example
```
lua
PIN
=
4
-- data pin, GPIO2
dht22
=
require
(
"dht22"
)
dht22
.
read
(
PIN
)
t
=
dht22
.
getTemperature
()
h
=
dht22
.
getHumidity
()
DHT
=
require
(
"dht_lib"
)
--dht.read11(PIN)
DHT
.
read22
(
PIN
)
t
=
DHT
.
getTemperature
()
h
=
DHT
.
getHumidity
()
if
h
==
nil
then
print
(
"Error reading from DHT22"
)
print
(
"Error reading from DHT
11/
22"
)
else
-- temperature in degrees Celsius and Farenheit
-- floating point and integer version:
print
(
"Temperature: "
..
((
t
-
(
t
%
10
))
/
10
)
..
"."
..
(
t
%
10
)
..
" deg C"
)
-- only integer version:
print
(
"Temperature: "
..
(
9
*
t
/
50
+
32
)
..
"."
..
(
9
*
t
/
5
%
10
)
..
" deg F"
)
-- only float point version:
print
(
"Temperature: "
..
(
9
*
t
/
50
+
32
)
..
" deg F"
)
-- humidity
-- floating point and integer version
print
(
"Humidity: "
..
((
h
-
(
h
%
10
))
/
10
)
..
"."
..
(
h
%
10
)
..
"%"
)
end
-- release module
dht22
=
nil
package.loaded
[
"dht
22
"
]
=
nil
DHT
=
nil
package.loaded
[
"dht
_lib
"
]
=
nil
```
## Functions
### read
read(pin)
Read humidity and temperature from DHT22.
##Float Verison
###Example
```
lua
PIN
=
4
-- data pin, GPIO2
DHT
=
require
(
"dht_lib"
)
--dht.read11(PIN)
DHT
.
read22
(
PIN
)
t
=
DHT
.
getTemperature
()
h
=
DHT
.
getHumidity
()
if
h
==
nil
then
print
(
"Error reading from DHT11/22"
)
else
-- temperature in degrees Celsius and Farenheit
-- floating point and integer version:
print
(
"Temperature: "
..
t
..
" deg C"
)
print
(
"Temperature: "
..
(
9
*
t
/
50
+
32
)
..
" deg F"
)
-- humidity
print
(
"Humidity: "
..
h
..
"%"
)
end
-- release module
DHT
=
nil
package.loaded
[
"dht_lib"
]
=
nil
```
## Functions
### read11
read11(pin)
Read humidity and temperature from DHT11.
###read22
read22(pin)
Read humidity and temperature from DHT22/21.
**Parameters:**
*
pin - ESP8266 pin connect to data pin
in DHT22
*
pin - ESP8266 pin connect to data pin
### getHumidity
getHumidity()
...
...
@@ -54,5 +86,6 @@ getTemperature()
Returns the temperature of the last reading.
**Returns:**
*
last temperature reading in 0.1ºC
*
last temperature reading in(dht22) 0.1ºC (dht11)1ºC
*
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment