我以前建立的一个STM32F4的工程,当时是MDK4.2版本,没有问题。现在我电脑换成4.6版本的MDK,却出现了很多问题。。、、.\CMSIS\core_cm4.h(305): error: #757: variable "uint32_t" is not a type name.\CMSIS\core_cm4.h(306): error: #757: variable "uint32_t" is not a type name.\CMSIS\core_cm4.h(307): error: #757: variable "uint32_t" is not a type name.\CMSIS\core_cm4.h(308): error: #757: variable "uint32_t" is not a type name.\CMSIS\core_cm4.h(309): error: #757: variable "uint32_t" is not a type name.\CMSIS\core_cm4.h(310): error: #757: variable "uint32_t" is not a type name.\CMSIS\core_cm4.h(311): error: #757: variable "uint32_t" is not a type namecompiling system_stm32f4xx.c...C:\Keil\ARM\CMSIS\Include\core_cmInstr.h(115): error: #20: identifier "__STATIC_INLINE" is undefinedC:\Keil\ARM\CMSIS\Include\core_cmInstr.h(115): error: #101: "uint32_t" has already been declared in the current scopeC:\Keil\ARM\CMSIS\Include\core_cmInstr.h(115): error: #65: expected a ";"
为什么用MDK4.2版本的时候编译正常,用4.6版本就出问题了。
请注意CMSIS文件路径设置,两个版本的软件默认使用的路径不同,一个是系统自带的,一个固件库里的。请注意设置路径。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-11-14
我好像没有遇到过这个情况,4.5编译的,4.7再编译,也可以啊
第2个回答 2013-11-14
这种问题很明显是跟库函数和设置有关,以后要学着自己查错误、解决问题啊。