正点原子esp32s3探测土壤湿度

开发板使用:正点原子ATK_DNESP32S3 V1.3

IDE: VSCODE + PLATFORMIO

土壤湿度检测传感器模块如下图:

引脚:

传感器VCC --> ESP32[3.3V]
传感器GND --> ESP32[GND]
传感器A0 --> ESP32[GPIO20]

代码如下:

#include <Arduino.h>const int SOIL_MOISTURE_SENSOR_PIN = 20;  // GPIO20// 更新为ESP32-S3的合理阈值(12位ADC 0-4095)
const int DRY_VALUE = 3500;  // 完全干燥时的值(需校准)
const int WET_VALUE = 1500;  // 完全湿润时的值(需校准)void setup() {Serial.begin(115200);Serial.println("土壤湿度监测系统启动");
}void loop() {int sensorValue = analogRead(SOIL_MOISTURE_SENSOR_PIN);// 反转映射方向(值高=干燥→百分比低)int moisturePercentage = map(sensorValue, DRY_VALUE, WET_VALUE, 0, 100);moisturePercentage = constrain(moisturePercentage, 0, 100);// 使用百分比判断状态String status;if (moisturePercentage < 30) {status = "干燥";} else if (moisturePercentage > 70) {status = "湿润";} else {status = "正常";}Serial.print("原始值: ");Serial.print(sensorValue);Serial.print(" | 湿度百分比: ");Serial.print(moisturePercentage);Serial.print("% | 状态: ");Serial.println(status);delay(1000);
}
传感器VCC --> ESP32[3.3V]
传感器GND --> ESP32[GND]
传感器A0 --> ESP32[GPIO20]

运行后,terminal输出如下:

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

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

相关文章

一篇文章解决 Win10 同时部署多个版本的Tomcat

文章目录所用到的文件夹Tomcat服务端口修改Tomcat参数修改环境变量配置验证环境是否配置成功可能遇到的问题问题一&#xff1a;startup.bat闪退问题二&#xff1a;startup.bat成功启动&#xff0c;但仍打不开服务器总结最近在学习JavaWeb的时候&#xff0c;想安装新版本的Tomca…

CentOS7安装和使用Workbench

文章目录CentOS7安装和使用Workbench一、前言1.简介2.环境二、正文1.更换镜像源2.安装依赖包3.下载4.安装5.打开workbench6.使用记录1&#xff09;连接数据库2&#xff09;创建数据库3&#xff09;导入数据3&#xff09;导出数据4&#xff09;运行SQL脚本5&#xff09;打开SQL脚…

SpringBoot查询方式全解析

文章目录一、简介二、常用注解分类1、请求映射类&#xff08;处理 URL 与 HTTP 方法的绑定&#xff09;2、参数绑定类&#xff08;从请求中获取数据并绑定到方法参数&#xff09;3、控制器与增强类&#xff08;标识控制器及全局增强&#xff09;4、异常与响应处理类&#xff08…

Linux操作系统从入门到实战(十五)详细讲解Linux调试器 gdb/cgdb使用

Linux操作系统从入门到实战&#xff08;十五&#xff09;详细讲解Linux调试器 gdb/cgdb使用前言一、gdb/cgdb是什么&#xff1f;1. 程序的两种发布模式&#xff08;debug 和 release&#xff09;二、gdb/cgdb如何启动&#xff1f;1. 准备工作2. 启动 gdb/cgdb 调试器2.1 启动 g…

基于UDP的代理协议的Tuic怎么样?

Tuic&#xff08;全称“TUIClient”&#xff09;是一款基于UDP协议的轻量代理工具&#xff0c;主打低延迟与高实时性&#xff0c;专为解决传统TCP代理在实时场景中的性能瓶颈而生。其核心设计围绕“UDP优先”展开&#xff0c;通过简化握手流程、优化加密效率&#xff0c;在保持…

缓存投毒进阶 -- justctf 2025 Busy Traffic

题目核心逻辑如下 let browser; // 全局浏览器实例// 访问指定 URL 的异步函数 const visit async (url) > {try {// 如果已有浏览器实例&#xff0c;先关闭并等待 2 秒if (browser) {await browser.close();await sleep(2000);console.log("Terminated ongoing job.&…

复刻苏宁易购(移动端)

html代码<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><link rel"s…

Scrapy返回200但无数据?可能是Cookies或Session问题

