【ESP32 开发】| Clion 搭建 ESP32 开发环境

news2024/12/23 14:54:27

目录

  • 前言
  • 1 软件以及所需工具
  • 2 安装 ESP-IDF 4.4.4
    • 2.1 开始安装
    • 2.2 选择组件,建议全选
  • 3 用 ESP-IDF 4.4 CMD 添加环境变量并新建工程
    • 3.1 打开 ESP-IDF 4.4 CMD 初始化环境变量
    • 3.2 切到工作路径并新建工程
  • 4 配置 Clion 开发环境
    • 4.1 用 Clion 打开新建的工程文件
    • 4.2 配置 CMake 工具链
    • 4.3 编译
    • 4.4 编译成功
  • 5 参考

前言

做物联网开发的人对于ESP这个平台都是非常熟悉的,在国内极其流行,很多物联网的产品都是基于这个平台做的方案。多数人开发ESP32的时候用的都是Arduino IDE,虽然操作简单,容易上手,而且可以很方便的进行调试,但是对于做STM32开发的工程师来说就显得不太友好了。

在集成开发环境中,用过Jetbrains系IDE的朋友肯定会被它强大的代码补全、界面风格、各种插件、流畅性等众多优点所吸引,毫无疑问这些是能够极大提高开发效率的。而其中有一款CLion IDE就是专门面向C/C++开发的,所以本篇文章会介绍如何把EPS32的开发环境部署到CLion中,过程还是有很多坑值得注意的。

1 软件以及所需工具

  • Clion2021.3.3
  • ESP-IDF 4.4.4
  • MinGW 11.2 - w64

2 安装 ESP-IDF 4.4.4

链接: 点击进入官方下载 在线版离线版根据网络情况自行选择,这里个人选择在线版。

2.1 开始安装

  • 点击应用修复

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2 选择组件,建议全选

在这里插入图片描述

  • 配置好后,等待下载安装即可。

3 用 ESP-IDF 4.4 CMD 添加环境变量并新建工程

3.1 打开 ESP-IDF 4.4 CMD 初始化环境变量

  • 出现如下图所示内容,说明环境变量添加成功。

在这里插入图片描述

3.2 切到工作路径并新建工程

  • 输入 idf.py create-project <工程名> 并回车新建工程

在这里插入图片描述

  • 切到工程文件路径下并输入 idf.py app 开始编译程序

在这里插入图片描述
在这里插入图片描述

  • 出现如下内容,表示编译成功

在这里插入图片描述

4 配置 Clion 开发环境

4.1 用 Clion 打开新建的工程文件

在这里插入图片描述

4.2 配置 CMake 工具链

  • 打开 ESP-IDF 4.4 CMD 将环境路径输入到 idf_cmd_init.bat 文件中并保存
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 配置 CMake 工具链

在这里插入图片描述

  • 我这里用的 esp32s3 ,需要增加IDF_TARGET=esp32s3

在这里插入图片描述

  • 我这里用到 QTminGW 11.2 版本,配置完成后点击 ok

在这里插入图片描述

4.3 编译

在这里插入图片描述

4.4 编译成功

在这里插入图片描述

5 参考

  • [ESP32][环境配置]Clion配置ESP-IDF开发环境,支持编译下载和menucofig
  • ESP32之 ESP-IDF + Clion 开发环境搭建(一)—— Windows版
  • 基于CLion和ESF-IDF搭建ESP32-C3开发环境(上)_哔哩哔哩_bilibili

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

有了企业网盘,为什么要需要知识文档管理系统

关键词&#xff1a;企业网盘、知识文档管理系统、群晖NAS 编者按&#xff1a;随着企业办公室自动化的要求越来越明显&#xff0c;企业对于文档存储的需求也逐渐加大。企业网盘的出现解决了公司文件数据储存等难题。但随着企业的文档数据逐渐增多&#xff0c;如何安全管理企业重…

蓝牙资讯|苹果AirPods Pro充电盒将换用USB-C接口,还有新功能在测试

