当前位置:实例文章 » 其他实例» [文章]ESP-C3入门2. Clion+IDF 开发环境搭建

ESP-C3入门2. Clion+IDF 开发环境搭建

发布人:编程圈子 发布时间:2023-01-28 07:44 阅读次数:1

ESP-C3入门2. Clion+IDF 开发环境搭建

  • 一、准备工作
  • 二、Clion配置过程
    • 1. 使用idf.py命令创建一个范例工程
    • 2. 使用Clion打开项目,修改CMakeLists.txt
    • 3. 设置交叉编译工具链
    • 4. 设置CMake
    • 5. 对cmake一些路径进行修改。
  • 三、编译及烧录
    • 1. 编译
    • 2. 烧录
    • 3. 查看输出

在这里插入图片描述

一、准备工作

本文使用windows11开发环境 , 按前文相关操作已经安装了IDF。
本文使用的idf版本为esp-idf-v4.4.3,安装位置在:
D:\Espressif\

另外需要安装CLion软件,安装过程较简单,这里不详细说明 。

二、Clion配置过程

1. 使用idf.py命令创建一个范例工程

idf.py create-project blink
cd blink
# 设置芯片型号,我这里使用的是esp32c3芯片
idf.py set-target esp32c3  
idf.py menuconfig

2. 使用Clion打开项目,修改CMakeLists.txt


cmake_minimum_required(VERSION 3.5)
# 添加这一句,设置 python 路径
set(PYTHON "D:/Espressif/python_env/idf4.4_py3.8_env/Scripts/python")
set(EXTRA_COMPONENT_DIRS $ENV{IDF_PATH}/examples/common_components/led_strip)
# 添加这一句,设置芯片型号
set(IDF_TARGET "esp32c3")
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
project(blink)

3. 设置交叉编译工具链

点击File-Settings,找到Toolchains:
按照下图示例,添加一个esp32编译工具链设置。
在这里插入图片描述

4. 设置CMake

找到Settings的CMake选项,把Debug-esp32的交叉编译工具链如下图所示进行修改:
在这里插入图片描述

图中Environment Variables是对串口和IDF_PATH路径进行设置,串口根据电脑实际情况进行修改。

5. 对cmake一些路径进行修改。

找到 cmake 目录,本文的示例路径在:
D:\Espressif\frameworks\esp-idf-v4.4.3\tools\cmake
根据自己电脑情况进行查找,找到toolchain-esp32**.cmake的文件,把其中的编译器路径改为绝对路径:

在这里插入图片描述

include($ENV{IDF_PATH}/tools/cmake/utilities.cmake)

set(CMAKE_SYSTEM_NAME Generic)
# 以下几行是修改的
set(CMAKE_C_COMPILER D:/Espressif/tools/riscv32-esp-elf/esp-2021r2-patch5-8.4.0/riscv32-esp-elf/bin/riscv32-esp-elf-gcc.exe)
set(CMAKE_CXX_COMPILER D:/Espressif/tools/riscv32-esp-elf/esp-2021r2-patch5-8.4.0/riscv32-esp-elf/bin/riscv32-esp-elf-g++.exe)
set(CMAKE_ASM_COMPILER D:/Espressif/tools/riscv32-esp-elf/esp-2021r2-patch5-8.4.0/riscv32-esp-elf/bin/riscv32-esp-elf-gcc.exe)

remove_duplicated_flags("-march=rv32imc ${CMAKE_C_FLAGS}"
                        UNIQ_CMAKE_C_FLAGS)
set(CMAKE_C_FLAGS "${UNIQ_CMAKE_C_FLAGS}" CACHE STRING "C Compiler Base Flags" FORCE)
remove_duplicated_flags("-march=rv32imc ${CMAKE_CXX_FLAGS}"
                        UNIQ_CMAKE_CXX_FLAGS)
set(CMAKE_CXX_FLAGS "${UNIQ_CMAKE_CXX_FLAGS}" CACHE STRING "C++ Compiler Base Flags" FORCE)

remove_duplicated_flags("-nostartfiles -march=rv32imc --specs=nosys.specs \
                        ${CMAKE_EXE_LINKER_FLAGS}"
                        UNIQ_CMAKE_SAFE_EXE_LINKER_FLAGS)
set(CMAKE_EXE_LINKER_FLAGS "${UNIQ_CMAKE_SAFE_EXE_LINKER_FLAGS}" CACHE STRING "Linker Base Flags" FORCE)

进行更改时,要确认编译器的路径是否正确,对于不同的芯片,编译器的路径有所不同,所以每改一个文件都要确认下文件中编译器文件的路径 。
windows平台下,文件后面要加上扩展名.exe

三、编译及烧录

1. 编译

点击名为**.elf的目标,点击左侧锤子图标进行编译:
在这里插入图片描述

2. 烧录

选择Clion编译目标中的flash,点击左侧锤子图标进行编译:
在这里插入图片描述
当提示Build finished即编译、烧录成功。
在这里插入图片描述

3. 查看输出

选择monitor并点击编译按钮 :
在这里插入图片描述
在这里插入图片描述

相关标签:

免责声明

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱290110527@qq.com删除。

Top