使用VSCode+PlatformIO搭建ESP32开发环境
Arduino IDE本来就是为创客们开发的,虽然没代码提示功能,文件的关系也不清晰,函数不能跳转,头文件也打不开,但人家的初衷就是为了简单而生的;但还是有一些同学喜欢高级点的IDE,也没问题,在VScode中安装PlatformIO IDE插件能满足你的所有要求。
一、什么是PlatformIO

PlatformIO 是一个用于物联网开发的开源生态系统。它提供跨平台的开发环境和统一的调试器,还支持远程单元测试和固件更新,曾经获得过IOT最佳开发软件和工具奖,支持1000+以上的开发板以及50多个开发平台,还有12000+的库,让开发人员不必要浪费时间在环境搭建上,可以更多时间的去写自己的逻辑,配合VScode的文件管理以及友好的界面,简直是嵌入式界的开发神器!
二、安装vscode:点击下载

三、安装Python环境:点击下载

四、安装PlatformIO插件
启动VSCode,在左边的的扩展应用中搜索PlatformIO,点击安装即可,安装过程如果需要安装其他扩展插件,就默认安装就好了,这个安装不会很久,等到提示安装成功之后,重启VScode。


五、使用PlatformIO
我们发现左边多了一个新的插件图标,我们点击一下
然后点击PIO Home的Open -> 再右边点击新建项目,我们填写我们的项目名称等信息
这里建一个ESP32Code的工程,板子搜索ESP32然后选择ESpressif ESP32 Dev Module这个最常规的板子,框架就选择Arduino,之后点击Finish新建项目。



这个时候会下载开发所需的所有文件,编译工具,各种依赖自动搞定
下载完成后如图:

然后我们在src文件夹下的main.cpp中写入以下代码(语法跟Arduino一模一样,直接复制Arduino的程序过来即可。)
#include <Arduino.h>void setup() { // put your setup code here, to run once://初始化串口Serial.begin(9600);
}void loop() { // put your main code here, to run repeatedly:Serial.println("My First PIO Project!");delay(1000);
}
六、如何编译下载
VScode最下面有几个图标,如图所示:
一个对号的就是编译的
向右箭头的就是下载的
最右边有个小插头那个就是输出监视器的,我们可以用它来查看串口的输出数据。

注意:我们启动串口监视器的时候,默认是9600波特率的,所以我们需要在配置文件platformio.ini添加一行配置信息monitor_baud = 115200,就可以正常输出了

