suna-2027220 发表于 2015-4-11 11:50:39

FSMC_Bank1和FSMC_Bank1E 没有定义

原子哥:

​如标题所述, FSMC_Bank1和FSMC_Bank1E 没用定义,但是在stm3f4xx.h中明明有:

​#if defined (STM32F427_437xx) || defined (STM32F429_439xx)

#define FMC_Bank1         ((FMC_Bank1_TypeDef *) FMC_Bank1_R_BASE)
#define FMC_Bank1E          ((FMC_Bank1E_TypeDef *) FMC_Bank1E_R_BASE)
#define FMC_Bank2         ((FMC_Bank2_TypeDef *) FMC_Bank2_R_BASE)
#define FMC_Bank3         ((FMC_Bank3_TypeDef *) FMC_Bank3_R_BASE)
#define FMC_Bank4         ((FMC_Bank4_TypeDef *) FMC_Bank4_R_BASE)
#define FMC_Bank5_6         ((FMC_Bank5_6_TypeDef *) FMC_Bank5_6_R_BASE)
#endif /* STM32F427_437xx ||STM32F429_439xx */


​错误是在LCD_Init()函数中报出来的,但是在这个函数的文件夹开开始已经包含了 #include"stm32f4xx.h"这个文件了


​并且我在MDK的配置 Option For Target中 的 C/C++选项栏的Define中加了 "STM32F429_439xx"这个了

理论上是会在​"stm32f4xx.h"这里找到定义的,但是为什么还是报错找不到这两个寄存器的定义​


stary666 发表于 2015-4-11 12:28:24

顶一个。。。。。。

suna-2027220 发表于 2015-4-11 18:29:26

是我自己搞错了,原来F407与F429 的FSMC 名称不一样,
在F407中是: FSMC_Bank1和FSMC_Bank1E
在F429中是: FMC_Bank1和FMC_Bank1E

拼命三郎 发表于 2015-4-12 10:52:55

嗯 不一样啊,静态和动态的
页: [1]
查看完整版本: FSMC_Bank1和FSMC_Bank1E 没有定义