感謝網上資料和個人的不放棄,終於方便的解決了香橙派 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)
執行結果
香橙派 OrangePi Zero和dht11引腳的連線
dht11有3腳和4腳的,都差不多
dht11的vdd連線到1口,Gnd連線到6口,中間口子到7口(PA6)