新聞中心

STM32的MDK工程建立

作者: 時(shí)間:2016-11-20 來(lái)源:網(wǎng)絡(luò) 收藏
折騰了兩天,終于了解了整個(gè)固件庫(kù)工程里的結(jié)構(gòu),把整個(gè)流程記錄下來(lái)以備以后查看

1、在MDK中建立一個(gè)新工程,指派芯片

本文引用地址:http://www.2s4d.com/article/201611/319052.htm

2、添加啟動(dòng)文件,位于..STM32F10x_StdPeriph_Lib_V3.2.0LibrariesCMSISCM3DeviceSupportSTSTM32F10xstartuparm中。


注:這里使用的是MDK,如果使用其他編譯工具GNU或IAR可在對(duì)應(yīng)文件夾下找到


3、添加STM32F10x_StdPeriph_Lib_V3.2.0LibrariesCMSISCM3DeviceSupportSTSTM32F10xsystem_stm32f10x.c及STM32F10x_StdPeriph_Lib_V3.2.0LibrariesCMSISCM3CoreSupportcore_cm3.c到工程中,可建立一個(gè)group(CMSIS)。這兩個(gè)文件是編譯鏈接startup文件必須的函數(shù)。


4、添加main.c、stm32f10x_it.c到group Usr下,這部分是用戶(hù)自己編程的地方


5、配置stm32f10x_conf.h文件,添加必須的外設(shè)文件,同時(shí)把對(duì)應(yīng)的ppp.c文件加入工程


6、在工程屬性中C/C++屬性頁(yè)的include paths中加入固件庫(kù)對(duì)應(yīng)的*.h文件所在的文件夾(用于編譯時(shí)鏈接,否則會(huì)鏈接到MDK自帶的庫(kù),通常情況下會(huì)出現(xiàn)版本不匹配的現(xiàn)象,導(dǎo)致編譯不成功)。添加完后會(huì)在下方的compiler control string 欄里看到一個(gè)編譯選項(xiàng) -I....project -I "D:MysoftwarekeilARMINCSTSTM32F10x" 。其中 -I....project為自己添加的目錄,-I "D:MysoftwarekeilARMINCSTSTM32F10x"為MDK默認(rèn)的位置(最好不要用)


7、在工程屬性中C/C++屬性頁(yè)的define欄加入要配置的宏定義,比如USE_STDPERIPH_DRIVER(使用ST的固件庫(kù)), STM32F10X_MD_VL(芯片類(lèi)型,具體分類(lèi)看固件庫(kù)手冊(cè))


8、在Target屬性頁(yè)選中Use MicroLIB(這個(gè)的作用為什么我也不知道:p)


有了上述的設(shè)定就可以編譯成功了


要下載程序,需要設(shè)置utilities頁(yè)的仿真器選項(xiàng)


同樣,調(diào)試程序需要設(shè)置debug頁(yè)的仿真器選項(xiàng)



關(guān)鍵詞: STM32MDK工程建

評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