【ESP32+MicroPython】开发环境部署

本教程将指导你如何在Visual Studio Code(VSCode)中设置ESP32的MicroPython开发环境。我们将涵盖从安装Python到烧录MicroPython固件的整个过程,以及如何配置VSCode以便与ESP32进行交互。

准备工作

安装Python

确保你的计算机上安装了Python 3.7或更高版本。

  • 下载链接:Python官网
  • 安装时,确保勾选“Add Python to PATH”选项。

安装ESP32驱动程序

ESP32通常使用USB转串口芯片(如CP2102或CH340),需要安装相应的驱动程序。

  • CP2102驱动程序:Silicon Labs官网、网盘链接
  • CH340驱动程序:WCH官网

下载并安装相应的驱动程序后,重启计算机。

安装esptool.py

esptool.py是一个用于与ESP32进行烧录的工具。可以通过以下命令在终端(命令提示符或PowerShell)中安装:

pip install esptool

下载MicroPython固件

访问MicroPython的ESP32固件页面下载适合你ESP32型号的最新固件(.bin文件)。

查看端口号

要查找ESP32的串口号,你可以按照以下步骤操作:

Windows系统

连接ESP32:将ESP32通过USB线连接到计算机。

打开设备管理器

  • 右键点击“开始”按钮,选择“设备管理器”。

查找串口

  • 在设备管理器中,展开“端口 (COM & LPT)”部分,你应该能看到类似“COM3”或“COM4”的条目,后面的数字就是ESP32的串口号。

macOS系统

连接ESP32:将ESP32通过USB线连接到计算机。

打开终端:在“应用程序”->“实用工具”中找到“终端”并打开。

查看串口

  • 输入以下命令并按回车:

    ls /dev/tty.*
    
  • 查找类似/dev/tty.SLAB_USBtoUART/dev/tty.wchusbserialxxxx的条目,这些就是连接的串口设备。

Linux系统

连接ESP32:将ESP32通过USB线连接到计算机。

打开终端

查看串口

  • 输入以下命令并按回车:

    ls /dev/ttyUSB* /dev/ttyACM*
    
  • 找到输出中的类似/dev/ttyUSB0/dev/ttyACM0的条目,这些就是ESP32的串口号。

注意事项

  • 如果设备没有显示在设备管理器或终端中,检查USB线是否连接正常,或者尝试更换USB端口或USB线。
  • 在某些情况下,可能需要安装或更新USB驱动程序以确保ESP32能够被计算机识别。

烧录MicroPython固件

将ESP32连接到计算机,通过USB线连接后,确认计算机能识别到设备。

打开终端,并查找ESP32的串口号(在Windows上通常是COMx(x指数字),在Linux或macOS上是/dev/ttyUSBx/dev/tty.wchusbserialxxxx)。

执行以下命令烧录固件(请根据你的固件路径和串口号进行修改):

esptool --port COMx erase_flash
esptool --port COMx --baud 115200 write_flash -z 0x1000 <path_to_your_firmware.bin>

替换COMx为你的串口号,<path_to_your_firmware.bin>为下载的固件文件路径。

配置Visual Studio Code

安装VSCode

如果尚未安装,请访问VSCode官网下载并安装。

安装Python扩展

在VSCode中,打开扩展视图(快捷键:Ctrl+Shift+X),搜索并安装“Python”扩展,以便于代码编辑和调试。

安装Pymakr插件

Pymakr是一个VSCode插件,能够方便地与MicroPython设备进行交互。

  • 在扩展视图中搜索“Pymakr”并安装。
  • 安装完成后,在VSCode中打开Pymakr设置(Ctrl + Shift + P,输入“Pymakr”)。

连接ESP32

确保ESP32已连接并识别到串口后,在VSCode中按下Ctrl + Shift + P,输入“Pymakr: Connect”来连接ESP32。

编写和上传代码

创建一个新的Python文件(如main.py),在其中编写MicroPython代码。例如,简单的LED闪烁程序:

from machine import Pin
import timeled = Pin(2, Pin.OUT)  # GPIO2为内置LED引脚while True:led.on()time.sleep(1)led.off()time.sleep(1)

上传代码到ESP32。在VSCode中,按下Ctrl + Shift + P,输入“Pymakr: Upload”,选择你要上传的文件。

