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

2022-04-192029
精华项目
AI 快速预览详细 收起
本文介绍了如何使用Mind+的Python环境调试DHT20温湿度传感器模块,并结合LCD1602-I2C显示屏实现实时数据展示。首先介绍了在Mind+中导入pinpong库和DHT20函数包的方法,然后展示了如何编写代码接收温湿度数据并在终端显示。进一步的应用部分则引入了LCD1602-I2C显示屏,将数据直接显示在现场。整个过程简单易懂,适合STEM教育场景,帮助学生理解传感器原理和编程实践。

有幸能得到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应用案例的代码

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(0)
- 没有更多了 -