觉得有用记得一键三连哟!!!
相关文章:
使用VSCode+PlatformIO搭建ESP32开发环境
Arduino IDE本来就是为创客们开发的,虽然没代码提示功能,文件的关系也不清晰,函数不能跳转,头文件也打不开,但人家的初衷就是为了简单而生的;但还是有一些同学喜欢高级点的IDE,也没问题…...
使用flask返回json格式的数据
Flask Flask是一个使用Python编写的轻量级Web框架,它的设计理念是保持简单、灵活和易扩展。它的核心是Werkzeug和Jinja2,并且它本身只提供了非常基础的Web框架功能,例如路由和请求处理等。 使用Flask可以快速创建一个Web应用程序,…...
如何排查java 内存溢出OutOfMemoryError?
当使用Spring Boot进行文件上传时,文件会被读取到内存中进行处理。如果上传的文件较大,会占用大量的内存空间,从而导致内存溢出(OutOfMemory)问题。以下是一些建议的排查方案: 调整 JVM 内存设置ÿ…...
Prometheus环境搭建和认识
Prometheus 环境搭建 1.prometheus 简介 Prometheus是基于go语言开发的一套开源的监控、报警和时间序列数据库的组合,是由SoundCloud公司开发的开源监控系统,Prometheus于2016年加入CNCF(Cloud Native Computing Foundation,云原生计算基金…...
openGauss学习笔记-130 openGauss 数据库管理-参数设置-重设参数
文章目录 openGauss学习笔记-130 openGauss 数据库管理-参数设置-重设参数130.1 背景信息130.2 GUC参数设置130.3 操作步骤130.4 示例 openGauss学习笔记-130 openGauss 数据库管理-参数设置-重设参数 130.1 背景信息 openGauss提供了多种修改GUC参数的方法,用户可…...
每日OJ题_算法_双指针_力扣11. 盛最多水的容器
力扣11. 盛最多水的容器 11. 盛最多水的容器 - 力扣(LeetCode) 难度 中等 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成…...
数据仓库
一. 各种名词解释 1.1 ODS是什么? ODS层最好理解,基本上就是数据从源表拉过来,进行etl,比如mysql 映射到hive,那么到了hive里面就是ods层。 ODS 全称是 Operational Data Store,操作数据存储.“面向主题的…...
Redis常用操作及应用(一)
一、五种数据结构 二、String结构 1、字符串常用操作 SET key value //存入字符串键值对 MSET key value [key value ...] //批量存储字符串键值对 SETNX key value //存入一个不存在的字符串键值对 GET key //获取一个字符串键值 MGET key [ke…...
数据结构-树
参考:https://www.hello-algo.com/chapter_tree/binary_tree/#711 1. 介绍 树存储不同于数组和链表的地方在于既可以保证数据检索的速度,又可以保证数据插入删除修改的速度,二者兼顾。 二叉树是一种很重要的数据结构,是非线性的…...
解决ElementUI时间选择器回显出现Wed..2013..中国标准时间.
使用饿了么组件 时间日期选择框回显到页面为啥是这样的? 为什么再时间框中选择日期,回显页面出现了这种英文格式呢???? 其实这个问题直接使用elementui的内置属性就能解决 DateTimePicker 日期时间选择…...
从0到0.01入门 Webpack| 004.精选 Webpack面试题
🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…...
MacOS “xxxxx“,已损坏,无法打开,你应该将它移到废纸篓
在这里插入图片描述 解决方案 应用程序 - 实用工具中打开终端,输入命令, sudo xattr -r -d com.apple.quarantine 然后将程序拖放至命令窗口,如下图:...
每日一题:LeetCode-103/107.二叉树的(层序/锯齿形层序)遍历
每日一题系列(day 04) 前言: 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🔎…...
webpack配置自动压缩图片
手动压缩图片 图片压缩是很重要的前端优化,一般可以选择手动压缩 手动压缩网站 webpack压缩图片 这里记录借助webpack的image-webpack-loader实现自动压缩图片 项目是create-react-app搭建的,webpack5.64.4 1、安装相应loader npm i image-webpack…...
基于单片机预费电表控制系统(proteus仿真+源程序)
一、系统方案 1、本设计采用这51单片机作为主控器。 2、采集电量值送到液晶1602显示。 3、按键设置预设值,实际使用电量超过设置,蜂鸣器报警。 二、硬件设计 原理图如下: 三、单片机软件设计 1、首先是系统初始化 void LCD_init(void) { …...
【报错栏】(Vue) Invalid handler for event “click“: got undefined
Property or method "add" is not defined on the instance but referenced during render. 翻译: 属性或方法“add”未在实例上定义,但在渲染期间引用。 Invalid handler for event "click": got undefined 翻译: …...
单片机、ARM、嵌入式开发、Android 底层开发有什么关系?
单片机、ARM、嵌入式开发、Android 底层开发有什么关系? 从我目前的见识来看: 单片机是个系统(比如:51、AVR、PLC...),其中包含了去除了输入输出之外的运算器、控制器、存储器,我们用程序可以非…...
Java中static、final、static final的区别
文章目录 finalstaticstatic final final final可以修饰:属性,方法,类,局部变量(方法中的变量) final修饰的属性的初始化可以在编译期,也可以在运行期,初始化后不能被改变。 final修…...
文章解读与仿真程序复现思路——电力系统自动化EI\CSCD\北大核心《交直流配电网中柔性软开关接入的规划-运行协同优化方法》
这个标题涉及到交直流配电网中柔性软开关接入的规划-运行协同优化方法。下面是对这个标题各部分的详细解读: 交直流配电网: 这指的是一个电力系统,同时包含交流和直流电力传输的元素。这样的系统可能结合了传统的交流电力传输和近年来兴起的直…...
OSG文字-osgText3D(5)
osgText3D 三维立体文字比二维平面文字显示效果更好,相对二维平面文字,它有非常好的立体显示效果。 在实际虚拟现实项目中,过多使用三维立体文字会降低染效率,加重渲染负担,相对平面二维文字,它占用的内存是…...
从Hi Siri到小爱同学:聊聊手机里那个‘竖着耳朵’的语音唤醒(KWS)是怎么省电的
从Hi Siri到小爱同学:揭秘语音唤醒技术如何为智能设备省电 清晨六点半,床头柜上的手机屏幕突然亮起——"今天天气怎么样?"你闭着眼睛问道。三秒后,一个温和的女声开始播报当日气温和降水概率。这个看似简单的交互背后&a…...
Node 18 网络导入新特性:从HTTP/HTTPS URL直接加载ES模块
1. Node 18网络导入功能初探 最近在Node.js社区里有个让人兴奋的新消息:Node 18引入了一个实验性功能,允许开发者直接从HTTP/HTTPS URL导入ES模块。这个功能看似简单,但实际上解决了不少开发中的痛点。想象一下,你不再需要把远程的…...
从配置文件到配置类:Spring Boot Security 的权限控制演进
1. Spring Security 的配置文件时代 记得我第一次用 Spring Security 是在五年前的一个内部管理系统项目上。当时为了快速上线,直接在 application.yml 里写死了用户名密码,就像这样: spring:security:user:name: adminpassword: 123456roles…...
PPTAgent:3分钟用AI生成专业演示文稿,告别繁琐的手工制作
PPTAgent:3分钟用AI生成专业演示文稿,告别繁琐的手工制作 【免费下载链接】PPTAgent An Agentic Framework for Reflective PowerPoint Generation 项目地址: https://gitcode.com/gh_mirrors/pp/PPTAgent 你是否曾为制作演示文稿而烦恼ÿ…...
Snipe-IT开源IT资产管理系统:从混乱到有序的企业级解决方案
Snipe-IT开源IT资产管理系统:从混乱到有序的企业级解决方案 【免费下载链接】snipe-it A free open source IT asset/license management system 项目地址: https://gitcode.com/GitHub_Trending/sn/snipe-it 在IT运维的日常工作中,你是否经常面临…...
终极指南:如何快速掌握OpenBoardView开源电路板查看器的完整使用技巧
终极指南:如何快速掌握OpenBoardView开源电路板查看器的完整使用技巧 【免费下载链接】OpenBoardView View .brd files 项目地址: https://gitcode.com/gh_mirrors/op/OpenBoardView 你是否曾为复杂的电路板文件分析而烦恼?面对密密麻麻的元器件布…...
STM32 FOC电机库PID调参避坑指南:为什么你的定点参数调不好?
STM32 FOC电机库PID调参避坑指南:为什么你的定点参数调不好? 调试电机控制系统的PID参数就像在给一台精密仪器做微创手术——参数调整的每一个细节都可能影响最终性能表现。对于使用STM32 FOC电机库的工程师来说,定点PID参数的调试尤其考验技…...
从SGD到Adam:深度学习优化器演进之路与实战选型指南
1. 优化器:深度学习的隐形引擎 第一次训练神经网络时,我盯着损失曲线像过山车一样上蹿下跳,差点以为代码写错了。后来才发现,问题出在那个不起眼的优化器参数上。优化器就像深度学习模型的导航系统,它决定了模型参数如…...
利用TIGRAMITE进行时间序列因果分析:从数据准备到可视化全流程
1. TIGRAMITE入门:时间序列因果分析利器 第一次接触TIGRAMITE是在分析气象数据时,当时需要找出温度、湿度、风速之间的因果关系链。这个Python包让我眼前一亮——它不仅能自动识别变量间的因果方向,还能精确捕捉时间滞后效应。TIGRAMITE基于…...
如何快速掌握Path of Building:流放之路离线构建规划终极指南
如何快速掌握Path of Building:流放之路离线构建规划终极指南 【免费下载链接】PathOfBuilding Offline build planner for Path of Exile. 项目地址: https://gitcode.com/GitHub_Trending/pa/PathOfBuilding Path of Building是《流放之路》玩家必备的离线…...
