温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

树莓3上怎么用DHT11读取温湿度

发布时间:2021-12-29 17:18:19 来源:亿速云 阅读:132 作者:小新 栏目:互联网科技

这篇文章主要为大家展示了“树莓3上怎么用DHT11读取温湿度”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“树莓3上怎么用DHT11读取温湿度”这篇文章吧。

本示例你需要准备以下的材料:

  • DHT 11/22

  • RaspberryPI

  • 4.7 K电阻

树莓3上怎么用DHT11读取温湿度

具体连接方式如下图所示:

树莓3上怎么用DHT11读取温湿度

连接好线路之后进入树莓的命令行安装驱动 DHT11的依赖包 Adafruit_DHT :

$ pip install adafruit-dht

我们使用这个包其实也只是使用其中的一个方法

humidity, temperature = Adafruit_DHT.read_retry( Adafruit_DHT.DHT11, pin )

read_retry方法第一个参数用于指定当前传感器的型号一般为 DHT11DHT22 ,第二个参数则是连接到树莓派的接口号。(GPIO)此方法返回是的一个(湿度,温度)结构的元组(tuple)类型对象。

完整的代码如下所示:

import time
import Adafruit_DHT

## Assuming the DHT11 sensor is connected to GPIO pin number 4
pin = 4 

def run():
  while True:
    humidity, temperature = Adafruit_DHT.read_retry( Adafruit_DHT.DHT11, pin )
    if humidity is not None and temperature is not None:
        print "Temp={0:f}*C  Humidity={1:f}%".format(temperature, humidity)
    else:
        print "Failed to get reading. Try again!"
    #Sleep some time
    time.sleep(10)

run()

运行本示例你需要使用sudo否则会运行失败。

$ sudo python dht_test,.py

用Python来做这么低层的操作虽然有点别扭但习惯就好了,需要注意的是Python的逐行解析的,程序执行完就会自动退出,所以我在这个范例里面才会使用 while True 这个“死循环” 来模拟下位机的main函数以实现“主循环”的效果。

这个程序就会每10秒中自动读取一次DHT上的温湿度数据,并打印出来的。

以上是“树莓3上怎么用DHT11读取温湿度”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI