当前位置: 首页 > news >正文

【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的功能,结合硬件实现更复杂的项目!

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

相关文章:

【ESP32+MicroPython】开发环境部署

本教程将指导你如何在Visual Studio Code&#xff08;VSCode&#xff09;中设置ESP32的MicroPython开发环境。我们将涵盖从安装Python到烧录MicroPython固件的整个过程&#xff0c;以及如何配置VSCode以便与ESP32进行交互。 准备工作 安装Python 确保你的计算机上安装了Pyth…...

Vision - 开源视觉分割算法框架 Grounded SAM2 配置与推理 教程 (1)

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/143388189 免责声明&#xff1a;本文来源于个人知识与公开资料&#xff0c;仅用于学术交流&#xff0c;欢迎讨论&#xff0c;不支持转载。 Ground…...

DAY21|二叉树Part08|LeetCode: 669. 修剪二叉搜索树、108.将有序数组转换为二叉搜索树、538.把二叉搜索树转换为累加树

目录 LeetCode: 669. 修剪二叉搜索树 基本思路 C代码 LeetCode: 108.将有序数组转换为二叉搜索树 基本思路 C代码 LeetCode: 538.把二叉搜索树转换为累加树 基本思路 C代码 LeetCode: 669. 修剪二叉搜索树 力扣代码链接 文字讲解&#xff1a;LeetCode: 669. 修剪二叉搜…...

在gitlab,把新分支替换成master分支

1、备份master分支&#xff0c;可以打tag 2、删除master分支 正常情况下&#xff0c;master分支不允许删除&#xff0c;需要做两个操作才能删除 a、变更项目默认分支为非master分支&#xff0c;可以先随便选择 b、取消master为非保护分支 操作了上述两步&#xff0c;就可以删…...

使用 Spring Boot 集成 Thymeleaf 和 Flying Saucer 实现 PDF 导出

在 Spring Boot 项目中&#xff0c;生成 PDF 报表或发票是常见需求。本文将介绍如何使用 Spring Boot 集成 Thymeleaf 模板引擎和 Flying Saucer 实现 PDF 导出&#xff0c;并提供详细的代码实现和常见问题解决方案。 目录 一、项目依赖二、创建 Thymeleaf 模板三、创建 PDF 生…...

web——upload1——攻防世界

第一次做木马题目&#xff0c;有点懵逼&#xff0c;浮现一下做题思路 可以上传一个文件&#xff0c;通过学习学习到了一句话木马 一句话木马&#xff1a; 利用文件上传漏洞&#xff0c;往目标网站中上传一句话木马&#xff0c;然后你就可以在本地通过中国菜刀chopper.exe即可…...

nginx 搭建网站

1.查看防火墙状态systemctl status firewalld 2.getenforce 3.安装nginx yum install nginx -y 4.网站信息 echo "welcome to yinchuankejixuanyuan" > /usr/share/nginx/html/index.html 5.查看命令状态 nginx -t 6.重启 systemctl restart nginx...

Java基础-Java中的常用类(上)

