注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
李威键的个人空间 https://home.eeworld.com.cn/space-uid-338727.html [收藏] [复制] [分享] [RSS]
日志

error: #20: identifier "RCC_PLLSource_HSE_Div1" is undefined

已有 12008 次阅读2011-6-29 21:28 |

错误:User\main.c(122): error:  #20: identifier "RCC_PLLSource_HSE_Div1" is undefined

意思是RCC_PLLSource_HSE_Div1未定义。

我的工程中包含了 stm32f10x_rcc.h  可仍然显示 “RCC_PLLSource_HSE_Div1”未定义

打开stm32f10x_rcc.h文件发现如下内容

#if !defined (STM32F10X_LD_VL) && !defined (STM32F10X_MD_VL) && !defined (STM32F10X_HD_VL) && !defined (STM32F10X_CL)
 #define RCC_PLLSource_HSE_Div1           ((uint32_t)0x00010000)
 #define RCC_PLLSource_HSE_Div2           ((uint32_t)0x00030000)
 #define IS_RCC_PLL_SOURCE(SOURCE) (((SOURCE) == RCC_PLLSource_HSI_Div2) || \
                                   ((SOURCE) == RCC_PLLSource_HSE_Div1) || \
                                   ((SOURCE) == RCC_PLLSource_HSE_Div2))
#else
 #define RCC_PLLSource_PREDIV1            ((uint32_t)0x00010000)
 #define IS_RCC_PLL_SOURCE(SOURCE) (((SOURCE) == RCC_PLLSource_HSI_Div2) || \
                                   ((SOURCE) == RCC_PLLSource_PREDIV1))
#endif /* STM32F10X_CL */

 

主要注重下面这条语句:

#if !defined (STM32F10X_LD_VL) && !defined (STM32F10X_MD_VL) && !defined (STM32F10X_HD_VL) && !defined (STM32F10X_CL)

----

#else

--

#endif

意义:STM32F10X_LD_VL、STM32F10X_MD_VL、STM32F10X_HD_VL 这几个宏如果没有被定义便执行下面的内容,

否则执行#else下面的语句

 

出现上面的错误下是因为有了这个判断,因为我在工程属性中的“C\C++” 页中的“Define”项中添加了“STM32F10X_MD_VL”宏,也就是定义“STM32F10X_MD_VL”这个宏。所以在“stm32f10x_rcc.h”文件中未

执行 #if !defined (STM32F10X_LD_VL)…… 以下的内容,RCC_PLLSource_HSE_Div1 也就未定义。

修改方法:将工程属性中的“C\C++” 页中的“Define”项中的 “STM32F10X_MD_VL”换成STM32F10X_MD 就可以了。

 

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章