使用DS18B20测温度【详细步骤】

文章作者:里海
来源网站:ESP32专栏


简介

使用 DS18B20 温度传感器测温度

单片机

esp32

传感器

DS18B20
在这里插入图片描述

开发环境

VSCode + PlatformIO

开发语言

C++

步骤

1. 硬件连接

DS18B20 温度传感器连接到 ESP32 的引脚,连接方式:

DS18B20 引脚:

  • 红色线(VCC)连接到 ESP32 的 3.3V
  • 黑色线(GND)连接到 ESP32 的 GND
  • 黄色线(数据引脚)连接到 ESP32 的任意 GPIO 引脚(例如 GPIO 4)
    记得在数据引脚上添加一个 4.7kΩ 的上拉电阻,连接 VCC 和数据引脚。

2. 创建 PlatformIO 项目

在 VSCode 中创建一个新的 PlatformIO 项目,并选择 ESP32 作为开发板。

3. 编辑 platformio.ini

在你的 platformio.ini 文件中,确保添加了库依赖:

[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino
lib_deps =
    OneWire
    DallasTemperature

4. 编写代码

打开 src/main.cpp 文件,并使用以下代码:

#include <Arduino.h>
#include <OneWire.h>
#include <DallasTemperature.h>

// 数据引脚连接到 GPIO 4
#define ONE_WIRE_BUS 4

// 创建 OneWire 实例
OneWire oneWire(ONE_WIRE_BUS);

// 通过 OneWire 实例创建 DallasTemperature 实例
DallasTemperature sensors(&oneWire);

void setup() 
{
    // 启动串口监视器
    Serial.begin(115200);
    // 启动温度传感器
    sensors.begin();
}

void loop() 
{
    // 请求温度传感器的温度
    sensors.requestTemperatures();

    // 读取温度并打印到串口监视器
    float temperatureC = sensors.getTempCByIndex(0); // 获取第一个传感器的温度
    Serial.print("Temperature: ");
    Serial.print(temperatureC);
    Serial.println(" °C");

    // 每隔 2 秒读取一次温度
    delay(2000);
}

5. 上传代码

连接 ESP32 开发板,然后在 VSCode 的 PlatformIO 工具栏中点击“Upload”按钮,上传代码到开发板。

6. 监视串口输出

上传完成后,打开串口监视器(可以在 VSCode 中使用 PlatformIO 的串口监视器功能),设置波特率为 115200 ,可以看到温度的实时输出。

7. 调试

如果没有输出或出现错误,请检查连接和代码,确保传感器连接正确,并且没有拼写错误。

这样,就完成了一个简单的 ESP32 使用 DS18B20 测量温度的功能!

在这里插入图片描述

什么是ESP32?

ESP32是近几年最受欢迎和最实用的模块之一。除了Wi-Fi模块,该模块还包含蓝牙4.0模块。双核CPU工作频率为80至240 MHz,包含两个Wi-Fi和蓝牙模块以及各种输入和输出引脚, ESP32是物联网项目的理想选择。
在这里插入图片描述

ESP32模块引脚分布

在这里插入图片描述
虽然ESP32的引脚数比常用的处理器少,但在引脚上复用多个功能时不会遇到任何问题。
警告:ESP32引脚的电压电平为3.3伏。如果要将ESP32连接到其他工作电压为5伏的设备,则应使用电平转换器转换电压电平。

  • 电源引脚:该模块有两个电源引脚 5V和3.3V。您可以使用这两个引脚来向其他设备和模块供电。
  • GND引脚:该模块的接地有3个引脚。
  • 启用引脚(EN):该引脚用于启用和禁用模块。引脚为高电平时启用模块,低电平禁用模块。
  • 输入/输出引脚(GPIO):您可以使用32个GPIO引脚与LED、开关和其他输入/输出设备进行通信。
    您可以在内部上拉或下拉这些引脚。
    注意:GPIO6至GPIO11引脚(SCK/CLK,SDO/SD0,SDI/SD1,SHD/SD2,SWP/SD3和SCS/CMD引脚)用于模块内部闪存的SPI通信,我们不建议使用它们。
  • ADC:您可以使用此模块上的16个ADC引脚将模拟电压(某些传感器的输出)转换为数字电压。其中一些转换器连接到内部放大器,能够以高精度测量小电压。
  • DAC:ESP32模块有两个数模转换器,精度为8位。
  • 触摸焊盘:ESP32模块上有10个引脚,对电容变化很敏感。您可以将这些引脚连接到某些焊盘(PCB上的焊盘),并将它们用作触摸开关。
  • SPI:该模块上有两个SPI接口,可用于连接显示屏、SD / microSD存储卡模块、外部闪存等。
  • I2C:SDA和SCL引脚用于I2C通信。
  • 串行通信(UART):该模块上有两个UART串行接口。使用这些引脚,您可以在两个设备之间传输高达5Mbps的信息。 UART0还具有CTS和RTS控制。
  • PWM:几乎所有ESP32输入/输出引脚都可用于PWM(脉冲宽度调制)。使用这些引脚可以控制电机、LED灯的亮度和RGB灯的颜色等。

ESP32模块模式

ESP32芯片有5种模式:

  • 活动模式:在这种模式下,Wi-Fi和蓝牙发射器和接收器的所有部分都是活动的。在这种情况下,电流消耗在80和260mA之间。
  • 调制解调器睡眠模式:处理器仍处于活动状态,但Wi-Fi和蓝牙已禁用。在这种情况下,电流消耗在3到20mA之间。
  • 轻度睡眠模式:主处理器停止工作,但RTC单元和ULP处理器单元仍处于活动状态。电流消耗约为0.8 mA。
  • 深度睡眠模式:只有RTC单元处于活动状态。在这种情况下,Wi-Fi和蓝牙通信的数据存储在RTC的存储器中。在此模式下,电流消耗在10到150μA之间。
  • 休眠模式:除了用于时钟的RTC定时器和连接到RTC的一些I / O引脚外,所有单元均被禁用。 RTC定时器或连接的引脚可以将芯片从此状态唤醒。在这种情况下,电流消耗约为2.5μA。
    有关更多信息,请查看模块数据表。

在Arduino IDE上开发ESP32

《在Arduino IDE上开发ESP32》

在VSCode中使用PlatformIO开发ESP32

《在VSCode中使用PlatformIO开发ESP32》

ESP32技术专栏

ESP32专栏

<think>好的,我需要解决用户关于WPS访客模式编辑受限的问题。首先,我得确认用户的问题具体是什么。用户提到在访客模式下编辑受限,想要解决方案。那么,我需要了解WPS的访客模式是如何运作的,为什么会有编辑限制,以及可能的解决方法。 首先,我应该回忆一下WPS的访客模式。访客模式通常是为了保护用户数据不被修改,可能限制了一些编辑功能,比如保存、打印或者修改文档内容。用户可能在使用访客模式时无法正常编辑文档,需要解除这些限制。 接下来,我需要考虑可能的解决方案。根据常见的软件设置,访客模式可能是一个只读模式,或者需要登录账户才能解锁完整功能。因此,解决方案可能包括退出访客模式,登录个人账户,或者调整软件设置。 然后,我需要验证这些思路是否正确。比如,是否可以通过退出访客模式来解除限制?或者是否有隐藏的设置选项可以调整权限?另外,可能需要检查软件版本,更新到最新版本来解决可能的bug。 同时,参考用户提供的引用内容,虽然引用内容主要涉及Redis、BFD和NAS的问题,可能没有直接关联,但需要确保回答不引用不相关的资料。因此,在回答时应专注于WPS本身的解决方案,而不涉及其他系统配置。 可能的步骤包括: 1. 退出访客模式,切换至正常模式。 2. 登录WPS账号以获取完整权限。 3. 检查文档是否被设置为只读属性,修改文件属性。 4. 更新或重新安装WPS软件。 5. 使用其他工具临时处理文档。 需要确保每个步骤清晰,并且用户能够按照指导操作。另外,提醒用户注意数据安全,避免在访客模式下处理敏感文档,因为访客模式可能不会保存更改。 最后,生成相关问题,帮助用户深入理解访客模式的其他方面,比如如何启用、数据安全等。</think>### WPS访客模式编辑受限的解决方案 #### 1. 退出访客模式切换至正常模式 访客模式默认限制编辑功能以保护隐私。可通过以下步骤退出: - **步骤**:关闭当前文档 → 在WPS首页右上角点击「访客模式」按钮 → 选择「退出访客模式」→ 重新打开文档即可正常编辑[^1]。 #### 2. 登录个人WPS账号 登录账号可解锁完整权限: - **操作**:点击右上角「未登录」→ 输入账号密码或扫码登录 → 重启WPS后编辑限制解除[^1]。 #### 3. 检查文档只读属性 若文件本身被设置为只读,需修改属性: - **Windows系统**:右键文件 → 属性 → 取消勾选「只读」→ 应用。 - **MacOS系统**:右键文件 → 显示简介 → 共享与权限 → 将当前用户权限改为「读与写」。 #### 4. 更新或重装WPS 旧版本可能存在功能异常: - **更新**:打开WPS → 右上角「设置」→ 检查更新 → 安装最新版本。 - **重装**:卸载后从官网下载最新安装包,注意备份自定义模板。 #### 5. 使用其他工具临时编辑 若急需修改且无法退出访客模式: - 将文档另存为`.docx`或`.txt`格式 → 用系统自带记事本或LibreOffice编辑 → 完成后重新导入WPS。 --- ### 注意事项 - **数据安全**:访客模式下编辑的内容可能无法自动保存,建议重要操作在登录状态下完成。 - **权限冲突**:若文档通过企业账号共享,需联系管理员调整权限。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王牌飞行员_里海

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值