树莓派自动播报温湿度到QQ空间、微博( 二 )

< 8:data.append(0)else:data.append(1)j += 1return (data)check = 0tmp = 1#因为DHT11常常抽风,温度跳到40多度,这里做一个判断,一直读,直到读对while (check !=tmp):GPIO.setmode(GPIO.BCM)time.sleep(1)GPIO.setup(channel, GPIO.OUT)GPIO.output(channel, GPIO.LOW)time.sleep(0.02)GPIO.output(channel, GPIO.HIGH)GPIO.setup(channel, GPIO.IN)data = http://www.kingceram.com/post/getdata(channel)print (data)tmp = 1check = 0humidity_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 = 0humidity_point = 0temperature = 0temperature_point = 0for 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_pointGPIO.cleanup()#歇一歇time.sleep(1)#播报文字s="【温度自动播报】当前室内温度为:"+str(temperature)+"℃ (来自DHT11传感器) 相对空气湿度:"+str(humidity)+"% ,"+old_text(temperature)+"\n【历史上的今天】\n"+histoday()+"\n(本消息由我家树莓派自动发送)"#注意!这里请更改为你自己的目录file_object1 = open('/home/pi/shuo/t.txt','w')file_object1.write(s)file_object1.close()#登录QQ空间qq = qqlib.QQ(QQnum, QQpass)#发说说qq.feed(s)#执行weibo.py发微博os.system("python weibo/weibo.py "+weiboUm+" "+weiboPass)print(s)
如果懒得看这些代码,直接执行:
git clone https://github.com/HFO4/pi-temperature.gitcd pi-temperature

树莓派自动播报温湿度到QQ空间、微博

文章插图
然后打开shuo.py修改第7行为你的DAT口的GPIO编号,第8-11行为QQ、微博账号密码,第16行、88行改成你自己的路径(要为绝对路径),进入weibo目录,修改weibo.py第92行为你自己的路径 。
然后执行
python3 shuo.py
如果看到下面提示,说明一切正常,再检查说说、微博是不是发出去了
树莓派自动播报温湿度到QQ空间、微博

文章插图
设置定时任务
我想要每天早上7点树莓派自动播报,这需要添加Cron定时任务 。在此之前先执行date命令看看时间对不对,树莓派默认有自动的联网校对时间,但我们还要设置一下时区,执行,输入5 回车
树莓派自动播报温湿度到QQ空间、微博

文章插图
输入9 选择中国回车 输入1 选择北京 回车即可 再执行date看看时间是不是正确了了?
然后设置定时任务 。执行 -e
在最后一行加上
0 7 * * * sh 你自己的目录/do.sh >/dev/null 2>&1
这表示每天7点整执行一次do.sh. 然后执行/etc/init.d/cron 重启cron服务 。
继续来到刚刚的pi-目录,编辑do.sh,将其中的路径改为你自己的
至此,此应用就算是配置完成了 。
坐等粉丝破万成为网红 哈哈哈