MDK:assert_param函数未定义的错误:Error: L6218E
今天使用奮斗stm32開發板,編譯程序時 出現了一下錯誤,網上有很多解決方案,可是一直沒解決,?
在鏈接過程中出現assert_param函數未定義的錯誤:Error: L6218E: Undefined symbol assert_param (referred from misc.o),無論將stm32f10x_conf.h頭文件中的“ #define USE_FULL_ASSERT 1”打開還是關閉都出現assert_param函數未定義的錯誤。
在一個論壇試了試一下以下的方法。
?
?
/**
* @brief Reports the name of the source file and the source line number
* where the assert_param error has occurred.
* @param file: pointer to the source file name
* @param line: assert_param error line source number
* @retval : None
*/
#define assert_param(expr) ((expr) ? (void)0 : assert_failed((uint8_t *)__FILE__, __LINE__))
/* Exported functions ------------------------------------------------------- */
void assert_failed(uint8_t* file, uint32_t line);
#else
#define assert_param(expr) ((void)0)
#endif
?
結果編譯成功,
?
網上還有一種解決方案 大家可以嘗試一下
在MDK中調試3.0庫所帶的例程,在鏈接過程中出現assert_param函數未定義的錯誤:?
Error: L6218E: Undefined symbol assert_param (referred from misc.o) 解決方案:?
在Options->C/C++->preprocessor Symboles有Define:項中輸入USE_STDPERIPH_DRIVER,重新編譯鏈接,無警告無錯誤。
總結
以上是生活随笔為你收集整理的MDK:assert_param函数未定义的错误:Error: L6218E的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IAR之函数和变量的绝对地址定位
- 下一篇: stm32的can总线理解及应用——程序