我看到stm32f4xx.h中已经有
#define STM32F4XX STM32F40XX
为什么在编译器设置里还要在
keil中options->C++->Define中定义 USE_STDPERIPH_DRIVER,STM32F4XX?
一旦定义后会出现重复定义的错误,如下
D:ARMPROKEILARMIncSTSTM32F4xxstm32f4xx.h(74): warning: #47-D: incompatible redefinition of macro "STM32F4XX"
定义USE_STDPERIPH_DRIVER是为了使用conf.h文件,
这个在stm32f4xx.h可以看出来
#ifdef USE_STDPERIPH_DRIVER
#include "stm32f4xx_conf.h"
#endif /* USE_STDPERIPH_DRIVER */
那么STM32F4XX定义的目的是什么?在哪个文件中有相关代码?
如果是为了什么类似的目的而定义,那么#define STM32F4XX STM32F40XX这个定义本身就可以触发#ifdef,意义何在?
菜鸟表示没找到定义它的理由?难道F4跟以前有区别?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
---------------------------------
为什么f4用你的模板不会出现 warning: #47-D: incompatible redefinition of macro "STM32F4XX" 而我却要把options中STM32F40_41xxx去掉才没警告或者在警告处将其删掉?
一周热门 更多>