Ubuntu:VS Code IDE安装ESP-IDF【保姆级】

物联网开发学习笔记——目录索引

Visual Studio Code(简称“VS Code”)是Microsoft向开发者们提供的一款真正的跨平台编辑器。

参考:

VS Code官网:Visual Studio Code - Code Editing. Redefined

乐鑫官网:
ESP-IDF 编程指南 - ESP32   VSCode ESP-ID Extension Install

一、前提条件

Visual Studio Code IDE安装ESP-IDF扩展,需要先完成如下两个步骤:

  1. 需要先完成ESP-IDF的安装,参考:Ubuntu:ESP-IDF 开发环境配置【保姆级】
  2. 下载并安装Visual Studio Code。

下载并安装VS Code

去官网下载:Visual Studio Code - Code Editing. Redefined

我下载的版本是:code_1.83.1-1696982868_amd64.deb

Ubuntu下可以直接双击安装,或者使用如下命令安装:

sudo dpkg -i code_1.83.1-1696982868_amd64.deb

Ubuntu 上VS Code的安装非常简单

运行VSCode,并安装基础扩展插件

①:点击【Extensions】扩展图标

②:选择C/C++扩展插件,点击【Install】

二、VSCode IDE中安装ESP-IDF扩展

①:点击【Extensions】扩展图标

②:在Extensions中搜索关键字 espressifesp-idfesp32esp32s2等

③:点击【Install 】esp-idf extension

打开命令面板①点击【View】, ②选择【Command Palette】

  或者按 F1快捷键打开命令面板,在命令面板输入 : ESP-IDF: Select where to save configuration settings,用户设置、工作空间设置或工作空间文件夹设置. 获取更多信息请看Working with multiple projects ,默认是用户设置.

等待如下进度条完成 

再在命令面板输入 :ESP-IDF: Configure ESP-IDF extension,并点击选中“ESP-IDF: Configure ESP-IDF extension”

进入之后,选中【EXPRESS】 

如下界面

①选择类型乐鑫的服务器,这样下载会更快一些

②选择python工具路径:选择系统python3

③然后点击【Install】开始安装

然后,就慢慢等待安装完成

看到这个界面,恭喜您,正确的安装完成了

三、开始使用VSCode ESP-IDF

现在您已经具备了使用 VSCode ESP-IDF 的所有条件,接下来将介绍如何开始您的第一个工程。

创建工程

F1快捷键打开命令面板,在命令面板输入 :ESP-IDF: New Project

①在命令面板输入 :ESP-IDF: New Project

②选中ESP-IDF: New Project

进入New Project页面 

下面这步根据自己具体情况 

根据自己创建的项目情况选择,我使用hello_world演示 

 之后在左下角弹出提示信息,选择【Yes】

然后就创建好,并打开了新建的项目窗口 

到这一步,创建工程就完成了 

配置工程 

执行esp-idf 的menuconfig,第一次menuconfig的时间很长,耐心等待

 完成后,会自动打开【SDK Configuration editor】页面,在此页面您可以根据开发板情况修改配置项,如我的ESP32开发板flash为4M,我进入如下修改

修改完成,打开sdkconfig文件,搜索相关内容确认一下,修改是否正常生效。 

编译工程

编译非常简单,直接点击下发的ESP-IDF Build project按键即可。

第一次编译时间会比较长,耐心等待就好,后面再次编译就很快了。

烧录到开发板

直接点击下发的ESP-IDF Flash device按键即可。

  成功烧录完成提示

注意:如果烧录,注意检查串口端口号是否选择正确,和 /dev/ttyUSB*的权限。 

串口输出log

点击下发的ESP-IDF Monitor device,打开串口,check串口log输出。

到此,恭喜您已完成 VSCode 图形IDE 扩展 ESP-IDF开发环境的搭建,并可以开始ESP32的入门学习了!

=========================================================================

备注

查看开发板端口号

1. 首先电脑和开发板使用usb数据线相连

2. 查看开发板连接的端口号

Ubuntu 20.04 LTS系统默认自动usb转串口驱动程序,使用如下命令参考端口号

ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 10月 15 15:45 /dev/ttyUSB0

/dev/ttyUSB0权限问题
烧写开发板可能会出现 Failed to open port /dev/ttyUSB0 错误消息。

此时可以将用户添加至 Linux Dialout 组。

当前登录用户应当可以通过 USB 对串口进行读写操作。在多数 Linux 版本中,您都可以通过以下命令,将用户添加到 dialout 组,从而获许读写权限:

sudo usermod -a -G dialout $USER

在 Arch Linux 中,需要通过以下命令将用户添加到 uucp 组中:

sudo usermod -a -G uucp $USER

请重新登录,确保串口读写权限生效。

临时解决方法,也可以简单给对应端口添加读写权限,但是这种方法每次插拔开发板之后,需要重新下发命令:

