这是python代码 百度找的
# -*- coding: utf-8
-*-"""Created on Sun Jan 26 16:01:59 2014 @author: pi"""
import RPi.GPIO as gpioimport timegpio.setwarnings(False)gpio.setmode(gpio.BOARD)time.
sleep(1)data=[]
def delay(i): #20*i usdelay
a=0
for j in range(i):
a+1
j=0
#start work
gpio.setup(7,gpio.OUT)
#gpio.output(7,gpio.HIGH)
#delay(10)
gpio.output(7,gpio.LOW)
time.sleep(0.02)
gpio.output(7,gpio.HIGH)
i=1
i=1
#wait to response
gpio.setup(7,gpio.IN)
while gpio.input(7)==1:
continue
while gpio.input(7)==0:
continue
while gpio.input(7)==1:
continue
#get data
while j<40:
k=0
while gpio.input(7)==0:
continue
while gpio.input(7)==1:
k+=1
if k>100:break
if k<3:
data.append(0)
else:
data.append(1)
j+=1
print "Sensor is working"
#get temperature
humidity_bit=data[0:8]
humidity_point_bit=data[8:16]
temperature_bit=data[16:24]
temperature_point_bit=data[24:32]
check_bit=data[32:40]
humidity=0
humidity_point=0
temperature=0
temperature_point=0
check=0
for i in range(8):
humidity+=humidity_bit[i]*2**(7-i)
humidity_point+=humidity_point_bit[i]*2**(7-i)
temperature+=temperature_bit[i]*2**(7-i)
temperature_point+=temperature_point_bit[i]*2**(7-i)
check+=check_bit[i]*2**(7-i)
tmp=humidity+humidity_point+temperature+temperature_point
if check==tmp:
print "temperature is ", temperature,"wet is ",humidity,"%"
else:
print "something is worong the humidity,humidity_point,temperature,temperature_point,check is",humidity,humidity_point,temperature,temperature_point,check
最后一张图片 是运行结果




# -*- coding: utf-8
-*-"""Created on Sun Jan 26 16:01:59 2014 @author: pi"""
import RPi.GPIO as gpioimport timegpio.setwarnings(False)gpio.setmode(gpio.BOARD)time.
sleep(1)data=[]
def delay(i): #20*i usdelay
a=0
for j in range(i):
a+1
j=0
#start work
gpio.setup(7,gpio.OUT)
#gpio.output(7,gpio.HIGH)
#delay(10)
gpio.output(7,gpio.LOW)
time.sleep(0.02)
gpio.output(7,gpio.HIGH)
i=1
i=1
#wait to response
gpio.setup(7,gpio.IN)
while gpio.input(7)==1:
continue
while gpio.input(7)==0:
continue
while gpio.input(7)==1:
continue
#get data
while j<40:
k=0
while gpio.input(7)==0:
continue
while gpio.input(7)==1:
k+=1
if k>100:break
if k<3:
data.append(0)
else:
data.append(1)
j+=1
print "Sensor is working"
#get temperature
humidity_bit=data[0:8]
humidity_point_bit=data[8:16]
temperature_bit=data[16:24]
temperature_point_bit=data[24:32]
check_bit=data[32:40]
humidity=0
humidity_point=0
temperature=0
temperature_point=0
check=0
for i in range(8):
humidity+=humidity_bit[i]*2**(7-i)
humidity_point+=humidity_point_bit[i]*2**(7-i)
temperature+=temperature_bit[i]*2**(7-i)
temperature_point+=temperature_point_bit[i]*2**(7-i)
check+=check_bit[i]*2**(7-i)
tmp=humidity+humidity_point+temperature+temperature_point
if check==tmp:
print "temperature is ", temperature,"wet is ",humidity,"%"
else:
print "something is worong the humidity,humidity_point,temperature,temperature_point,check is",humidity,humidity_point,temperature,temperature_point,check
最后一张图片 是运行结果






