from machine import Pin

from time import sleep

#控制 ESP32的 GPIO腳需從匯入 dht(數位溫濕度) 類別
import dht

sensor = dht.DHT22(Pin(23))#定義sensor(感測)變數為DTH22 Data腳位接在ESP32 D23

#例外處理 ( try、except )
#當 try 區段內的程式發生錯誤時,就會執行 except 裡的內容,如果 try 的程式沒有錯誤,就不會執行 except 的內容

while True:
  try:
    sleep(2)
    sensor.measure()#測量溫溼度感測器的值
    temp = sensor.temperature()#設定變數temp讀取感測器溫度函數(temperature)的值
    hum = sensor.humidity()#設定變數hum讀取感測器溫度函數(temperature)的值
    print('Temperature: %3.1f C' %temp)#印出溫度為幾度
    print('Humidity: %3.1f %%' %hum)#印出濕度為多少百分比
  except OSError as e:
    print('Failed to read sensor.')