千家信息网

树莓派4B加微雪2.13寸墨水屏怎样监测pm2.5信息

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章将为大家详细讲解有关树莓派4B加微雪2.13寸墨水屏怎样监测pm2.5信息,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。title : 树莓派
千家信息网最后更新 2026年11月01日树莓派4B加微雪2.13寸墨水屏怎样监测pm2.5信息

这篇文章将为大家详细讲解有关树莓派4B加微雪2.13寸墨水屏怎样监测pm2.5信息,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

title : 树莓派4B加微雪2.13寸墨水屏,监测pm2.5信息

打开spi

vim /boot/config.txt

添加

dtparam=spi=on

pip镜像源

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

pacman -S gcc python-numpy make wiringpi freetype2

pip install spidev RPi.GPIO requests

pip install wiringpi

pip install --no-cache-dir pillow

pip install --upgrade pip

载样例包https://github.com/waveshare/e-Paper

下面的python文件要放在e-paper/RaspberryPi&JetsonNano/python/examples/里面

代中的url参照第一个网址的getData.php,格式如下{"pm":"(23,32,35,23,32,35,3669,1042,136,13,1,1,10.0,19.9,64.4)","date":"2020-02-24 13:40:01"},我代码中另一个树莓派的地址,你也可以在同一个树莓派中使用

python代码如下:

#!/usr/bin/python

# -*- coding:utf-8 -*-

import sys

import os

import datetime

import requests

picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath( __file__ ))), 'pic')

libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath( __file__ ))), 'lib')

if os.path.exists(libdir):

sys.path.append(libdir)

import logging

from waveshare_epd import epd2in13_V2

import time

from PIL import Image,ImageDraw,ImageFont

import traceback

logging.basicConfig(level=logging.DEBUG)

try:

logging.info("epd2in13_V2 Demo")

epd = epd2in13_V2.EPD()

logging.info("init and Clear")

epd.init(epd.FULL_UPDATE)

#epd.Clear(0xFF)

# Drawing on the image

font15 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 15)

font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24)

logging.info("1.Drawing on the image...")

image = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame

draw = ImageDraw.Draw(image)

#GetTime

#time = (datetime.datetime.now() + datetime.timedelta(hours=8)).strftime('%Y.%m.%d %H:%M:%S')

#PrintWord

#draw.text((20, 40), '呵呵', font = font15, fill = 0)

#PrintTime

#draw.text((20, 80), time, font = font15, fill = 0)

#Your PM2.5 data url

#Content for example:

#{"pm":"(25,37,46,25,37,46,3519,982,166,30,5,3,10.0,19.8,64.8)","date":"2020-02-24 13:30:03"}

url = "http://192.168.1.196/pm25/getData.php"

#Format pm2.5 data

alldata = requests.get(url)

pmdata = alldata.json() [ "pm" ]

pmdata = pmdata [ 1:-1 ]

pmdata = pmdata.split(",")

#Get time

time = alldata.json() [ "date" ]

#Get pm2.5,temperature,humidity

pm25 = pmdata [ 4 ]

temperature = pmdata [ 13 ]

humidity = pmdata [ 14 ]

#Draw all data

draw.text((20, 10), '空气质量:' + pm25 + 'μg/m³', font = font15, fill = 0)

draw.text((20, 30), '温度:' + temperature + '°C', font = font15, fill = 0)

draw.text((20, 50), '湿度:' + humidity + '%', font = font15, fill = 0)

draw.text((20, 70), time, font = font15, fill = 0)

draw.text((20, 90), 'By Andy', font = font15, fill = 0)

#ScreenRotate180

image = image.transpose(Image.ROTATE_180)

epd.display(epd.getbuffer(image))

logging.info("Goto Sleep...")

epd.sleep()

except IOError as e:

logging.info(e)

except KeyboardInterrupt:

logging.info("ctrl + c:")

epd2in13_V2.epdconfig.module_exit()

exit()

效果如下:


关于树莓派4B加微雪2.13寸墨水屏怎样监测pm2.5信息就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

树莓 信息 墨水 监测 代码 内容 文章 更多 知识 篇文章 质量 不错 地址 效果 文件 格式 温度 湿度 空气 空气质量 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 A股互联网金融科技公司 科技互联网公司装修 互联网金融公司科技 互联网金融和金融科技 互联网科技公司招聘 成都玖崟互联网科技有限公司乐商圈怎么样 互联网时代科技改变生活 栖莱科技互联网股份有限公司 全球顶尖互联网科技公司 宁夏科技产业互联网案例 昭通互联网科技选哪家 新兴科技互联网创新大赛颁奖典礼 消费医药和互联网科技 青海科技产业互联网发展 晋城互联网科技 工业互联网等科技实现智能化赋能 卓翼科技产业互联网合作 沐思想互联网科技有限公司 小米互联网科技园入驻 郑州欣桑互联网科技有限公司 涨乐互联网科技 丰台科技园 互联网 深圳期待互联网科技 互联网科技汛 南平创想时代互联网科技有限公司 山东有哪些互联网科技公司 宇信科技在杭州互联网排第几 唯美互联网科技 中国科技和美国互联网 福仕德教育科技互联网
0