据彭博社记者 Mark Gurman 在他的最新一期 Power On 时事通讯中报道&#xff0c;苹果正准备推出适用于 AirPods Pro 的 USB-C 充电盒&#xff0c;大概会在今年秋天与 iPhone 15 系列一起推出&#xff0c;后者也将从 Lightning 端口切换到 USB-C 端口。 此外&#xff0c;苹果也…

Java集合之Disruptor 介绍

文章目录 1 Disruptor1.1 简介1.1.1 定义1.1.2 Java中线程安全队列1.1.3 Disruptor 核心概念 1.2 操作1.2.1 坐标依赖1.2.2 创建事件1.2.3 创建事件工厂1.2.4 创建处理事件Handler--消费者1.2.5 初始化 Disruptor1.2.5.1 静态类1.2.5.2 配置类1.2.5.3 Disruptor 构造函数讲解 1…

uniapp仿浙北汇生活微信小程序

最近给公司写了一个内部微信小程序&#xff0c;功能比较简单&#xff0c;之前是用微信小程序原生写的&#xff0c;一遍看文档一边写&#xff0c;js&#xff0c;wxml&#xff0c;wxcc&#xff0c;json分在不同文件的写法很不习惯&#xff0c;于是花了两天用uniapp重写了一遍&…

TextMining day1 电力设备运维过程中的短文本挖掘框架

电力设备运维过程中的短文本挖掘框架 III. 短文本挖掘框架的具体设计A. 预处理模块的具体设计B. 数据清洗模块的具体设计C. 表示模块的具体设计D. 数据分析模块的具体设计 IV. 案例研究A. 基于文本分类的缺陷程度判断B. 基于文本检索的缺陷处理决策 V. 结论 预处理 首先&#x…

一个光模块可以带动多少户

随着科技的快速发展&#xff0c;光模块的应用场景逐渐扩大&#xff0c;数据中心、人工智能AI的创新使我们的生活日新月异。今天我们就来看看一个小小的光模块究竟蕴藏着多大的能量&#xff01; 一、影响光模块带动户数的因素 光模块是一种实现光电转换和电光转换功能的光电子…

android Surface(1, 2)

android Surface(1, 2) android的Surface相关内容从底层依次往上分别是&#xff1a; 1.frameBuffer&#xff0c;简称fb&#xff0c;对于同一个android系统&#xff0c;可以同时存在多个frameBuffer&#xff0c;本机是fb0&#xff0c;依次外接时&#xff0c;fb1, fb2, ……fbn…

LeetCode·每日一题·445. 两数相加 II·模拟

作者&#xff1a;小迅 链接&#xff1a;https://leetcode.cn/problems/add-two-numbers-ii/solutions/2328613/mo-ni-zhu-shi-chao-ji-xiang-xi-by-xun-ge-67qx/ 来源&#xff1a;力扣&#xff08;LeetCode&#xff09; 著作权归作者所有。商业转载请联系作者获得授权&#xff…

2023.6.26-7.2 AI行业周刊(第152期):从一个热门视频,得到的人生发展感悟

上周五去上海参加2023年MWC&#xff08;世界移动通讯大会&#xff09;&#xff0c;在回无锡的路上&#xff0c;无意中刷到一个已关注博主的视频。 这个博主是2021年的时候&#xff0c;刚发第二个视频的时候&#xff0c;就一直在关注的。 从分享他从公务员辞职的经历&#xff…

【Web3】认识Web3

Web3是一种用于描述下一代互联网的概念 它指在构建一个去中心化 用户控制和加密安全的网络环境。 Web3的目标是将权利和数据掌握回归到用户手中 通过采用分布式技术和加密货币的支持 实现更加开放 公开和透明的互联网 Web的主要特点 去中化&#xff1a;Web3的核销理念是去中心…

静态时序分析: update io latency

