0

每当我在 Iar 嵌入式工作台 V8.5 上使用 STM32cubeMX 生成代码时,此错误仍然存​​在

Fatal Error [Pe035]: #error directive: "Unknown target." 

在此处输入图像描述

4

1 回答 1

0

该错误与下载或调试无关。这是一个构建错误。

是代码中#error亲处理器指令。如果您双击其中一个错误,它无疑会将您带到有问题的代码。不可能从图像中引导您找到确切的原因(您应该完整地发布“构建日志”文本,而不是“构建”选项卡的图像),但无疑将是类似于(省略):

#if defined(STM32F405xx)
  #include "stm32f405xx.h"
#elif defined(STM32F415xx)
  #include "stm32f415xx.h"
#elif 
    ...  
#elif defined(STM32F423xx)
  #include "stm32f423xx.h"
#else
 #error "Unknown Target"   <<<< HERE - no target macro has been defined.
#endif

关键是 HAL 代码支持多种 STM32 变体,并且有必要设置一个宏来标识您的目标,以便构建适当的特定于部件的代码。

如果您使用 STM32CubeMX 或从 IAR IDE 创建项目,则配置中的某些位置可以指定您的目标。(在 CubeMX 的情况下,我认为在您选择目标之前您无法做任何事情)。如果没有在构建配置中定义命令行构建宏的地方。

于 2020-05-06T15:41:10.963 回答