回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页
best-icon

【科学探究】DHT20 IIC温度传感器的测试与应用 简单

头像 gada888 2022.04.19 1845 0

有幸能得到DFRobot的DHT20和串口数据模块,非常开心。这个测试和应用帖就从DHT20先开始。DHT20温湿度传感器模块因为是I2C接口,因此调试和接线都非常方便。那么这一次就有别与用Arduino环境来调试这个模块,而是选用Mind+的python环境来使用这个模块。

 

 

project-image

先简单介绍下上面的代码。首先打开mind+,然后按照pinpong库,在pinpong库导入DHT20函数包。然后写出DHT20的接收数据的功能。最后在终端可以看到接收到的数据。

project-image

接下来就是应用部分了。只要终端看到数据是不够的。实际应用场合需要能在现场直接看到数据,这时候一个LCD模块就需要部署上了。这个例子就是把LCD 1602-I2C的显示屏给引入进来。

project-image
project-image
代码
import time
from pinpong.board import Board,Pin
from pinpong.libs.dfrobot_dht20 import DHT20

#Board("uno").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别
Board("uno","COM6").begin()  #windows下指定端口初始化
#Board("uno","/dev/ttyACM0").begin()   #linux下指定端口初始化
#Board("uno","/dev/cu.usbmodem14101").begin()   #mac下指定端口初始化

dht20 = DHT20()

while True:
    print("-------------------------")
    print("温度: {} ℃".format(dht20.temp_c())) 
    print("湿度: {} %".format(dht20.humidity()))
    time.sleep(0.5)

这是DHT20的测试代码

代码
import time
from pinpong.board import Board,Pin
from pinpong.libs.dfrobot_dht20 import DHT20
from pinpong.libs.lcd1602 import LCD1602_I2C

#Board("uno").begin()#初始化,选择板型和端口号,不输入端口号则进行自动识别
Board("uno","COM6").begin()  #windows下指定端口初始化
#Board("uno","/dev/ttyACM0").begin()   #linux下指定端口初始化
#Board("uno","/dev/cu.usbmodem14101").begin()   #mac下指定端口初始化
lcd = LCD1602_I2C(i2c_addr=0x27)
dht20 = DHT20()

print("I2C LCD1602 TEST...")
lcd.backlight(True)  #打开背光
lcd.clear()   #清屏



while True:
    print("-------------------------")
    print("温度: {} ℃".format(dht20.temp_c())) 
    print("湿度: {} %".format(dht20.humidity()))
    time.sleep(0.5)
    lcd.set_cursor(0,0)  #设置光标位置
    lcd.print("{} C".format(dht20.temp_c()))
    lcd.set_cursor(1,1)  #设置光标位置
    lcd.print("{} %".format(dht20.humidity()))

这是DHT20应用案例的代码

评论

user-avatar