sudo chmod a+rw /dev/ttyUSB0

串口终端程序

 PuTTY SSH Client是一款非常好用的串口终端程序,既可用于 Windows 也可用于 Linux。

可以快速直观的设置串口参数:波特率 = 115200(需要根据程序修改),数据位 = 8,停止位 = 1,奇偶校验 = N。

 

物联网开发学习笔记——目录索引_liuzl_2010的博客-CSDN博客

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

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

相关文章

c#设计模式-行为型模式 之 解释器模式

🚀简介 给定一个语言,定义它的文法表示,并定义一个解释器,这个解释器使用该标识来解释语言中的 句子。 解释器模式包含以下主要角色 抽象表达式(Abstract Expression)角色:定义解释器的接口&…

Unity之ShaderGraph如何实现边缘光效果

前言 游戏中最常用的一个效果就是边缘光了,既可以做物体的高亮效果,也可以给人物皮肤表面添加光泽。如下图所示: 实现原理 边缘光的原理就是Fresnel节点的底层逻辑。 Fresnel:菲涅尔效应是根据视角不同表面上反射率不同的效应…

同为科技TOWE智能PDU引领数据中心机房远控用电安全高效

随着数据中心的环境变得更加动态和复杂,许多数据中心都在对数据中心管理人员施加压力,要求提高可用性,同时降低成本,提升效率。新一代高密度服务器和网络设备的投入使用,增加了对更高密度机架的需求,并对整…

添加Mybatis框架支持

配置环境 1.老项目 在pom.xml中使用generate ->edit starts->添加下面俩 2.新项目 然后运行发现会有报错 2.1这是因为没有配置数据库连接信息 spring:datasource:url: jdbc:mysql://localhost:3306/java2023?characterEncodingutf8&useSSLfalse # MySQL数…

攻防演练蓝队|Windows应急响应入侵排查

文章目录 日志分析web日志windows系统日志 文件排查进程排查新增、隐藏账号排查启动项/服务/计划任务排查工具 日志分析 web日志 dirpro扫描目录,sqlmap扫描dvwa Python dirpro -u http://192.168.52.129 -b sqlmap -u "http://192.168.52.129/dvwa/vulnera…

Express入门指南(详细)

文章目录 🟢 Express⭐️ 1.初始Express✨安装✨使用Express 搭建一台服务器 ⭐️2.Express-基本路由✨1.使用字符串模式的路由路径示例:✨2.使用正则表达式的路由路径示例:✨3.中间件浅试(demo) ⭐️3.Express-中间件✨1.应用级中间件✨2.路…

特斯拉pre-test (Go)

特斯拉pre-test (Go) 1 Q12 Q23 Q3 1 Q1 原文: You are given an implementation of a function Solution that, given a positive integer N, prints to standard output another integer, which was formed by reversing a decimal repres…

PCLVisualizer显示点云的深层用法

以下代码均是在QT中使用QVTKOpenGLNativeWidget的简单教程以及案例-CSDN博客文章的基础上&#xff0c;修改按钮对应的槽函数中的程序。 1.显示文件中点云颜色属性信息&#xff0c;利用PointCloudColorHandlerRGBField得到每个点云对应的颜色。 pcl::PointCloud<pcl::PointX…

【Spring Cloud】网关Gateway的请求过滤工厂RequestRateLimiterGatewayFilterFactory

概念 关于微服务网关Gateway中有几十种过滤工厂&#xff0c;这一篇博文记录的是关于请求限流过滤工厂&#xff0c;也就是标题中的RequestRateLimiterGatewayFilterFactory。这个路由过滤工厂是用来判断当前请求是否应该被处理&#xff0c;如果不会被处理就会返回HTTP状态码为42…

Ruby和面向对象技术

Ruby和许多极为流行的编程语言都是面向对象的。多数的面向对象编程语言&#xff0c;每个对象都是一个样例或者既定类的实例以及独立对象的行为。 一、创建一个通用对象 创建一个通用对象 obj Object.new定义通用对象的行为 def obj.talk puts "I am an object"p…

分享一份适合练手的软件测试实战项目

最近&#xff0c;不少读者托我找一个能实际练手的测试项目。开始&#xff0c;我觉得这是很简单的一件事&#xff0c;但当我付诸行动时&#xff0c;却发现&#xff0c;要找到一个对新手友好的练手项目&#xff0c;着实困难。 我翻了不下一百个web网页&#xff0c;包括之前推荐练…

Pytorch从零开始实战05

Pytorch从零开始实战——运动鞋识别 本系列来源于365天深度学习训练营 原作者K同学 文章目录 Pytorch从零开始实战——运动鞋识别环境准备数据集模型选择数据可视化模型预测总结 环境准备 本文基于Jupyter notebook&#xff0c;使用Python3.8&#xff0c;Pytorch2.0.1cu118…