天天看點

MDK錯誤 Error: L6218E: Undefined symbol SystemInit (referred from startup_stm32f10x_hd.o). 解決方法...

此錯誤産生的位置在STM32工程所包含的彙編啟動代碼檔案,如下圖

MDK錯誤 Error: L6218E: Undefined symbol SystemInit (referred from startup_stm32f10x_hd.o). 解決方法...

熟悉ARM彙編的朋友一定可以看出,這是一個子程式調用語句,而調用的子程式正是SystemInit。出現錯誤的原因就是彙編器沒有在代碼之中尋找到SystemInit子程式。是以可以有兩種解決方法。

1、在工程C檔案内定義SystemInit函數,如下圖

MDK錯誤 Error: L6218E: Undefined symbol SystemInit (referred from startup_stm32f10x_hd.o). 解決方法...

這裡定義了一個空函數,雖然沒有完成任何功能,但是這樣做之後輸出的彙編代碼中就可以尋找到SystemInit子程式。

2、在彙編代碼之中注釋掉上上圖之中用紅色方框圈出的子程式調用代碼。

轉載于:https://www.cnblogs.com/jimaojin/p/4174060.html