利用DHT22模块的温度数据控制GPIO的高低电平实现温度报警

前言:由于我没有蜂鸣器使用了led灯代替

过程中看不懂的可以参考前俩篇

树莓派-使用DHT22模块测量湿度 -

树莓派控制GPIO引脚输出输入高低电平 -


利用DHT22模块的温度数据控制GPIO的高低电平实现温度报警_第1张图片
成品

把DHT22模块和树莓派连接好 LED灯也连接好

我的DHT OUT连接的是GPIO4

LED正极连接的GPIO2

代码区:


##################

#!/usr/bin/env python

#_*_ coding:utf-8 _*_

#coding=utf-8

#解决python不能使用中文注释的问题

##################

#########################################################################################

#利用DHT模块的温度数据配合GPIO控制高低电平可做温度报警器

#作者:N

#时间:2019/7/23

#加载树莓派GPIO的库

import RPi.GPIO as GPIO

#时间库

import time

#DHT模块系列支持库(需提前下载)

import Adafruit_DHT

#设置sensor(传感器)型号

sensor=Adafruit_DHT.DHT22

#传感器连接的GPIO号

gpio=4

#控制的温度范围

S=27

humidity, temperature = Adafruit_DHT.read_retry(sensor, gpio)

#如果温湿度的值都不是0的话

if humidity is not None and temperature is not None:

#打印出温度和湿度temperature(温度)humidity(湿度)

#round 设置截取浮点数位置round(数字,变量,截取位数)

    print round(temperature,2),round(humidity,2)

else:

  print('erro')



if temperature > S:

#设置模式为BCM模式

    GPIO.setmode(GPIO.BCM)

#设置GPIO2为输出模式

    GPIO.setup(2,GPIO.OUT)

#设置GPIO2为高电平

    GPIO.output(2,GPIO.HIGH)

else:

    GPIO.setmode(GPIO.BCM)

    GPIO.setup(2,GPIO.OUT)

#设置GPIO2为低电平

    GPIO.output(2,GPIO.LOW)

你可能感兴趣的:(利用DHT22模块的温度数据控制GPIO的高低电平实现温度报警)