(创作不易&#xff0c;感谢有你&#xff0c;你的支持&#xff0c;就是我前行的最大动力&#xff0c;如果看完对你有帮助&#xff0c;请留下您的足迹&#xff09; 目录 String类 创建字符串 字符串长度 连接字符串 创建格式化字符串 String 方法 System类 常用方法 方…...

气压仪器智能打气泵方案芯片SIC8833

智能打气泵方案最开始是机械式的开发&#xff0c;后来慢慢地演变成由一个气缸、压力传感器和主控芯片的开发的PCBA方案&#xff0c;它具备小体积、智能数显、预设胎压、动态测量、精准压力检测以及过充过放等功能。 其方案设计原理是利用主控芯片和压力传感器的组合设计&#x…...

软件测试(系统测试)的定位和专业:完善产品;专业;非助手;自动化

软件测试&#xff08;系统测试&#xff09;的定位 在研发流程的后端&#xff0c;测试并非无中生有的创举&#xff0c;而是从既有基础&#xff08;即“1”&#xff09;出发&#xff0c;致力于推动产品向更高层次&#xff08;即从“1”到“100”&#xff09;的跃升与完善。在这一…...

2024 CSS保姆级教程四

CSS中的动画 CSS动画&#xff08;CSS Animations&#xff09;是为层叠样式表建议的允许可扩展标记语言&#xff08;XML&#xff09;元素使用CSS的动画的模块​ 即指元素从一种样式逐渐过渡为另一种样式的过程​ 常见的动画效果有很多&#xff0c;如平移、旋转、缩放等等&#…...

PostgreSQL技术内幕17:PG分区表

文章目录 0.简介1.概念介绍2.分区表技术产生的背景3.分区类型及使用方式4.实现原理4.1 分区表创建4.2 分区表查询4.3 分区表写入4.4 分区表删除 0.简介 本文主要介绍PG中分区表的概念&#xff0c;产生分区表技术的原因&#xff0c;使用方式和其内部实现原理&#xff0c;旨在能…...

群控系统服务端开发模式-应用开发-上传工厂开发

现在的文件、图片等上传基本都在使用oss存储。而现在常用的oss存储有阿里云、腾讯云、七牛云、华为云等&#xff0c;但是用的最多的还是前三种。而我主要封装的是本地存储、阿里云存储、腾讯云存储、七牛云存储。废话不多说&#xff0c;直接上传设计图及说明&#xff0c;就一目…...

【Docker系列】指定系统平台拉取 openjdk:8 镜像

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

语音识别:docker部署FunASR以及springboot集成funasr

内容摘选自: https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_offline_zh.md FunASR FunASR是一个基础语音识别工具包&#xff0c;提供多种功能&#xff0c;包括语音识别&#xff08;ASR&#xff09;、语音端点检测&#xff08;VAD&#xf…...

Rust项目结构

文章目录 一、module模块1.文件内的module 二、模块化项目结构1.关于module2.各个模块之间互相引用 三、推荐项目结构1.实例 参考 一、module模块 1.文件内的module 关键字&#xff1a;mod 引入模块中的方法 usemod名字&#xff1a;方法名usemod名字.*写全路径 二、模块化项…...

计算并联电阻的阻值

计算并联电阻的阻值 C语言代码C代码Java代码Python代码 &#x1f490;The Begin&#x1f490;点点关注&#xff0c;收藏不迷路&#x1f490; 对于阻值为r1和r2的电阻&#xff0c;其并联电阻阻值公式计算如下&#xff1a; R1/(1/r11/r2) 输入 两个电阻阻抗大小&#xff0c;浮…...

MySQL符号类型(详细)

在 MySQL 中&#xff0c;符号可以分为几种主要类型&#xff0c;以下是所有符号类型的小写分类&#xff1a; 1. 占位符 ?&#xff1a;用于准备语句中的占位符&#xff0c;表示将来要替换的值。 2. 分隔符 ;&#xff1a;表示 sql 语句的结束。 ,&#xff1a;用于分隔列、值或…...

Angular引用控件类

说明&#xff1a; angular 在一个控件类里面&#xff0c;引入另外一个控件类&#xff0c;这样做的好处&#xff0c;就是代码分离&#xff0c;当你一个页面存在多少类似于独立的界面时&#xff0c;可以使用这种方式&#xff0c;分离代码 更好维护程序 效果图&#xff1a; step…...

stm32 踩坑笔记

串口问题&#xff1a; 问题&#xff1a;会改变接收缓冲的下一个字节 串口的初始化如下&#xff0c;位长度选择了9位。因为要奇偶校验&#xff0c;要选择9位。但是接收有用数据只用到1个字节。 问题原因&#xff1a; 所以串口接收时会把下一个数据更改...

Mac应用卸载不干净?Pearcleaner帮你彻底清理,释放存储空间

Mac应用卸载不干净&#xff1f;Pearcleaner帮你彻底清理&#xff0c;释放存储空间 【免费下载链接】Pearcleaner A free, source-available and fair-code licensed mac app cleaner 项目地址: https://gitcode.com/gh_mirrors/pe/Pearcleaner 你是否曾发现&#xff0c;…...

Mac NTFS读写终极指南:Free NTFS for Mac完整解决方案

Mac NTFS读写终极指南&#xff1a;Free NTFS for Mac完整解决方案 【免费下载链接】Free-NTFS-for-Mac Nigate: An open-source NTFS utility for Mac. It supports all Mac models (Intel and Apple Silicon), providing full read-write access, mounting, and management fo…...

SCP-Firmware缓冲区溢出漏洞(CVE-2024-9413)分析与防护

1. 漏洞概述与影响范围解析CVE-2024-9413是近期在SCP-Firmware中发现的一个高危安全漏洞&#xff0c;其核心问题在于应用程序处理器&#xff08;AP&#xff09;可能通过特定操作触发系统控制处理器&#xff08;SCP&#xff09;固件中的缓冲区溢出。这种漏洞类型在嵌入式系统安全…...

DALL·E Mini实战指南:轻量级文本生成图像的平民化落地

1. 项目概述&#xff1a;这不是“另一个AI画图工具”&#xff0c;而是一次轻量级生成式AI的平民化实践Dalle Mini Is Amazing — And You Can Use It! 这句话乍看像社交媒体上随手转发的惊叹&#xff0c;但拆开来看&#xff0c;它其实精准锚定了三个关键信息点&#xff1a;Dall…...

SQLines数据库迁移工具:从零开始的完整使用指南

SQLines数据库迁移工具&#xff1a;从零开始的完整使用指南 【免费下载链接】sqlines SQLines Open Source Database Migration Tools 项目地址: https://gitcode.com/gh_mirrors/sq/sqlines SQLines是一款功能强大的开源数据库迁移工具&#xff0c;专门用于在不同数据库…...

基于 Vibe Coding 的 OJ 平台

基于 Vibe Coding 的 OJ 平台 Github: https://github.com/wjlwjlwjlwjl-cmd/vibe-coding-based-oj-platform Gitee: https://gitee.com/wangs-joyful-home/vibe-coding-based-oj-platform 一个类 LeetCode 的在线编程评测平台&#xff0c;支持题目管理、代码提交、自动判题、提…...

茉莉花插件:5分钟解决Zotero中文文献管理三大难题

茉莉花插件&#xff1a;5分钟解决Zotero中文文献管理三大难题 【免费下载链接】jasminum A Zotero add-on to retrive CNKI meta data. 一个简单的Zotero 插件&#xff0c;用于识别中文元数据 项目地址: https://gitcode.com/gh_mirrors/ja/jasminum 还在为中文文献管理…...

Serverless多事件触发器:提升FaaS效率的关键技术

1. Serverless计算中的多事件触发器&#xff1a;突破传统FaaS的局限在当今云原生架构中&#xff0c;Serverless计算已成为构建弹性应用的重要范式。作为其核心组件的函数即服务(FaaS)平台&#xff0c;如AWS Lambda和Google Cloud Functions&#xff0c;通过事件驱动机制实现了资…...

USB外设概率性不识别问题详解

第一种情况&#xff0c;CPU主机端口下外接一个4口的扩展hub&#xff0c;但是扩展的hub端口概率性无法识别外设。如下log&#xff1a; 04-14 12:33:46.119450[ 18.884163] usb 3-1.2: new high-speed USB device number 4 using xhci-hcd 04-14 12:33:46.200327[ 18.964548]…...

昇腾CANN opbase与算子生态协作:从单一算子到完整计算图

前言 单个算子的性能再高&#xff0c;如果无法和其他算子高效协作&#xff0c;最终端到端的模型推理或训练性能也不会好。一个典型的深度学习模型包含几十到几百个算子&#xff0c;它们之间的数据流、内存分配、执行顺序都需要精心编排。opbase作为所有算子仓库的公共基础&…...