使用IDF和VSCode构建ESP32的开发环境

目录

概述

1 安装ESP32开发环境IDF

1.1 下载软件

1.2 安装软件

1.3 配置环境参数

1.4 VSCode中配置IDF插件

1.5 配置烧写代码方式

2 在使用vscode创建工程

2.1 创建工程模版

2.2 工程目录介绍

3 编译和下载

3.1 认识 VSCode下idf编译环境

3.2 编译代码

3.2.1 认识output

3.2.2 DRAM和IRAM

3.3 下载代码


概述

本文主要介绍构建使用IDF和VS-CODE 工具构建ESP32的开发环境的详细步骤,还应用IDF和VS CODE创建ESP32的项目文件,并实现编译和下载功能。

1 安装ESP32开发环境IDF

1.1 下载软件

软件下载地址:

https://dl.espressif.cn/dl/esp-idf/

官方文档地址

https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/hw-reference/esp32/get-started-devkitc.html#get-started-esp32-devkitc-board-front

官方主页地址

https://www.espressif.com.cn/zh-hans/products/socs/esp32

选择安装版本的时候要注意:stable 说明该版本是稳定版本,它已经被测试,证明其可靠性没有问题,才会发发布出来,安装的时候要选择这类软件。

在Windows上安装IDF,选择如下版本:

1.2 安装软件

下载软件后,点右键选择 admistrater ,安装软件

点击是按钮,软件会自动修复这个问题:

提示修复成功,可进行下一步操作:

出现如下UI,说明IDF安装成功:

点击完成按钮,UI会自动跳出power shell,此时说明编译环境也安装完成了

1.3 配置环境参数

变量地址说明
D:\tools\Espressifidf软件的安装目录
D:\tools\Espressif\frameworks\esp-idf-v5.2.1对应v5.2.1的库文件

1.4 VSCode中配置IDF插件

打开VS Code软件, 然后按下快捷键“Ctrl+Shift+X”进入应用商城,在搜索栏下搜索EspressifIDF 插件 :

点击install后,看见IDF正在安装:

出现如下界面,说明安装已经完成:

1.5 配置烧写代码方式

选择UART

2 在使用vscode创建工程

2.1 创建工程模版

打开一个新的vccode窗口,在键盘上按下: Ctrl +shift + P, 选择如下选项,创建工程:

选择该选项后,还需要配置如下信息,配置完成后,点击choose Template

点击choose Template ,选择sample_project, 然后系统会自动生成一个空的工程

模版项目目录结构如下:

2.2 工程目录介绍

使用VSCode创建工程后,在工程所在的目录中会生成如下这些文件和目录:

目录/文件名描述
.devcontainer和Docker相关的配置文件(系统自动生成,不需要用户修改)
.vscode和vscode相关的配置文件(系统自动生成,不需要用户修改)
build编译项目文件(编译项目后会自动生成,不需要用户修改)
main主程序目录,系统自动生成的代码
prj项目开发目录,可以放入和项目相关的代码
user用户数据
CMakeLists.txtCMake配合文件,用于构建项目编译环境
README.md项目说明文档
sdkconfigSDK配置,在这里可选择enable/disable某一个模块

项目文件夹下的内容:

3 编译和下载

3.1 认识 VSCode下idf编译环境

在下图中,笔者对重要的item进行了编号,现在来一一认识这些item的功能。

使用一张表,详细的列出这些item的功能:

Item 编号功能介绍
1选择ESP32和PC之间通信的串行数据端口号
2根据使用的硬件,选择对应的芯片型号,型号不对,编程会失败
3清除编译产生的文件,二次编译时,不建议点击这个按钮,因为进行项目编译时,它会编译整个SDK,这个导致编译项目的时间会很长。已经编译过SDK后,点击编译按钮,它只会编译修改后的代码,这大大缩短编译的时间
4编译项目
5下载代码

3.2 编译代码

3.2.1 认识output

点击3.1章节中的图片,编号4对应的按钮,就能编译代码。编译成功后,在终端会打印如下信息:

这些信息表示什么含义呢?

参数项描述
Used static DRAM已经使用的DRAM空间
.data size静态全局数据内存区空间
.bss size未初始化数据区空间
Used static IRAM已经使用的IRAM空间
.text size代码区空间
.vectors size矢量表空间
Used Flash size已经使用的Flash空间
.text代码区大小
.rodata可读数据大小
Total image size生成的二进制文件大小

3.2.2 DRAM和IRAM

RAM类型功能说明
DRAM数据内存DRAM(数据 RAM)是连接到 CPU 数据总线上的内存,用于存储数据。这是作为堆访问最常见的一种内存。
IRAM指令内存IRAM(指令 RAM)是连接到 CPU 指令总线上的内存,通常仅用于存储可执行数据(即指令)。如果作为通用内存访问,则所有访问必须为 32 位可访问内存

3.3 下载代码

下载代码至ESP32前,必须保证项目文件已经全部编译完成,点击3.1章节中的图片,编号5对应的按钮,就能编程功能。

下载完成后,在OUTPUT窗口会打印Fash Done

  • 23
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值