問題一
本文引用地址:http://m.butianyuan.cn/article/201611/320930.htm原因:Undefined symbol SystemInit ,翻譯過來就是:SystemInit 這個(gè)符號沒有定義,隨后的小括號告訴你了,是在startup_stm32f10x_md.o這個(gè)文件里面被提及的,這個(gè).o文件在工程里面并沒有,它是一個(gè)在編譯的時(shí)候根據(jù).c/.s文件生成的。所以我們只需要找到工程里面的.s或者.c即可,這里對應(yīng)這個(gè)名字的就是startup_stm32f10x_md.s了。
解決辦法:將startup_stm32f10x_md.s中以下三段注釋掉就OK了
IMPORTSystemInit
LDRR0, =SystemInit
BLXR0
如圖所示:
問題二
原因:KEIL編譯的工程文件和STM32F10xR.LIB不在一個(gè)硬盤內(nèi),因此KEIL編譯時(shí)找不到STM32F10xR.LIB文件。
解決辦法:將該文件中的STM32F10xR.LIB刪除,重新找到KEIIL的安裝目錄,將里邊的STM32F10xR.LIB文件添加進(jìn)去。具體路徑為(D:/Keil/ARM/RV31/LIB/ST/STM32F10xR.LIB).
評論