根据目标(构建或上传)定义环境变量

时间:2018-10-21 21:08:56

标签: arduino visual-studio-code platformio

在Visual Studio Code with PlatformIO上,当我单击 [v] 按钮( PlatformIO:Build )时,IDE将运行以下任务:

> Executing task: C:\Users\Mary\.platformio\penv\Scripts\platformio.exe run <

Processing d1_mini (platform: espressif8266; board: d1_mini; framework: arduino)
...
...

当我单击 [=>] 按钮( PlatformIO:Upload )时,IDE将运行以下任务:

> Executing task: ~\.platformio\penv\Scripts\platformio.exe run --target upload <

Processing d1_mini (platform: espressif8266; board: d1_mini; framework: arduino)
...
...

说明:

  

https://docs.platformio.org/en/latest/userguide/cmd_run.html

我需要区分目标是运行(编译)还是目标是上载(目标上载),以设置其他环境变量。像

[env:specific_defines]
build_flags =
  -D MY_VAR=true

因为当我编译项目时,我不希望通过带板的USB通过USB上传程序时想要的调试信息(例如Serial.println())。

我看上去Build optionsAdvanced Scripting,但是我找不到适合我的东西。

谢谢。

1 个答案:

答案 0 :(得分:1)

最新答案: 构建标记不适用于UPLOAD-因为此时已经构建了源。

如果您有两种环境(例如生产和调试),则还必须上传变体。

pio run -e prod -> compiles prod environment
pio run -e prod -t upload -> uploads prod environment

pio run -e debug -> compiles debug environment
pio run -e debug -t upload -> uploads debug environment