树莓派pico入坑笔记,dht11使用及温湿度表制作

 

目录

 

关于树莓派pico和circuitpython的更多玩法,请看树莓派pico专栏

用到的库adafruit_dht,需要导入pico才能使用,在这里下载

样例程序

进阶玩法,显示信息的温湿度计

屏幕使用见树莓派pico专栏的ssd1306oled屏幕使用

代码

效果


关于树莓派pico和circuitpython的更多玩法,请看树莓派pico专栏

使用circuitpython8.x环境,硬件dht11,电压范围3~5v

用到的库adafruit_dht,需要导入pico才能使用,在这里下载

样例程序

import time
import board
import adafruit_dhtdhtDevice = adafruit_dht.DHT11(board.GP28)while True:try:# Print the values to the serial porttemperature_c = dhtDevice.temperaturetemperature_f = temperature_c * (9 / 5) + 32humidity = dhtDevice.humidityprint("Temp: {:.1f} F / {:.1f} C    Humidity: {}% ".format(temperature_f, temperature_c, humidity))except RuntimeError as error:# Errors happen fairly often, DHT's are hard to read, just keep goingprint(error.args[0])time.sleep(2.0)continueexcept Exception as error:dhtDevice.exit()raise errortime.sleep(2.0)

 
dhtDevice = adafruit_dht.DHT11(board.GP28)选择一个引脚作为数据读取引脚

temperature_c = dhtDevice.temperature

humidity = dhtDevice.humidity默认读出的时摄氏度和湿度百分比

其他的是异常处理,输出异常信息的,可以不用加

进阶玩法,显示信息的温湿度计

dht11支持3~5v供电,所以可以使用vout引脚对它供电,3.3v引脚用来给屏幕供电,不需要额外拓展引脚

屏幕使用见树莓派pico专栏的ssd1306oled屏幕使用

代码

import time
import board
import adafruit_dht
import busio
import adafruit_ssd1306dhtDevice = adafruit_dht.DHT11(board.GP28)i2c = busio.I2C(board.GP1,board.GP0)
display_width = 128
display_height = 64
display = adafruit_ssd1306.SSD1306_I2C(display_width, display_height, i2c)
display.fill(0)while True:try:# Print the values to the serial porttemperature_c = dhtDevice.temperaturetemperature_f = temperature_c * (9 / 5) + 32humidity = dhtDevice.humidity
#清空上一次的屏幕内容display.fill(0)display.text("Temp: {:.1f} F / {:.1f} C\nHumidity: {}% ".format(temperature_f, temperature_c, humidity),0,0,1,size=1)display.show()except RuntimeError as error:# Errors happen fairly often, DHT's are hard to read, just keep goingprint(error.args[0])time.sleep(2.0)continueexcept Exception as error:dhtDevice.exit()raise errortime.sleep(.5)

显示时注意每次刷新需要清空上一次的内容,否则会出现像素糊在一起的情况 

效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/45917.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Go 初始化一个字典

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

4K60无缝一体矩阵 HDMI2.0功能介绍

关于GF-HDMI0808S 4K60无缝一体矩阵的功能介绍,由于直接针对GF-HDMI0808S型号的具体信息较少,我将结合类似4K60无缝HDMI矩阵的一般功能特性和可能的GF-HDMI0808系列产品的特点来进行说明。请注意,以下信息可能不完全针对GF-HDMI0808S型号&…

springboot+vue系统开发

链接: https://pan.baidu.com/s/1P1YpHAx9QOBPxjFZ9SAbig 提取码: u6f1

Java基础(十九):集合框架

目录 一、Java集合框架体系二、Collection接口及方法1、添加2、判断3、删除4、其它 三、Iterator(迭代器)接口1、Iterator接口2、迭代器的执行原理3、foreach循环 四、Collection子接口1:List1、List接口特点2、List接口方法3、List接口主要实现类:Array…

GuLi商城-商品服务-API-品牌管理-统一异常处理

每个方法都加这段校验太麻烦了 准备做一个统一异常处理@ControllerAdvice 后台代码: package com.nanjing.gulimall.product.exception;import com.nanjing.common.exception.BizCodeEnum; import com.nanjing.common.utils.R; import lombok.extern.slf4j.Slf4j; import org…

【Linux】任务管理

这个任务管理(job control)是用在bash环境下的,也就是说:【当我们登录系统获取bashshell之后,在单一终端下同时执行多个任务的操作管理】。 举例来说,我们在登录bash后,可以一边复制文件、一边查…

