原创 提示function 'assert_param' declared implicitly的警告和错

2011-5-28 17:04 15864 3 3 分类: MCU/ 嵌入式
提示function 'assert_param' declared implicitly的警告和错误

这个问题原因是由一个宏开关没有打开!这个宏USE_STDPERIPH_DRIVER开关需要打开,就不会有这个告警、错误,Options->C/C++ Compiler的Preprocessor页的Defined symbols中加上USE_STDPERIPH_DRIVER

USE_STDPERIPH_DRIVER又是定义在哪里,干什么用?

  USE_STDPERIPH_DRIVER定义在stm32f10x.h中

#if !defined (STM32F10X_LD) && !defined (STM32F10X_MD) && !defined (STM32F10X_HD)
  /* #define STM32F10X_LD */   /*!< STM32 Low density devices */
  /* #define STM32F10X_MD */   /*!< STM32 Medium density devices */
  #define STM32F10X_HD   /*!< STM32 High density devices */
#endif

把这个宏打开,也是解决连接出错的一种方法。

  那它到底和assert_param有什么关系呢?我们继续查找这个文件中的USE_STDPERIPH_DRIVER,发现

#ifdef USE_STDPERIPH_DRIVER
  #include "stm32f10x_conf.h"
#endif

而stm32f10x_conf.h中就定义了assert_param。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
3
关闭 站长推荐上一条 /3 下一条