01. 如何配置ESP32环境?如何开发ESP32?

0. 前言

         此文章收录于《ESP32学习笔记》专栏,此专栏会结合实际项目记录作者学习ESP32的过程,争取每篇文章能够将细节讲明白,会应用。


 1. 安装IDE:Thonny

        后续项目中我们都是使用pythont语言,而thonny工具能很好的支撑ESP32项目的开发。Thonny是一个专为Python初学者设计的集成开发环境(IDE),它支持多种操作系统,包括Windows、Linux和macOS。以下是Thonny编辑器的一些特点:

  1. 用户友好:Thonny具有简洁直观的用户界面,非常适合初学者学习和使用Python。
  2. 跨平台:提供Windows、Linux及macOS版本,方便不同系统的用户进行编程工作。
  3. MicroPython支持:自Thonny 3.2版本起,开始支持MicroPython开发,这对于ESP32等微控制器的编程尤为重要。
  4. 易于安装:可以通过官网下载安装包,按照指引完成安装过程。
  5. 集成调试工具:内置了调试工具,可以帮助开发者更有效地找到并修复代码中的错误。
  6. 实时反馈:在编写代码时,Thonny能够即时显示变量和内存中的值,帮助初学者理解程序的执行流程。
  7. 适合教育:由于其简单易用的界面和功能,Thonny常被用于教育领域,帮助学生学习编程。
  8. 硬件支持:为了在ESP32上运行Python代码,需要下载并安装MicroPython固件到开发板上。https://pan.baidu.com/share/init?surl=zRzOdkabOrSwhOvEUEIM_w

        Thonny工具下载地址:百度网盘 请输入提取码,提取码:2a3h

2. 安装驱动

        驱动下载链接:https://pan.baidu.com/s/14fTCiM2IVTt07uW6IbrzJw  提取码:aolp

        通过上述连接下载和安装驱动,如果你的电脑上之前安装过CP2102 USB转UART的驱动,你在设备管理器界面能够看到相应的串口。如果没有安装过,可根据上面的连接下载安装。

        安装包解压后,双击exe文件直接安装,一路next就可以,等待扫描安装结束。然后拔掉USB重新插入,档看到下图这样的端口时,则表示驱动安装成功了。

3. 安装microPython解释器

        我们可以访问micropython官网下载解释器,地址:https://micropython.org/download/ESP32_GENERIC/

        如果你打不开上面的连接,也可以从我的百度网盘下载:https://pan.baidu.com/s/1LMgmcg5oz9evMwAIipBF5Q 
提取码:kyjz

        我们按照下图的指示配置micropython解释器,只有给单板安装解释器之后,我们才能够将编写好的python程序烧录、运行在ESP32单板上。 

 

        当我们第一次安装解释器时,会自动联网在线安装,如果安装不成功,我们会在左下角看到Error按钮,此时我们可以按照下图的配置选择手动安装:

        我们按照上述图片配置完成后,点击安装按钮,等待安装完成: 

 在Thonny的shell框里,我们也可以看到,此时我们选用的是ESP32板载的microPyhon解释器。

我们简单写个程序:


****** 感谢你看到这里,如果不建议,帮忙点赞、关注~ ******

****** 希望此文能帮助到你 ******

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Mongodb入门到入土,安装到实战,外包半年学习的成果

这是我参与「第四届青训营 」笔记创作活动的的第27天,今天主要记录前端进阶必须掌握内容Mongodb数据库,从搭建环境到运行数据库,然后使用MongodB; 一、文章内容 数据库基础知识关系型数据库和非关系型数据库为什么学习Mongodb数据库环境搭建及运行MongodbMongodb命…

React生命周期新旧对比

组件从创建到死亡,会经过一些特定的阶段React组件中包含一系列钩子函数{生命周期回调函数},会在特定的时刻调用我们在定义组件的时候,会在特定的声明周期回调函数中,做特定的工作。旧生命周期总结 旧的生命周期分为三个阶段 1 初…

Nacos部署(三)Docker部署Nacos2.3单机环境

😊 作者: 一恍过去 💖 主页: https://blog.csdn.net/zhuocailing3390 🎊 社区: Java技术栈交流 🎉 主题: Nacos部署(三)Docker部署Nacos2.3单机环境 ⏱️…

SQLiteC/C++接口详细介绍sqlite3_stmt类(六)

返回:SQLite—系列文章目录 上一篇:SQLiteC/C接口详细介绍sqlite3_stmt类(五) 下一篇: SQLiteC/C接口详细介绍sqlite3_stmt类(七) 17. sqlite3_clear_bindings函数 sqlite3_clear_bindings函…

从零开始学习在VUE3中使用canvas(五):globalCompositeOperation(图形混合)

一、简介 通过设置混合模式来改变图像重叠区域的显示方式。 const ctx canvas.getContext("2d");ctx.globalCompositeOperation "source-over"; 二、属性介绍 source-over 这是默认的复合操作。将源图像绘制到目标图像上,保留目标图像的不透…

通过jsDelivr实现Github的图床CDN加速

最近小伙伴们是否发现访问我的个人博客http://xiejava.ishareread.com/图片显示特别快了? 我的博客的图片是放在github上的,众所周知的原因,github访问不是很快,尤其是hexo博客用github做图床经常图片刷不出来。一直想换图床&…

牛客NC108 最大正方形【中等 动态规划 Java,Go,PHP】