代码随想录算法训练营第五十二天(图论)| 98. 所有可达路径、深度优先搜索、广度优先搜索

邻接矩阵 邻接矩阵是一种使用二维数组来表示图的方法。矩阵中的元素表示节点之间是否存在边。如果存在边,则对应的矩阵元素为1(或边的权重);否则为0。 特点: 空间复杂度高:无论图是否稀疏,邻…

前端Canvas入门——一些注意事项

创建渐变的三种方法: createLinearGradient() - 线性渐变 createRadialGradient() - 径向渐变(放射性渐变) createConicGradient() - 锥形渐变 这三种的核心观点都是: 创建一个gradient对象,然后调用addColorStop()方法…

【java】力扣 合并两个有序链表

文章目录 题目描述题目链接思路代码 题目描述 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 题目链接 21. 合并两个有序链表 思路 先定义一个哨兵节点dummy,为了方便解题 然后定义一个节点pre&#xff0…

paddlepaddle2.6,paddleorc2.8,cuda12,cudnn,nccl,python10环境

1.安装英伟达显卡驱动 首先需要到NAVIDIA官网去查自己的电脑是不是支持GPU运算。 网址是:CUDA GPUs | NVIDIA Developer。打开后的界面大致如下,只要里边有对应的型号就可以用GPU运算,并且每一款设备都列出来相关的计算能力(Compu…

为二进制文件添加.gnu_debugdata调试信息

前言 在使用gcc/g编译二进制文件过程中,如果添加了-g参数,编译出来的二进制文件会带有debug信息,供调试使用。但是debug信息往往占用空间很大,导致二进制文件太大,在发布到生产环境时,一般会去掉调试信息&…

(南京观海微电子)——电容应用及选取

什么是电容器? 电容器是一种在内部电场中储存能量的电子器件。它与电阻器、电感器一样,都是基本的无源电子元件。所有电容器都具有相同的基本结构,两块导电极板中间由绝缘体隔开,该绝缘体称为电介质,可在施加电场后发…

时间轮算法理解、Kafka实现

概述 TimingWheel,时间轮,简单理解就是一种用来存储若干个定时任务的环状队列(或数组),工作原理和钟表的表盘类似。 关于环形队列,请参考环形队列。 时间轮由两个部分组成,一个环状数组&…

一文了解MySQL的表级锁

文章目录 ☃️概述☃️表级锁❄️❄️介绍❄️❄️表锁❄️❄️元数据锁❄️❄️意向锁⛷️⛷️⛷️ 介绍 ☃️概述 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外&#xff0…

Coze:如何使用团队空间?

你好,我是三桥君 团队空间,是一个允许我们组建团队并共享机器人、插件等资源的功能。 好的,让我们开始创建一个团队。我们将这个团队命名为“三桥君AI”,并在描述中也填写“这里是关于“三桥君AI”团队的描述”。点击确定后&…

VMware_centos8安装

目录 VMware Workstation Pro的安装 安装centos VMware Workstation Pro的安装 正版VMware 17百度网盘下载链接 (含秘钥) 链接:https://pan.baidu.com/s/16zB-7IAACM_1hwR1nsk12g?pwd1111 提取码:1111 第一次运行会要求输入秘钥 秘钥在上边的百度网盘…

【CUDA|CUDNN】安装

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 显卡驱动安装参考之前的文章 cuda、cudnn 安装 1. cuda 安装 访问https://developer.nvidia.com/cuda-toolkit-archive 选择需要的版本:h…

Selenium使用注意事项:

find_element 和 find_elements 的区别 WebDriver和WebElement的区别 问题: 会遇到报错: selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector",&…

双管正激小功率电源的设计与实现

正激变换由于拓扑简单, 升/ 降压范围宽, 广泛应用于中小功率电源变换场合。正激变换器的输出功率不象反激变换器那样受变压器储能的限制, 因此输出功率较反激变换器大, 但是正激变换器的开关管电压应力高, 为两倍输入电…

视频监控汇聚平台:通过SDK接入大华DSS视频监控平台的源代码解释和分享

目录 一、视频监控汇聚平台 1、概述 2、视频接入能力 3、视频汇聚能力 二、大华DSS平台 1、DSS平台概述 2、大华DSS平台的主要特点 (1)高可用性 (2)高可靠性 (3)易维护性 (4&#xf…