在做stm32的库程序移植时出现错误“#error "Please select first the target STM32F4xx device used in your application (in stm32f4xx.h file)"”,未选择STM32F4xx 设备导致多.h文件未被载入,发现是STM32F429_439xx的宏定义未定义,解决方法是在工具魔法棒 中的C/C++页的#define栏中添加相应的宏定义。
出现错误“.\Objects\STM32F429IGT6_Demo.axf: Error: L6218E: Undefined symbol assert_param (referred from misc.o).”和警告“..\Libraries\STM32F4xx_StdPeriph_Driver\src\stm32f4xx_wwdg.c(211): warning: #223-D: function "assert_param" declared implicitly”,断言assert未被定义,发现是USE_STDPERIPH_DRIVER的宏定义未定义,解决方法是在工具魔法棒 中的C/C++页的#define栏中添加相应的宏定义。
在文件stm32f4xx.h中,如果定义了USE_STDPERIPH_DRIVER,则#include “stm32f4xx_conf.h”文件,如下图