【雕爷学编程】Arduino动手做(186)---WeMos ESP32开发板
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试多做实验,不管成功与否,都会记录下来——小小的进步或是搞不掂的问题,希望能够抛砖引玉。
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百七十七:Wemos D1 ESP32 WiFi蓝牙4MB4闪存UNO R32开发板模块 UNO D1 R32(ESP32)开发板 兼容Arduino

知识点:ESP32芯片
(包括:ESP32- d0wd、ESP32- d0wdq6、ESP32- d2wd、ESP32- s0wd)集成了Wi-Fi和双模式蓝牙。根据型号差异,ESP32包含一个或两个低功耗Xtensa®32位LX6微处理器(s),最大时钟速度240 MHz(通常是160 MHz)和Xtensa RAM / ROM,本地内存和JTAG接口。


处理器:
主处理器: Tensilica Xtensa 32位LX6微处理器
核心: 2 或 1(取决于变化)除ESP32-S0WD为单核外,ESP32系列所有芯片均为双核。
时钟频率:高达 240 MHz
性能:高达 600 DMIPS
超低功耗协处理器: 允许您在深度睡眠时进行 ADC 转换、计算和电平阈值。
无线连接:
的Wi-Fi: 802.11 B / G / N / E / I(802.11n标准@ 2.4GHz的高达150兆比特/秒)
蓝牙: v4.2 BR/EDR 和蓝牙低功耗 (BLE)
记忆:
内部存储器:
ROM: 448 KiB用于启动和核心功能。
SRAM: 520 KiB用于数据和指令。
RTC 快速 SRAM: 8 KiB用于从深度睡眠模式进行 RTC 启动期间的数据存储和主 CPU。
RTC 慢速 SRAM: 8 KiB用于深度睡眠模式下的协处理器访问。
电子保险丝: 1 Kibit其中 256 位用于系统(MAC 地址和芯片配置),其余 768 位保留用于客户应用,包括 Flash-Encryption 和 Chip-ID。
嵌入式闪存:Flash 通过 ESP32-D2WD 和 ESP32-PICO-D4 上的 IO16、IO17、SD_CMD、SD_CLK、SD_DATA_0 和 SD_DATA_1 内部连接。
0 MiB(ESP32-D0WDQ6、ESP32-D0WD 和 ESP32-S0WD 芯片)
2 MiB(ESP32-D2WD 芯片)
4 MiB(ESP32-PICO-D4 SiP 模块)
外部闪存和 SRAM: ESP32 最多支持四个 16 MiB 外部 QSPI闪存和 SRAM,具有基于 AES 的硬件加密,以保护开发人员的程序和数据。ESP32 可以通过高速缓存访问外部 QSPI flash 和 SRAM。
高达 16 MiB 的外部闪存被内存映射到 CPU 代码空间,支持 8 位、16 位和 32 位访问。支持代码执行。
多达 8 MiB 的外部闪存/SRAM 存储器映射到 CPU 数据空间,支持 8 位、16 位和 32 位访问。闪存和 SRAM 支持数据读取。SRAM 支持数据写入。
带有嵌入式 flash 的 ESP32 芯片不支持外部 flash 和外设之间的地址映射。
外设输入/输出:带有 DMA 的丰富外设接口,包括电容式触摸、ADC(模数转换器)、DAC(数模转换器)、I²C(内部集成电路)、UART(通用异步接收器/发送器) )、CAN 2.0(控制器局域网)、SPI(串行外设接口)、I²S(集成 IC 间声音)、RMII(简化的媒体独立接口)、PWM(脉宽调制)等。
安全:
支持 IEEE 802.11 标准安全功能,包括 WFA、WPA/WPA2 和 WAPI
安全启动
闪存加密
1024位OTP,客户最高768位
加密硬件加速:AES、SHA-2、RSA、椭圆曲线加密(ECC)、随机数生成器(RNG)

ESP32的主要参数:
从ESP32的芯片参数可以看出,它的功能非常强大;另外一条也也很重要:它非常便宜。这两个要素决定了:它非常适合目前流行的物联网开发,也非常适合学习嵌入式开发。

Wemos D1 ESP32 WiFi蓝牙4MB4闪存UNO R32开发板模块 UNO D1 R32(ESP32)开发板 兼容Arduino
电原理图


Wemos D1 ESP32 WiFi蓝牙4MB4闪存UNO R32开发板模块 UNO D1 R32(ESP32)开发板 兼容Arduino
搜到的不同版本的引线接脚图