打开串口监视器。按下Ctrl + Shift + P,输入“Pymakr: Open Serial Monitor”,查看ESP32的输出。

引脚图

img

总结

通过本教程,你已经成功在Visual Studio Code中配置了ESP32的MicroPython开发环境。你现在可以编写、上传代码,并与ESP32进行交互。后续可以探索更多MicroPython的功能,结合硬件实现更复杂的项目!

如果在设置过程中遇到问题,随时欢迎提问!

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

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

相关文章

前端Nginx的安装与应用

目录 一、前端跨域方式 1.1、CORS(跨域资源共享) 1.2、JSONP(已过时) 1.3、WebSocket 1.4、PostMessage 1.5、Nginx 二、安装 三、应用 四、命令 4.1、基本操作命令 4.2、nginx.conf介绍 4.2.1、location模块 4.2.2、反向代理配置 4.2.3、负载均衡模块 4.2.4、通…

mysql之命令行基础指令

一&#xff1a;安装好mysql后&#xff0c;注册好账号密码。 二&#xff1a;在命令行进行登录的指令如下 mysql -u用户名 -p 例如&#xff1a;mysql -uroot -p; 然后按下回车&#xff0c;进入输入密码。 三&#xff1a;基本指令&#xff1a; 1&#xff1a;查看当前账户的所有…

小白直接冲!BiTCN-BiLSTM-Attention双向时间卷积双向长短期记忆神经网络融合注意力机制多变量回归预测

小白直接冲&#xff01;BiTCN-BiLSTM-Attention双向时间卷积双向长短期记忆神经网络融合注意力机制多变量回归预测 目录 小白直接冲&#xff01;BiTCN-BiLSTM-Attention双向时间卷积双向长短期记忆神经网络融合注意力机制多变量回归预测效果一览基本介绍程序设计参考资料 效果一…

论文概览 |《IJGIS》2024.09 Vol.38 issue9

本次给大家整理的是《International Journal of Geographical Information Science》杂志2024年第38卷第9期的论文的题目和摘要&#xff0c;一共包括9篇SCI论文&#xff01; 论文1 A movement-aware measure for trajectory similarity and its application for ride-sharing …

青少年编程能力等级测评CPA Python编程(一级)

青少年编程能力等级测评CPA Python编程(一级) &#xff08;考试时间90分钟&#xff0c;满分100分&#xff09; 一、单项选择题&#xff08;共20题&#xff0c;每题3.5分&#xff0c;共70分&#xff09; 下列语句的输出结果是&#xff08; &#xff09;。 print(35*2) A&a…

Linux网络命令:它用于实时监控网络接口的状态变化的命令 ip monitor详解

目录 一、概述 二、使用 1、语法 2、对象类型 3、常用选项 4、获取帮助 三、 示例 1. 监视链路层变化 2. 监视所有的网络变化 3. 仅监视路由表的变化 4. 监视特定网络接口的状态变化&#xff1a; 5. 监视网络接口地址的变化 四、实际应用 五、其他事项 一、概述 …

从APP小游戏到Web漏洞的发现

一、前因&#xff1a; 在对一次公司的一个麻将游戏APP进行渗透测试的时候发现&#xff0c;抓到HTTP请求的接口&#xff0c;但是反编译APK后发现没有在本身发现任何一个关于接口或者域名相关的关键字&#xff0c;对此感到了好奇。 于是直接解压后everything搜索了一下&#xff…

【JavaSE】(2) 方法

一、认识方法 1. 方法的定义 修饰符 返回类型 方法名(形参类型 形参名, ......){......return 返回值; } 示例代码&#xff1a; 2. 方法的作用 增强代码的可复用性。&#xff08;避免重复造轮子&#xff09;增强代码的易管理性。&#xff08;改方法就行&#xff0c;不用到处…

柯桥零基础学日语日语培训中为什么不说「ご客様」而是「お客様」?

宝子们是不是经常会看到&#xff0c;很多日语单词前面都有假名「お」或「ご」。 但是又总弄不明白为什么要用「お」、「ご」&#xff0c;用哪个更合适&#xff1f; 今天我们就来好好地扒一扒吧~ 在日语中「お・ご」这样的接头词很常见&#xff0c;一般用来表示美化。 美化语的…

