首页 > 其他分享 >ESP32入门学习之工程目录结构

ESP32入门学习之工程目录结构

时间:2023-04-18 17:02:06浏览次数:28  
标签:led 入门 工程 ESP32 project IDF main 目录

前言

使用 ESP-IDF 框架开发 ESP32 应用程序时,需要按照一定规则创建工程目录,才能正常编译代码。

1. 官方提供工程目录示例

进入 ESP-IDF 源码路径下的 examples\get-started\sample_project 文件夹,可以看到有如下内容:
image

ESP-IDF V4.0 及之后版本,就已经默认使用 CMake 作为构建系统。

所以,一个最简单的工程目录结构就如下所示:
image

CMakeLists.txt 是 CMake 的编译脚本文件,用于设置编译相关选项;应用程序写在主函数 main.c 里即可。

2. 如何搭建自己的工程目录

sample_project 是官方提供的工程目录模板,以 led 工程为例创建工程目录,具体步骤如下:

1. 复制 sample_project 文件夹,重命名为 led_project

2. 设置 bin 文件名称

打开 led_project 路径下的 CMakeLists.txt 文件,可以看到有如下内容:

# For more information about build system see
# https://docs.espressif.com/projects/esp-idf/en/latest/api-guides/build-system.html
# The following five lines of boilerplate have to be in your project's
# CMakeLists in this exact order for cmake to work correctly
cmake_minimum_required(VERSION 3.16)

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

其中 project() 里填写的名称,是最终编程生成的 bin 文件的名称,假设我们要生成 led_project.bin ,则修改为 project(led_project) 即可。

3. 编写应用程序

打开 led_project/main 路径下的 mian.c 文件,可以看到如下内容:

#include <stdio.h>

void app_main(void)
{

}

这里是基于 ESP-IDF 开发的应用程序入口,写的应用程序代码,在 void app_main(void) 函数中调用就行。

标签:led,入门,工程,ESP32,project,IDF,main,目录
From: https://www.cnblogs.com/lj15941314/p/17330259.html

相关文章

  • EJB教程_编程入门自学教程_菜鸟教程-免费教程分享
    教程简介EJB入门教程-从简单的步骤了解EJB3.0和3.1(EnterpriseJavaBean)框架,从基本概念到高级概念,包括概述,环境设置,应用服务器,容器,企业Bean,注释,会话,无状态会话,有状态会话,消息驱动,实体Bean,持久性,远程接口,查找,生命周期,接口,拦截器,可嵌入对象,Blob/Clobs,事务,安全性,JNDI绑定,实体关......
  • PHP 7 教程_编程入门自学教程_菜鸟教程-免费教程分享
    教程简介PHP7入门教程-从简单的步骤了解PHP7,从基本到高级概念,包括简介,性能,环境设置,标量类型声明,返回类型声明,空值合并运算符,Spaceship运算符,常量数组,匿名类,Closure::call(),Filteredunserialize(),IntlChar,CSPRNG,Expectations,useStatement,ErrorHandling,IntegerDivision,Sess......
  • c++初阶入门(持续更新)
    1.命名空间目的:解决c语言的缺陷,命名冲突。#include<stdio.h>intrand=0;intmain(){printf("%d",rand);}上面这段程序是可以运行的但是!#include<stdio.h>#include<stdlib.h>intrand=0;intmain(){printf("%d",rand);}那么上面的代码就会报错。因为stdlib.h......
  • linux蚁剑入门到熟悉文档地址整理
    linux蚁剑入门到熟悉文档地址收录蚁剑GetHub地址帮助文档kali安装出现问题的解决方式kali安装记录linuxdebian下载解压后进入文件内,使用root身份执行./AntSword后选择下载运行环境,新建并选择位置即可之后再次./AntSword即可......
  • 阿里6年测试经验,4个步骤教你入门自动化测试(建议收藏)
    ​ 前言随着软件测试技术的发展,人们已经从最初的纯粹的手工测试转变为手工与自动化测试技术相结合的测试方法。近年来,自动化测试越来越受到人们的重视,对于自动化测试的研究也越来越多。背景项目版本功能日趋增加,系统模块越来越多,功能趋于完善,此外系统经常更新,测试人员无法满......
  • docker入门之三:docker构建私有镜像入门到实践
    1.docker构建私有镜像1.1.使用Dockerfile定制镜像1.2.构建镜像1.docker构建私有镜像1.1.使用Dockerfile定制镜像在空目录创建文件,命名为Dockerfile[hadoop@hadoop101file]$cddocker/[hadoop@hadoop101docker]$mkdirmydockerfile[hadoop@hadoop101dock......
  • docker入门之二:docker常用命令
    1.docker常用命令1.1.基本命令1.2.docker管理容器1.2.1.启动容器进入容器删除容器1.docker常用命令1.1.基本命令获取镜像[hadoop@hadoop101docker]$dockerpullubuntu:16.04运行镜像[hadoop@hadoop101docker]$dockerrun-it--rmubuntu:16.0......
  • docker入门之一:docker基础概念与安装
    1.Docker简单介绍1.1.什么是docker?1.2.Docker和传统虚拟机1.3.为什么使用docker1.4.docker架构2.Docker安装2.1.docker版本命名2.2.docker安装2.3.docker卸载2.4.docker镜像加速器1.Docker简单介绍1.1.什么是docker?googlego语言开发,基于Linux内......
  • 动力节点2023最新MybatisPlus学习笔记(一)入门篇
    MyBatis是很火的框架,一般的项目都是基于ssm,虽然mybatis可以直接在xml中通过SQL语句操作数据库,很灵活,但其操作都要通过SQL语句进行,就必须写大量的xml文件,非常麻烦。而MyBatis-Plus可以很好的解决了这个问题,比Mybatis简单太多了,不用搞那么多xml文件的配置,直接与Springboot整合,开发效......
  • performance_schema 笔记(一)—— 简介与快速入门
    系列文章参考自《MySQL性能优化金字塔法则》,删除了书里重复说明和过于复杂的一些解释,完整版请参考原书。第一篇将简单介绍performance_schema是什么、有什么用、用法快速入门,它由哪些表组成以及这些表的用途。 一、performance_schema简介performanceschema是运行在较低级别的......