安装Windows驱动

1、利用官方途径进行下载安装
(1)首先在Arduino中添加 esp32 开发板地址:
打开Arduino后选择:文件 > 首选项 > 附加开发板管理器网址中加入Arduino for esp32包的地址:
https://dl.espressif.com/dl/package_esp32_index.json

(2)IDE——工具——开发板——开发板管理器——搜索“ESP32”——安装


(3)安装成功


2、直接下载esp32数据包的压缩包,手动解压并添加,下载地址:
(1)https://github.com/espressif/arduino-esp32

(2)百度云下载链接:https://pan.baidu.com/s/1mC-DGFKhKsS4kjKz50mung
提取码:86le

(3)解压后,将压缩文件里的内容复制到如下路径(需要新建一个espressif文件夹):Arduino > hardware > espressif > esp32 ,最后放到esp32文件夹下。

此时再打开Arduino IDE 编译器,工具 > 开发板 已经可以找到ESP32相关开发板

相关文章:
【雕爷学编程】Arduino动手做(186)---WeMos ESP32开发板
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的&#x…...
3、JSON数据的处理
3.1 介绍 JSON数据 Spark SQL can automatically infer the schema of a JSON dataset and load it as a DataFrame Spark SQL能够自动将JSON数据集以结构化的形式加载为一个DataFrame This conversion can be done using SparkSession.read.json on a JSON file 读取一个JSO…...
8月5日上课内容 nginx的优化和防盗链
全部都是面试题 nginx的优化和防盗链 重点就是优化: 每一个点都是面试题,非常重要,都是面试题 1、隐藏版本号(重点,一定要会) 备份 cp nginx.conf nginx.conf.bak.2023.0805 方法一:修改配…...
网络爬虫请求头中的Referer和User-Agent与代理IP的配合使用
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8EJgMcgK-1691050515642)(https://cdn.nlark.com/yuque/0/2023/png/1313150/1691048724422-2a76d7b8-3ec3-48b7-9aec-d609d09b16d4.png#averageHue%2385b0a7&clientIdu3856fd20-7701-4&fromui&…...
RabbitMQ 生产者-消息丢失 之 场景分析
生产者-消息丢失 之 场景分析 生产者消息丢失的场景消息无法到达RabbitMQ连接断开信道关闭 RabbitMQ无法将消息入队交换机不存在无匹配队列 消息过期丢失消息丢失场景对比 生产者消息丢失的场景 生产者发送消息的流程如下:首先生产者和RabbitMQ服务器建立连接&…...
Hyper实现git bash在windows环境下多tab窗口显示
1.电脑上安装有git bash 下载链接:https://gitforwindows.org/ 安装Hyper 下载链接:官网 https://hyper.is/ 或者在百度云盘下载: https://pan.baidu.com/s/1BVjzlK0s4SgAbQgsiK1Eow 提取码:0r1f 设置 打开Hyper,依次点左上角-&g…...
Matlab的信号频谱分析——FFT变换
Matlab的信号频谱分析——FFT变换 Matlab的信号频谱分析 FFT是离散傅立叶变换的快速算法,可以将一个时域信号变换到频域。 有些信号在时域上是很难看出什么特征的。但是如果变换到频域之后,就很容易看出特征了。 这就是很多信号分析采用FFT变换的原因…...
如何从 Android 设备恢复已删除的文件?
从 Android 设备恢复已删除的文件很简单,但您需要了解内部恢复和SD 卡恢复之间的区别。 目前销售的大多数 Android 设备都配备了 SD 卡插槽(通常为 microSD),可以轻松添加额外的存储空间。该存储空间可用于存储照片、视频、文档&a…...
servlet生命周期和初始化参数传递
servlet生命周期和初始化参数传递 1、servlet生命周期 只有第一次访问才会初始化,之后访问都只执行service中的。 除非tomcat关闭重新启动: 2、初始化参数传递...
dvwa靶场通关(十一)
第十一关:Reflected Cross Site Scripting (XSS) low 这一关没有任何防护,直接输入弹窗 <script>alert(xss)</script> 打开网页源代码, 从源代码中我们可以看到,前面是输出的第一部分Hello,我们输入的脚…...
【Spring】使用注解存储Bean对象
目录 一、配置扫描路径(使用注解的方式存对象的前提) 二、使用类注解存储Bean对象 1、使用五大类注解存储Bean对象 2、为什么要这么多的类注解? 2.1、五大类注解之间的关系 3、获取Bean对象时的默认命名规则 三、使用方法注解来存储…...
怎么维护好自己的电脑
你的电脑已经成为你工作、学习、娱乐的最佳工具之一,但是如果你不做好电脑维护工作,就可能面临着电脑变慢、蓝屏、崩溃等问题。在这篇文章中,我们将介绍10个电脑维护步骤,让你的电脑更加稳定! 为什么需要电脑维护&…...
vscode中无法使用git解决方案
1 首先查看git安装目录 where git 2 找到bash.exe 的路径 比如:C:/Users/Wangzd/AppData/Local/Programs/Git/bin/bash 3 找到vscode的配置项setting.json 4 添加 "terminal.integrated.shell.windowns": "C:/Users/Wangzd/AppData/Local/Pr…...
MybatisPlus-CRUD,不带条件构造器的常用方法
mapper层 Repository public interface UserMapper extends BaseMapper<User> BaseMapper中封装好了增删改查的方法 后面直接调用就好了 测试类 SpringBootTest public class CrudTest {Autowiredprivate UserMapper userMapper;//新增Testpublic void insert(){//没…...
软件测试面试【富途面经分享】
目录 一面面经(1h) 二面面经 一面面经(1h) 一、对白盒黑盒灰盒测试的理解 答: 1、黑盒测试就当整个程序是个黑盒子,我们看不到它里面做了什么事情,只能通过输入输出看是否能得到我们所需的来…...
antd 库的 Table 组件中删除一个或多个选中的列表
先解释一下原代码每个方法的含义 const TablePage: React.FC () > {/* selectedRowKeys 指定选中项的 key 数组,需要和 onChange 进行配合在此处,通过 rowSelection.selectedRowKeys 来控制选中项。*/const [selectedRowKeys, setSelectedRowKeys] …...
针对java程序员的了解细节操作系统与进程
一、💛 操作系统(浅浅概念):是用来搞管理软件的 1.对下,要管理各种硬件设备 2.对上,要给应用程序提供一个稳定的运行环境 二、💙 进程:正在运行的程序,假如程序没有运行就不叫程序,…...
判定是否互为字符重排、回文排列
题1:判定是否互为字符重排 给定两个由小写字母组成的字符串 s1 和 s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。 输入: s1 "abc", s2 "bca" 输出: true 输入: s1 &quo…...
QT QTextCharFormat 说明和使用
QTextCharFormat:设置文本编辑框字体,字号,加粗,倾斜,下划线,颜色 QTextCharFormat 类的一些常用属性和方法: setFont(const QFont &font): 设置字体。 setFontFamily(const QString &a…...
掌握Memory Profiler技巧:识别内存问题
关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、人工智能等,希望大家多多支持。 目录 一、导读二、概览三、如何使用四、页面说明4.1 Java 和 Kotlin 分配…...
手游刚开服就被攻击怎么办?如何防御DDoS?
开服初期是手游最脆弱的阶段,极易成为DDoS攻击的目标。一旦遭遇攻击,可能导致服务器瘫痪、玩家流失,甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案,帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...
解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...
C++八股 —— 单例模式
文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全(Thread Safety) 线程安全是指在多线程环境下,某个函数、类或代码片段能够被多个线程同时调用时,仍能保证数据的一致性和逻辑的正确性…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...
基于TurtleBot3在Gazebo地图实现机器人远程控制
1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...
IP如何挑?2025年海外专线IP如何购买?
你花了时间和预算买了IP,结果IP质量不佳,项目效率低下不说,还可能带来莫名的网络问题,是不是太闹心了?尤其是在面对海外专线IP时,到底怎么才能买到适合自己的呢?所以,挑IP绝对是个技…...
C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...
C#学习第29天:表达式树(Expression Trees)
目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...
【网络安全】开源系统getshell漏洞挖掘
审计过程: 在入口文件admin/index.php中: 用户可以通过m,c,a等参数控制加载的文件和方法,在app/system/entrance.php中存在重点代码: 当M_TYPE system并且M_MODULE include时,会设置常量PATH_OWN_FILE为PATH_APP.M_T…...
Linux中《基础IO》详细介绍
目录 理解"文件"狭义理解广义理解文件操作的归类认知系统角度文件类别 回顾C文件接口打开文件写文件读文件稍作修改,实现简单cat命令 输出信息到显示器,你有哪些方法stdin & stdout & stderr打开文件的方式 系统⽂件I/O⼀种传递标志位…...