引言 在使用Scrapy框架进行网页爬取时&#xff0c;开发者可能会遇到一个常见但令人困惑的问题&#xff1a;HTTP请求返回状态码200&#xff08;表示成功&#xff09;&#xff0c;但实际获取的数据却是空的。这种情况通常意味着目标服务器接受了请求&#xff0c;但由于某些原因没…

【gateway nc adapter虚拟网卡 win11 联想】问题的解决

前言&#xff1a;由于需要登录公司内网&#xff0c;于是启用奇安信VPN。但启动后报出网关未连接的问题&#xff0c;于是我检查了我的网络适配器&#xff0c;并尝试解决&#xff0c;以下给出几种我实践过程中的行动&#xff0c;并附带最后成功的解决方法 【gateway nc adapter虚…

基于开源AI智能名片链动2+1模式S2B2C商城小程序的运营策略创新研究

摘要&#xff1a;在数字化商业生态快速演进的背景下&#xff0c;传统运营模式面临用户增长乏力、转化效率低下等挑战。本文以开源AI智能名片链动21模式与S2B2C商城小程序的深度融合为研究对象&#xff0c;提出通过周期化运营规划、关键节点策略设计、跨部门协同创新、数据驱动决…

smart-water表设计方案

-- -- 2. SOP 管理模块 -- -- 2.1 SOP主表 (存储SOP元数据&#xff0c;与版本分离) CREATE TABLE sops (id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),name VARCHAR(255) NOT NULL,description TEXT,latest_published_version_id UUID, -- 外键约束在版本表创建后添加crea…

A4.0:继C5.2的BJT理论引申的开关作用的应用示例

在C5里知道了BJT的静态工作点Q的计算方式&#xff08;IC和VCE的负载线&#xff09;&#xff0c;以及偏置电阻RB&#xff0c;得到了电流IB&#xff0c;进而通过电流增益hFE得到了IC(IC β*IB)&#xff0c;然后VCE VCC - IC*RC&#xff0c;即集电极和发射极之间的电压等于集电极…

平板探测器的主要技术指标

平板探测器(Flat-panel-detector,FPD)是一种广泛应用于医学影像学(如X射线、CT扫描等)、工业无损检测和科学研究中的成像设备。其主要技术指标包括以下几个方面: 1.空间分辨率(SpatialResolution) 定义:空间分辨率是指平板探测器能清晰分辨图像中细节的能力。一般以…

从苏州姑苏区人工智能大模型基础设施招标|学习参数5:单颗 AI 处理器的内存带宽如何达到 1600GB/s

招标参数5:配置≥8 个AI 处理器,支持OAM式集成服务器形式。单个 AI 处理器支持≥370TFLOPS@FP16或 80TFLOPS@FP32 算力,支持≥64GB HBM高带宽内存,单个AI处理器内存带宽≥1600GBps 单张卡算力及内存带宽参考如下NVIDIA算力表 H3C R4900 G5:支持多达 32 个 DDR4 内存,速率…

【机器学习深度学习】Embedding 模型详解:从基础原理到实际应用场景

目录 前言 一、Embedding 模型基础&#xff1a;文本到向量的“魔术师” 1.1 什么是 Embedding&#xff1f; 1.2 为什么需要 Embedding&#xff1f; 二、核心作用与优势&#xff1a;语义分析的“利刃” 三、工作原理拆解&#xff1a;从训练到应用的完整链条 3.1 训练阶段…

防御保护10

双机热备组网配置主备备份组网1、配置ip地址2、配置安全区域3、ospf配置4、配置双机热备5、安全策略hrp adjust ospf-cost enable --- 配置根据VGMP状态调整OSPF Cost值如果防火墙下行设备为三层设备&#xff0c;通过路由来引导流量&#xff0c;则需要配置上述命令&#xff1b;…

Python爬虫实战:研究meshio库,构建网格文件数据采集系统

一、引言 (一)研究背景 在有限元分析、计算流体力学(CFD)、计算机辅助设计(CAD)等领域,网格文件是描述几何模型离散化信息的基础数据载体,包含节点坐标、单元连接关系、物理属性等关键信息。目前,网格文件格式多达数十种(如 VTK、STL、OBJ、ANSYS CDB 等),且分散…

编程基础之字符串——统计数字字符个数

题目&#xff1a; 输入一行字符&#xff0c;统计出其中数字字符的个数。 输入&#xff1a; 一行字符串&#xff0c;总长度不超过255。 输出&#xff1a; 输出为1行&#xff0c;输出字符串里面数字字符的个数。 样例输入&#xff1a; Peking University is set up at 1898. 样…