下面以helloworld工程为例,为读者介绍一下ESP32工程中一般有什么文件,各文件有什么作用?

工程内容示例如下:

1) .vscode

vscode软件生成的相关配置文件,与ESP32工程本身无关

2)build

工程编译后才会生成的文件夹,里面是一些中间编译过程文件,也包括bin文件或者hex文件等。生成的bin文件在什么地方?可以查看build/flasher_args.json文件,找到

"flash_files" : {

        "0x1000" : "bootloader/bootloader.bin",

        "0x10000" : "main.bin",

        "0x8000" : "partition_table/partition-table.bin"

    }

其中,

bootloader/bootloader.bin表示应用启动前的一段程序

main.bin表示应用程序

partition_table/partition-table.bin表示分区文件

3)main

CMakeLists.txt

作用:用于指示Cmake这个构建系统,对main目录进行构建

main.c

作用:源文件,包含程序应用的入口函数

4)CMakeLists.txt

作用:告诉Cmake这个构建系统该如何编译整个工程

具体内容:

    include($ENV{IDF_PATH}/tools/cmake/project.cmake):固定内容

    project(main):给工程取名字,也是最终生成的bin文件的名字

5)sdkconfig

使用idf.py menuconfig后,会生成该文件

6)components:自己编写的一些公共代码一般存放在这个文件夹

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