esp32学习---配置开发环境和新建工程模板

1、先按乐鑫的入门指南操作一遍,例程的编译下载就没问题了;
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/hw-reference/esp32/get-started-pico-kit.html
2、开发环境用windows的vscode,只用它写代码,编译下载我打算用cmd.exe,就是第一步生成的。
esp32学习---配置开发环境和新建工程模板
3、如何新建一个工程
参考:https://blog.csdn.net/lovehanchenchen/article/details/86743612?utm_medium=di构建自己的工程
esp32学习---配置开发环境和新建工程模板
main文件夹、CMakeLists.txt和Makefile从例程helloword中复制过来的,build文件夹和sdkconfig是编译生成的,不用自己添加。
需改动的地方:
esp32学习---配置开发环境和新建工程模板
project()括号里改成自己工程的文件夹名称;
esp32学习---配置开发环境和新建工程模板
project_name:=自己定义一个工程名
esp32学习---配置开发环境和新建工程模板
上图mian文件夹里的component.mk文件不用要,是针对GUN make编译时用的,这里用的cmake编译,CMakeLists.txt改动:
esp32学习---配置开发环境和新建工程模板
改成自己的c文件名称。
如何编译:
打开ESP-IDF command prompt(cmd.exe)我的esp-idf文件夹放在桌面上了,新建的工程没有在这个文件夹里能编译吗?试试吧。
esp32学习---配置开发环境和新建工程模板
esp32学习---配置开发环境和新建工程模板

提示清除那就先清除,这个app文件夹我在别的地方编译过,又拷过来的,正常流程不会提示这个;
esp32学习---配置开发环境和新建工程模板
然后build就通过了,idf.py -p COM13 flash 下载程序就可以了。

问题1:如何添加其他的c文件?添加后cmakelists怎么改?
参考: ESP32 ESP-IDF 项目文件结构
(1)先试试在mian文件夹中添加其他c文件:
esp32学习---配置开发环境和新建工程模板
esp32学习---配置开发环境和新建工程模板
在main文件夹中添加my_comp.c和include文件夹,需改动cmakelists.txt
esp32学习---配置开发环境和新建工程模板
编译通过。
(2)再试试添加组件:

esp32学习---配置开发环境和新建工程模板
添加components文件夹,include放my_comp.h文件
esp32学习---配置开发环境和新建工程模板
esp32学习---配置开发环境和新建工程模板
esp32学习---配置开发环境和新建工程模板
esp32学习---配置开发环境和新建工程模板
user_app_main.c
esp32学习---配置开发环境和新建工程模板
mian文件夹下 的cmakelists
esp32学习---配置开发环境和新建工程模板

kconfig.projbuild文件是写配置界面的,如下增加了MY_COMP选项
esp32学习---配置开发环境和新建工程模板
可设置是否选择此组件,这个变量怎么在main函数中起作用呢,就是上面user_app_main.c中圈出来的宏定义,实测是可以控制my_comp_test函数执行的。

esp32学习---配置开发环境和新建工程模板
附kconfig.projbuild文件讲解:
https://www.cnblogs.com/jiangzhaowei/p/7528099.html