感谢网上资料和个人的不放弃,终于方便的解决了香橙派 OrangePi Zero用python获取dht11温湿度的问题。
网上关于香橙派的资料比起树莓派真是少之又少,现在香橙派zero能干的活暂时也只有这些,负载非常轻,以后想到新的活再让他干。
最近准备入手树莓派,因为在查阅香橙派资料过程中发现树莓派的资料好多,用起来感觉会顺利很多。
我的OrangePi Zero是H2+ CPU和512M内存的配置,本例应该可以在H3的CPU和256M内存的版本上。
此款开发板可以装linux,同时这个档次的CPU和内存也能跑中小型的脚本,再者小黄鱼上一包烟的价格实在是无痛入门linux开发板的好板子。
在pip3 install pyA20中是按照40个?GPIO口配置的
#python3 >>from pyA20.gpio import port >>dir(port)
如果没有如下这些端口的话一般是装错了
pyA20是按照树莓派来设定的,树莓派的GPIO如下
可以先pip3 uninstall pyA20
测试了很多img,目前就这个img成功
Orangepizero_2.0.8_ubuntu_focal_server_linux5.4.65.img
ubuntu 5.4.65的其他镜像还没测试
apt-get update apt-get upgrade apt-get install python3-pip pip3 install setuptools apt-get install python3-pip apt-get install python3-dev pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple OPi.GPIO pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple setuptools
依次执行上述命令,有些ubuntu已安装完毕,可能会报重复
安装定制化的pyA20
如果前面安装了pip的pyA20可以通过pip3 uninstall pyA20卸载
mkdir /ppthony cd /ppthony git clone http://ghproxy.com/https://github.com/abadroot/orangepizero-ths.git
orangepizero-ths/tree/master/config/orangepi_zero_gpio
在本地的这个目录下执行
python3 setup.py install
这里安装好了pyA20的改装版
在/config/DHT11-Python-library-Orange-PI
这个目录里有dht11.py和dht11_example.py,dht11.py作为以后import用,需要加到以后的目录中
from pyA20.gpio import gpio from pyA20.gpio import port #import RPi.GPIO as GPIO import dht11 #把前面目录中dht11.py拷贝过来,如果系统中有pip3 install dht11过,要先卸载,用这个定制化的dht11.py import time import datetime # initialize GPIO #gpio.setwarnings(False) #gpio.setmode(GPIO.BCM) PIN2 = port.PA6 gpio.init() #gpio.cleanup() # read data using pin 14 instance = dht11.DHT11(pin=PIN2) while True: result = instance.read() if result.is_valid(): print("Last valid input: " + str(datetime.datetime.now())) print("Temperature: %d C" % result.temperature) print("Humidity: %d %%" % result.humidity) time.sleep(1)
执行结果
dht11有3脚和4脚的,都差不多
dht11的vdd连接到1口,Gnd连接到6口,中间口子到7口(PA6)