在STM32的库函数中,好多函数都有"assert_param()"这个断言。这个宏作用是检查输入的参数是否有效,若非有效参数则输出某个警告。

"assert_param"的定义如下:

assert_param

       当"USE_FULL_ASSERT"这个宏未定义时,assert_param就是一个空的宏,没有任何操作。定义"USE_FULL_ASSERT"时,当参数"expr"为真时,则无操作((void)0);当参数"expr"为假时,则调用函数 assert_failed();但库函数中,只对assert_failed()进行了声明,具体功能并未实现,我们可以根据自己的需求进行封装。assert_failed()函数有两个输入参数,

__FILE__及 __LINE__;分别表示宏被调用时所在的“文件名”及“行号”。例如,我们可以使用printf()输出这些信息。

assert_param

 

 

相关文章:

  • 2021-12-01
  • 2022-01-06
  • 2022-12-23
  • 2021-07-08
  • 2021-07-27
  • 2021-04-19
猜你喜欢
  • 2021-07-14
  • 2021-11-30
  • 2021-05-27
  • 2022-12-23
  • 2021-12-16
  • 2022-01-21
相关资源
相似解决方案