题目 题目链接: https://www.nowcoder.com/practice/0058c4092cec44c2975e38223f10470e 思路 动态规划: 先初始化第一行和第一列。然后其他单元格依赖自己的上边,左边和左上角参考答案Java import java.util.*;public class Solution {/*** 代码中的类…

【Docker】golang操作容器使用rename动态更新容器的名字

【Docker】golang操作容器使用rename动态更新容器的名字 大家好 我是寸铁👊 总结了一篇golang操作容器使用rename动态更新容器的名字✨ 喜欢的小伙伴可以点点关注 💝 前言 今天遇到一个新的需求,要动态改变运行中的容器名字。 可以考虑先把…

OpenLayers基础教程——WebGLPoints中要素样式的设置方法解析

1、前言 前一篇博客介绍了如何在OpenLayers中使用WebGLPoints加载海量数据点的方法,这篇博客就来介绍一下WebGLPoints图层的样式设置问题。 2、样式运算符 在VectorLayer图层中,我们只需要创建一个ol.style.Style对象即可,WebGLPoints则不…

静态综合实验

一.搭建拓扑结构 1.根据拓扑结构可以把网段分成14个网段,根据192.168.1.0/24可以划分出ip地址和环回地址 其中环回r1分别是 192.168.1.32/27 192.168.1.32/28 192.168.1.48/28 2.划分完后如图: 二.配置IP地址 注意:为了避免错误&#…

业务服务:xss攻击

文章目录 前言一、使用注解预防1. 添加依赖2. 自定义注解3. 自定义校验逻辑4. 使用 二、使用过滤器1. 添加配置2. 创建配置类3. 创建过滤器4. 创建过滤器类5. 使用 前言 xss攻击时安全领域中非常常见的一种方法,保证我们的系统安全是非常重要的 xss攻击简单来说就…

JavaSE:实现象棋游戏

文章目录 1. 每日一言2. 游戏内容介绍3. 代码介绍4. 全部代码4.1 MainFream4.2 GamePanel4.3 ChessFactory4.4 Bing4.5 Boss4.6 Che4.7 Chess4.8 Ma4.9 Pao4.10 Shi4.11 Xiang 结语 1. 每日一言 Every cloud has a silver lining. 天无绝人之路。 2. 游戏内容介绍 象棋是一种…

‘str‘ object has no attribute ‘decode‘

跑别人代码的时候遇到一个问题 print(f"{gpu_device_name.decode(utf-8)} is allocated sucessfully at location: {gpu_device_location}")结果就报错了 解决问题如下 aa "adfd"aa.decode(utf-8)结果如下 aa "adfd" aa.encode().decode(ut…

初识进程的地址空间、页表

一、&#x1f31f;问题引入 &#x1f6a9;代码一&#xff1a; #include<stdio.h>#include<unistd.h>int g_val100;int main(){pid_t idfork();if(id0){//子进程while(1){printf("I am a child pid:%d ppid:%d g_val:%d\n",getpid(),getppid(),g_val);…

# Maven Bom 的使用

Maven Bom 的使用 文章目录 Maven Bom 的使用概述BOM特点优点缺点 MavenMaven 安装安装步骤settingx.ml常用仓库地址Idea 使用maven常见坑 SpringBoot 项目Bom使用案例项目结构主项目 zerocode-back-servezc-dependency&#xff08;第三方jar管理&#xff09;子模块zc-serve子模…

【保姆级教程】YOLOv8目标检测:训练自己的数据集

一、YOLOV8环境准备 1.1 下载安装最新的YOLOv8代码 仓库地址&#xff1a; https://github.com/ultralytics/ultralytics1.2 配置环境 pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple二、数据准备 2.1 安装labelme标注软件 pip install label…

2024阿里云2核2G服务器租用价格99元和61元一年

阿里云2核2G服务器配置优惠价格61元一年和99元一年&#xff0c;61元是轻量应用服务器2核2G3M带宽、50G高效云盘&#xff1b;99元服务器是ECS云服务器经济型e实例ecs.e-c1m1.large&#xff0c;2核2G、3M固定带宽、40G ESSD entry系统盘&#xff0c;阿里云活动链接 aliyunfuwuqi.…

[STM32] Keil MDK 新建工程编译不通过(warning: #2803-D和Error: L6218E)解决方法备忘

按照野火的PDF教程的第4章&#xff1a;[野火]《RT-Thread 内核实现与应用开发实战—基于STM32》.pdf 新建 Keil MDK 工程&#xff0c;工程设置完成后点击编译按钮&#xff0c;编译不通过&#xff1a; RTE\Device\ARMCM3\startup_ARMCM3.c(75): warning: #2803-D: unrecognize…

JVM快速入门(1)JVM体系结构、运行时数据区、类加载器、线程共享和独享、分区、Java对象实例化

5.1 JVM体系结构 线程独占区-程序计数器&#xff08;Program Counter Register&#xff09; 程序计数器是一块较小的内存空间&#xff0c;它可以看做是当前线程所执行的字节码的行号指示器&#xff1b;在虚拟机的概念模型里&#xff0c;字节码解释器工作时就是通过改变这个计数…

C++:练习题

一、构造、析构顺序 C c; int main() {A a;B b;static D d;return 0; } //构造顺序&#xff1a;C A B D //析构顺序&#xff1a;~B ~A ~D ~C 二、拷贝构造次数 以下代码共调用多少次拷贝构造&#xff1f; Widget f(Widget u) //第一次&#xff1a;传值拷贝构造 {Widget v(u…