【Linux】简易版shell

文章目录 shell的基本框架PrintCommandLineGetCommandLineParseCommandLineExecuteCommandInitEnvCheckAndExecBuildCommand代码总览运行效果总结 shell的基本框架 要写一个命令行我们首先要写出基本框架。 打印命令行获取用户输入的命令分析命令执行命令 基本框架的代码&am…

Git 概述及相关命令(1)

Git概述 Git是一个强大的分布式版本控制系统&#xff0c;广泛用于代码管理和协作开发。 仓库&#xff08;Repository&#xff09;: 存储项目文件及其历史记录的地方&#xff0c;分为本地仓库和远程仓库。工作区&#xff08;Working Directory&#xff09;: 用户当前工作文件所…

Java栈和队列的快速入门

栈和队列 一、栈 Stack1、概念2、基本操作3、常用方法4、举例5、分析 二、队列1、概念2、常用方法3、举例4、分析&#xff1a; 三、力扣算法快速入门232. 用栈实现队列225. 用队列实现栈 感谢 一、栈 Stack 1、概念 在 Java 中&#xff0c;栈&#xff08;Stack&#xff09;是…

docker 可用镜像服务地址(2024.10.31亲测可用)

1.错误 Error response from daemon: Get “https://registry-1.docker.io/v2/” 原因&#xff1a;镜像服务器地址不可用。 2.可用地址 编辑daemon.json&#xff1a; vi /etc/docker/daemon.json内容修改如下&#xff1a; {"registry-mirrors": ["https://…

【MySQL】深层理解索引及特性(重点)--下(12)

索引&#xff08;重点&#xff09; 1. 索引的作用2. 索引操作2.1 主键索引2.1.1 主键索引的特点2.1.2 创建主键索引 2.2 唯一键索引2.2.1 唯一键索引的特点2.2.2 唯一索引的创建 2.3 普通索引2.3.1 普通索引的特点2.3.2 普通索引的创建 2.4 全文索引2.4.1 全文索引的作用2.4.2 …

临街矩阵乘以自己转置的含义

总结: 临街矩阵* 邻接矩阵转置的(i,j) 位置表示有多少种线路从元素A跳转一条边最终落到元素j的路线. 这个也叫1_degree.

A010-基于SpringBoot的宠物健康咨询系统的设计与实现

&#x1f64a;作者简介&#xff1a;在校研究生&#xff0c;拥有计算机专业的研究生开发团队&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取&#xff0c;记得注明来意哦~&#x1f339; 赠送计算机毕业设计600…

DP3复现基础知识(一)—— Hydra 库

DP3 无论是 train 还是 eval 均使用了 Hydra 这一个python 库&#xff0c;这就有些代码在看的时候难以理解其通讯逻辑&#xff0c;例如&#xff1a; hydra.main(version_baseNone,config_pathstr(pathlib.Path(__file__).parent.joinpath(diffusion_policy_3d, config)) ) Hy…

记单词,不要迷信一种方法

记单词&#xff0c;不要迷信一种方法。因为&#xff0c;记单词的目的&#xff0c;就是记住单词呀。 哪一种方法能让你记住&#xff0c;快速、高效、长久地记住&#xff0c;你就使用哪种方法&#xff1b;而且&#xff0c;方法和方法之间&#xff0c;不见得是矛盾的呀。 我们举个…

【自动化利器】12个评估大语言模型(LLM)质量的自动化框架

LLM评估是指在人工智能系统中评估和改进语言和语言模型的过程。在人工智能领域&#xff0c;特别是在自然语言处理&#xff08;NLP&#xff09;及相关领域&#xff0c;LLM评估具有至高无上的地位。通过评估语言生成和理解模型&#xff0c;LLM评估有助于细化人工智能驱动的语言相…

IO流篇(一、File)

目录 一、学习前言 二、文件简介 三、文件使用 1. 绝对路径 vs 相对路径 2. 路径分隔符 3. 属性&#xff08;字段&#xff09; 4. 构造方法 5. 常用方法 5.1. 获取文件的相关信息 5.2. 判断功能 5.3. 新建和删除 5.4. 文件的获取 5.5. 重命名文件 四、文件使用练习…