MDK:assert_param函数未定义的错误:Error: L6218E
今天使用奮斗stm32開(kāi)發(fā)板,編譯程序時(shí) 出現(xiàn)了一下錯(cuò)誤,網(wǎng)上有很多解決方案,可是一直沒(méi)解決,?
在鏈接過(guò)程中出現(xiàn)assert_param函數(shù)未定義的錯(cuò)誤:Error: L6218E: Undefined symbol assert_param (referred from misc.o),無(wú)論將stm32f10x_conf.h頭文件中的“ #define USE_FULL_ASSERT 1”打開(kāi)還是關(guān)閉都出現(xiàn)assert_param函數(shù)未定義的錯(cuò)誤。
在一個(gè)論壇試了試一下以下的方法。
?
?
/**
* @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
?
結(jié)果編譯成功,
?
網(wǎng)上還有一種解決方案 大家可以嘗試一下
在MDK中調(diào)試3.0庫(kù)所帶的例程,在鏈接過(guò)程中出現(xiàn)assert_param函數(shù)未定義的錯(cuò)誤:?
Error: L6218E: Undefined symbol assert_param (referred from misc.o) 解決方案:?
在Options->C/C++->preprocessor Symboles有Define:項(xiàng)中輸入U(xiǎn)SE_STDPERIPH_DRIVER,重新編譯鏈接,無(wú)警告無(wú)錯(cuò)誤。
總結(jié)
以上是生活随笔為你收集整理的MDK:assert_param函数未定义的错误:Error: L6218E的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: IAR之函数和变量的绝对地址定位
- 下一篇: stm32的can总线理解及应用——程序