---> /my-projects-root
------> /my-projects-root/project1
------> /my-projects-root/project2
------------> /my-projects-root/project2/.vscode/settings.json
以及 my-ws.code-workspace:
"folders": [
"path": "/my-projects-root/project1"
"path": "/my-projects-root/project2"
"settings": {
"idf.port": "/dev/ttyUSB1",
"idf.espIdfPath": "${env:HOME}/esp/esp-idf"
打开 VS Code,前往菜单栏中的 文件 > 打开工作区 并打开 my-ws.code-workspace,你只能看到在当前工作区中定义的文件夹(/my-projects-root/project1 和 /my-projects-root/project2)。
对于 project1,VS Code 优先使用 my-ws.code-workspace 中的设置,然后再从用户设置中获取其他所需的设置。
对于 project2,VS Code 优先使用 /my-projects-root/project2/.vscode/settings.json 中的设置,其次从 my-ws.code-workspace 中获取缺失的设置,最后从用户设置中获取其余设置。
打开 /my-projects-root 或 /my-projects-root/project1 目录,VS Code 将使用用户设置。
如果只打开 /my-projects-root/project2 目录,VS Code 将首先使用 /my-projects-root/project2/.vscode/settings.json 中定义的设置,然后使用用户设置中定义的其他必要设置。
若打开 /my-projects-root,任何子项目都不会被识别为工作区文件夹。你需要将这些项目添加到 my-ws.code-workspace (手动添加或点击菜单栏中的 文件 > 将文件夹添加到工作区),并按照之前指定的方式打开此工作区。
创建好配置文件并为每个文件都设置好配置项后,点击 保存 按钮。使用 ESP-IDF:选择项目配置 命令来选择要覆盖的扩展配置。
选定配置文件后,所选文件将显示在 VS Code 状态栏中。
使用 ESP-IDF:构建项目 命令,为配置文件 prod1 和 prod2 构建项目。指定路径中将出现每个配置文件生成的二进制文件。使用 ESP-IDF:选择项目配置 命令,可以切换不同的构建配置。
使用 ESP-IDF:打开项目配置 命令,可以修改、添加或删除配置文件。如果不再需要这些配置文件,删除即可。
多个 ESP-IDF 版本
在 VS Code 中可以使用多个 ESP-IDF 版本,每个项目配置一个不同的版本。只要在当前项目目录下的 .vscode/settings.json 文件中显式定义项目配置。
使用 ESP-IDF:选择配置存储位置 命令或在 VS Code 中打开所需项目的 .vscode/settings.json 文件进行编辑,将 idf.saveScope 设置为工作区文件夹级别。
参照 安装 ESP-IDF 和工具,配置扩展。
删除先前的构建目录。若存在先前构建的缓存,则不同的 ESP-IDF 版本将无法工作。
如果你希望使用与全局用户设置版本不同的 ESP-IDF,请在所需项目中重复步骤 1。
手动使用多种构建配置
如 ESP-IDF CMake 多种构建配置示例 所示,可以使用多个构建目录和多个 sdkconfig 默认文件来生成不同版本的最终产品。
在此扩展中,可以使用 idf.buildPath (Windows 系统中使用 idf.buildPathWin)来定义构建目录,并使用 idf.sdkconfigDefaults 来定义 sdkconfig 默认文件列表。扩展构建命令会使用这些定义好的配置。
例如,如果要制作产品 1:
创建 sdkconfig 文件 sdkconfig.prod_common 和 sdkconfig.prod1,之后 <your-project>/build_prod1 (build_prod1 是自定义构建文件夹的名称)中将生成固件。
在当前项目的 .vscode/settings.json 文件中添加下列设置:
// ...
"idf.buildPath": "${workspaceFolder}/build_prod1",
"idf.sdkconfigDefaults": ["sdkconfig.prod_common", "sdkconfig.prod1"]
// ...
使用 ESP-IDF:构建项目 命令构建你的项目。
<your-project>/build_prod1 中将生成固件文件,而 SDK 配置编辑器使用的 sdkconfig 文件位于 <your-project>/build_prod1/sdkconfig。
对于不同的产品和配置,请在步骤 2 中更改相应的值。