2022年写的香橙派 OrangePi Zero 用python获取dht11温度和湿度
感谢网上资料和个人的不放弃,终于方便的解决了香橙派 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)
2022年写的香橙派 OrangePi Zero 用python获取dht11温度和湿度的更多相关文章
- 【完整篇】orangepi香橙派新手入门之被官方坑
图片特意缩小,看不清请打开另一个窗口查看原图. 第一步:烧录系统,我烧录的是Ubuntu_Desktop[请注意!!!!用户名是错的!!用户名是错的!!用户名是错的!!] 正确的用户名是orangep ...
- [转]让你从零开始学会写爬虫的5个教程(Python)
让你从零开始学会写爬虫的5个教程(Python) 写爬虫总是非常吸引IT学习者,毕竟光听起来就很酷炫极客,我也知道很多人学完基础知识之后,第一个项目开发就是自己写一个爬虫玩玩. 其实懂了之后,写个 ...
- openpyxl -用于读/写Excel 2010 XLSX/XLSM文件的python库
openpyxl -用于读/写Excel 2010 XLSX/XLSM文件的python库¶ https://www.osgeo.cn/openpyxl/index.html
- orangepi香橙派安装VNC Viewer远程桌面
用ssh连接实在没有图形界面操作的好,虽然命令会快,但是很多命令都记不住. 第一步: sudo apt-get install xfce4 第二步: sudo apt-get install vnc4 ...
- 让你从零开始学会写爬虫的5个教程(Python)
写爬虫总是非常吸引IT学习者,毕竟光听起来就很酷炫极客,我也知道很多人学完基础知识之后,第一个项目开发就是自己写一个爬虫玩玩. 其实懂了之后,写个爬虫脚本是很简单的,但是对于新手来说却并不是那么容易. ...
- java中的文件读取和文件写出:如何从一个文件中获取内容以及如何向一个文件中写入内容
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.Fi ...
- 【Linux学习】 写一个简单的Makefile编译源码获取当前系统时间
打算学习一下Linux,这两天先看了一下gcc的简单用法以及makefile的写法,今天是周末,天气闷热超市,早晨突然发现住处的冰箱可以用了,于是先出去吃了点东西,然后去超市买了一坨冰棍,老冰棍居多, ...
- 深入理解 GIL:如何写出高性能及线程安全的 Python 代码
深入理解 GIL:如何写出高性能及线程安全的 Python 代码 本文由 伯乐在线 - 郑芸 翻译.未经许可,禁止转载!英文出处:A. Jesse.欢迎加入翻译组. GIL对多线程的影响:http:/ ...
- 310实验室OTL问题----将写好的C++文件转换成Python文件,并将数据可视化
如图:文件夹 第一处:optimizer文件夹下的:optimizer.h文件中添加你所写代码的头文件 #include <OTL/Optimizer/Reference-NSGA-II/Re ...
随机推荐
- 【LeetCode】1079. Letter Tile Possibilities 解题报告 (C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 回溯 日期 题目地址:https://leetcode ...
- P1547逆转,然后再见
描述 上届的高三在这个暑假终于要到各个城市奔向他们的大学生活了.奇怪的是学校这次异常阔气,说要用三台车子去载他们上学.上届高三的师兄们异常兴奋--可惜的是临行的时候,学校终于露出它"狰狞&q ...
- 实现golang io.Writer支持按照天为单位分割日志
golang中的日志不支持按照天分割,很多开源的日志包都是只支持按照文件大小分割日志,不太利于生产环境中的使用.因此我实现了timewriter,支持: 实现按照天为单位分割日志,可以完美支持gola ...
- ORA-14450: 试图访问已经在使用的事务处理临时表
需要对临时表动态添加列,经常碰到表在事务中被使用的情况,如果可以的话,可以现在只用临时表的时候先truncate,这样可以终止事务对当前临时表的占用. execute immediate('trunc ...
- 【转】GitHub 的 Pull Request 和 GitLab 的 Merge Request 有区别吗?
在 GitHub 上混久了,经常听到 Pull Request,在 GitLab 上混久了,则经常 提起 Merge Request ,然而它们之间有不同吗?为什么要用两个不同的名称? 要追溯这两个名 ...
- 剖析Defi之Uinswap_1
学习UniswapERC20,它是交易对的父合约.UniswapV2ERC20 是流动性代币合约,也称为 LP Token.功能主要实习ERC20代币功能以及对线下签名授权. 1 pragma sol ...
- Java初学者作业——学生成绩等级流程图练习
返回本章节 返回作业目录 在Word 中编写算法实现学生成绩等级的输出,并绘制对应算法的流程图. 功能要求:输入学生成绩,输出对应成绩等级,输出规则如下: 学生成绩区间 对应成绩等级 [90,100] ...
- MySQL高级查询与编程笔记 • 【第3章 子查询】
全部章节 >>>> 本章目录 3.1 子查询定义和单行子查询 3.1.1 子查询定义 3.1.2 单行子查询应用 3.1.4 实践练习 3.2 多行子查询应用 3.2.1 ...
- 使用子查询获取,使用 all 关键字获取比所有“国内短线游”价格高的线路信息,按照线路类型、线路价格升序显示线路编号、线路名和价格
查看本章节 查看作业目录 需求说明: 使用子查询获取"国内短线游"及"国内长线游"的线路信息,按照线路类型.线路价格升序显示线路编号.线路名和价格 使用 all ...
- Docker_安装和卸载(2)
1.检查是否安装docker docker -v 下图为已安装docker的结果 下图为未安装docker的结果 2.卸载docker 查看已安装的版本 yum list installed | gr ...