往期文章链接: 静态时序分析: 虚拟时钟与I/O延迟约束 静态时序分析: 时钟延时(clock latency) 在CTS之前,clock是ideal的,in2reg与reg2out的path由于reg的clock network delay为0,所以时序比较容易收敛,在CTS之后,由于reg的clock network delay有了真实值(propagated…

Spring Boot 中的滚动部署是什么,如何使用

Spring Boot 中的滚动部署是什么&#xff0c;如何使用 简介 在开发和部署应用程序时&#xff0c;我们希望最小化中断&#xff0c;以确保应用程序始终可用。滚动部署是一种部署应用程序的方法&#xff0c;可以逐步将新版本部署到生产环境中&#xff0c;同时保持应用程序的可用…

Linux 6.5增加对高通开源GPU Adreno 690的支持

导读即将推出的Linux 6.5内核将把对高通Adreno 690 GPU的支持添加到开源的MSM内核图形/显示驱动程序中。A690主要用于骁龙8cx第三代&#xff08;SC8280XP&#xff09;平台&#xff0c;而联想ThinkPad X13s笔记本电脑和其他硬件也采用了该平台。 新的支持将包含近200行代码&…

基于小程序+云开发制作一个文件传输助手小程序

微信文件传输助手是真人?基于云开发制作一个文件传输助手小程序,你发给ta的小秘密,只有你自己知道。 开发步骤一、创建小程序二、云开发配置环境配置绑定云环境三、页面设计首页详情页底部弹窗四、云数据库概念云函数服务端函数文件上传

Java版事件与委托实现自动创建工厂并热加载

本文已收录于专栏 《Java》 目录 概念说明事件与委托工厂方法热加载 需求介绍代码实现1.整体结构2.工厂方法中已经存在的类工厂接口运算类工厂(其他工厂基本上是一样的)&#xff1a;目前没有加法类的工厂我们后面会添加加法类工厂然后热加载运行运算父类运算子类 3.工厂方法之外…

Java 运行jar包变更配置文件与变量

文章目录 前言实现原理不同环境的配置文件变更配置变量 前言 为实现快速搭建和开发&#xff0c;项目以Springboot框架搭建&#xff0c;springboot搭建的项目可以将项目直接打成jar包并运行&#xff0c;无需自己安装配置Tomcat或者其他服务器&#xff0c;是一种方便快捷的部署方…

PDF怎么转换成Excel?两个实用的方法给你!

如何将PDF文件转换成Excel表格的格式呢&#xff1f;在日常办公中&#xff0c;我们经常会遇到需要将PDF文件转换成Excel表格的情况。由于PDF文件具有稳定的格式特征&#xff0c;很多时候我们下载或接收到的文件都是以PDF格式呈现。那么&#xff0c;当我们需要使用Excel表格格式时…

数据结构--字符串的KMP算法

数据结构–字符串的KMP算法 朴素模式匹配算法&#xff1a; 一旦发现当前这个子串中某个字符不匹配&#xff0c;就只能转而匹配下一个子串(从头开始) 但我们可以知道&#xff1a; 不匹配的字符之前&#xff0c;一定是和模式串一致的 \color{red}不匹配的字符之前&#xff0c;一…

C++中内存拷贝函数memcpy函数使用

函数原型&#xff1a;void *memcpy(void *dest, const void *src, size_t n); 头文件&#xff1a;#include<string.h> 功能&#xff1a; 从源 src 所指的内存地址的起始位置开始拷贝 n 个字节到目标 dest 所指的 内存地址的起始位置中&#xff08;将一个 内存块 的内容…

哪种类型耳机不伤耳朵,分享几款佩戴无需入耳的骨传导耳机

骨传导耳机是目前在运动领域最火热的产品&#xff0c;也是最适合运动的耳机&#xff0c;它的原理是通过颅骨将声音转化为神经冲动&#xff0c;通过内耳传至听觉中枢&#xff0c;因此不会对耳朵造成任何损伤&#xff0c;它同时也可以让耳朵更好地听到周围的声音。能够很好的提高…