|
終于在不用keil5自帶添加庫的基礎(chǔ)上0 error的新建了一個工程?目慕O絆搞了快一個下午,各種小問題搞到崩潰。
首先是庫文件添加路徑的問題 ,只要是你工程中用到的頭文件,都需要在工程選項配置中添加相應(yīng)的路徑,另外,通過一個下午的掙扎,發(fā)現(xiàn)最好還是在學(xué)習(xí)的過程中逐漸構(gòu)建自己的代碼庫,最好自己添加需要的庫文件,這樣便于程序的移植。也便于熟悉各種啟動文件。
1.png (54.37 KB, 下載次數(shù): 62)
下載附件
2018-10-15 14:52 上傳
2.png (38.5 KB, 下載次數(shù): 57)
下載附件
2018-10-15 14:52 上傳
另外一定要注意程序中不能有漢語輸入。
千萬不要有漢語輸入!千萬不要有漢語輸入!千萬不要有漢語輸入!
一開始我一直以為是keil壞了,誰知道最后還是發(fā)現(xiàn)是自己的錯。所以一定要細(xì)心。跟著他提示的錯誤代碼行去找,記住,一定要細(xì)心。不要老是懷疑別人。一點點漢語輸入的空格導(dǎo)致我浪費了兩個小時的時間。
找到這行,通常是里面的某個參數(shù)或者變量不符合格式。找個 里面的變量 ,把一行全部刪除,然后切換英文輸入,注意半角英文,如果還是不對的話,那就是你的keil壞了。
總結(jié)的合理的文件結(jié)構(gòu)(養(yǎng)成自己的代碼風(fēng)格):
USERS文件:
存放自己編輯的源文件和頭文件。工程中包含自己的源文件,路徑中包含頭文件。另外,在USERS中,最好在包含it.c and conf.h。
it中寫中斷函數(shù),conf中釋放自己需要的固件庫頭文件,屏蔽自己不需要的頭文件。也就是說你在lib文件夾中包含了什么固件庫,就需要在這里釋放什么頭文件。這和我們平時編寫頭文件和源文件的思路一樣呀,一個頭文件總是跟著一個源文件。
CMSIS文件:
中存放工程都必須的啟動代碼,core_cm3.c / system_stm32f10x.c / startup_stm32f10x_hd.s
LIB文件:
中存放程序用到固件庫的源程序,同時注意包含misc.c文件。
另外,不要忘了在C++選項卡中寫入USE_STDPERIPH_DRIVER,寫下這句話就意味著在stm32f10x.c中包含了conf.h頭文件,(具體原理點這里)不然需要自己在文件中包含這個頭文件,有點麻煩。
3.png (53.92 KB, 下載次數(shù): 59)
下載附件
2018-10-15 14:52 上傳
上面 提到的幾個文件的作用
1、core_cm3.c文件
在CoreSupport文件夾中有core_cm3.c和頭文件core_cm3.h,它的作用是采用Cortex-M3內(nèi)核設(shè)計的SoC芯片廠商設(shè)計的芯片提供了一個進(jìn)入CM3內(nèi)核的接口。core_cm3.c中還有一些與編譯器(MDK、IAR等)有關(guān)的代碼。較重要的是core_cm3.c中包含stdio.h頭文件,這是一個ANSI C文件,主要作用是提供一些新類型的定義。
2、system_stm32f10x.c文件
DeviceSupport文件夾下是啟動文件、外設(shè)寄存器定義、中斷向量定義層的一些文件,這些文件由ST公司提供。system_stm32f10x.c的主要作用是設(shè)置系統(tǒng)時鐘和總線時鐘。
3、stm32f10x.h文件
這個文件非常重要,是非常底層的文件,包含了寄存器地址和結(jié)構(gòu)體類型的定義,在使用到stm32固件庫的地方都要包含它。
3、stm32f10x_it.c和stm32f10x_conf.h文件
stm32f10x_it.c這個文件主要是編寫中斷程序的,stm32f10x_conf.h被包含在stm32f10x.h文件中主要是配置外設(shè)的頭文件,我們需要什么在這里打開。
4、startup_stm32f10x_hd.s文件
在這個文件中有一段啟動文件,啟動文件中先初始化系統(tǒng)時鐘,然后才執(zhí)行主函數(shù),因此我們要注意配置時鐘在這個文件里配置。
基本上上面這些就能夠完整的編譯一個keil5的工程了。
5、關(guān)于misc.c文件:
STM32 V3.5版本的庫函數(shù)中沒有原來版本中單獨對于NVIC(中斷向量嵌套)的外設(shè)驅(qū)動,把NVIC的外設(shè)驅(qū)動放在了misc.c中,實際上是代替原來的stm32f10x_nvic.c.
完整的pdf格式文檔51黑下載地址:
關(guān)于keil5使用注意事項(預(yù)定義、路徑包含) .pdf
(169.5 KB, 下載次數(shù): 11)
2018-10-15 11:11 上傳
點擊文件名下載附件
關(guān)于keil5使用注意事項(預(yù)定義、路徑包含) 下載積分: 黑幣 -5
|
|