40 lines
1.2 KiB
Python
Executable File
40 lines
1.2 KiB
Python
Executable File
# Specify the pin you'll be connecting the data/signal PIN of DHT11 to here:
|
|
PIN = 16
|
|
DPIN = "D" + PIN
|
|
|
|
import time
|
|
from board import PIN # By default I'm using GPIO PIN 16
|
|
import adafruit_dht
|
|
|
|
# Initial the dht device, with data pin connected to:
|
|
dhtDevice = adafruit_dht.DHT11(DPIN)
|
|
|
|
# you can pass DHT22 use_pulseio=False if you wouldn't like to use pulseio.
|
|
# This may be necessary on a Linux single board computer like the Raspberry Pi,
|
|
# but it will not work in CircuitPython.
|
|
# dhtDevice = adafruit_dht.DHT22(board.D18, use_pulseio=False)
|
|
|
|
while True:
|
|
try:
|
|
# Print the values to the serial port
|
|
temperature_c = dhtDevice.temperature # Celsius
|
|
temperature_f = temperature_c * (9 / 5) + 32 # Fahrenheit
|
|
humidity = dhtDevice.humidity
|
|
print(
|
|
"Temp: {:.1f} F / {:.1f} C Humidity: {}% ".format(
|
|
temperature_f, temperature_c, humidity
|
|
)
|
|
)
|
|
|
|
except RuntimeError as error:
|
|
# Errors happen fairly often, DHT's are hard to read, just keep going
|
|
print(error.args[0])
|
|
time.sleep(2.0)
|
|
continue
|
|
except Exception as error:
|
|
dhtDevice.exit()
|
|
raise error
|
|
|
|
time.sleep(2.0)
|
|
|