版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
項目二STM32F4單片機的編譯集成環(huán)境MDK5的設(shè)置任務(wù)2.1認識STM32官方標(biāo)準(zhǔn)固件庫與MDK任務(wù)2.1認識STM32官方標(biāo)準(zhǔn)固件庫與MDK任務(wù)2.2新建STM32F4單片機項目工程項目二STM32F4單片機的編譯集成環(huán)境MDK5的設(shè)置任務(wù)2.1認識STM32官方標(biāo)準(zhǔn)固件庫與MDK【知識目標(biāo)】了解STM32官方STD標(biāo)準(zhǔn)固件庫與MDK編輯界面。【能力目標(biāo)】能夠闡述STM32官方標(biāo)準(zhǔn)固件庫的架構(gòu)組成。【素質(zhì)目標(biāo)】培訓(xùn)系統(tǒng)學(xué)習(xí)能力。查閱設(shè)計資料的能力。培養(yǎng)分析問題解決問題的能力。1.STM32F4單片機的官方標(biāo)準(zhǔn)固件庫下載3.STM32F4官方標(biāo)準(zhǔn)固件庫包2.CMSIS標(biāo)準(zhǔn)本節(jié)學(xué)習(xí)內(nèi)容:4.STM32F4單片機的關(guān)鍵配置文件5.系統(tǒng)啟動文件6.MDK簡介STM32F4單片機的官方標(biāo)準(zhǔn)固件庫下載ST公司為了方便用戶開發(fā)編寫程序,提供了一套標(biāo)準(zhǔn)的STM32F4固件庫,該固件庫對內(nèi)部的硬件電路功能以函數(shù)的形式提供了訪問接口。可以通過查看庫函數(shù)的源程序,了解具體對寄存器的操作過程。STM32標(biāo)準(zhǔn)外設(shè)庫的下載:ST官網(wǎng)下載/Designresource/list/STM32%20MCU/firmware_software/firmware_software開源電子網(wǎng)CMSIS標(biāo)準(zhǔn)CMSIS標(biāo)準(zhǔn)英文全稱是CortexMicrocontrollerSoftwareInterfaceStandard,ARMCortex微控制器軟件接口標(biāo)準(zhǔn)。任何一個Cortex-M4芯片,內(nèi)核結(jié)構(gòu)都完全相同,不同的是芯片的存儲器容量、片上外設(shè)、IO以及其他模塊的區(qū)別。ARM是一個做芯片標(biāo)準(zhǔn)的公司,它負責(zé)的是芯片內(nèi)核的架構(gòu)設(shè)計。TI、ST等公司并不做標(biāo)準(zhǔn),他們根據(jù)ARM公司提供的芯片內(nèi)核標(biāo)準(zhǔn)設(shè)計自己的芯片。CMSIS標(biāo)準(zhǔn)圖2-1基于CMSIS框架的應(yīng)用程序基本結(jié)構(gòu)CMSIS標(biāo)準(zhǔn)圖2-1基于CMSIS框架的應(yīng)用程序基本結(jié)構(gòu)CMSIS框架內(nèi)分為3個基本功能層:內(nèi)核外設(shè)訪問層:由ARM公司實現(xiàn),包含了名稱定義、地址定義、存取內(nèi)核寄存器和外圍設(shè)備的協(xié)助函數(shù)。同時也為RTOS(實時操作系統(tǒng))定義了獨立的內(nèi)核接口函數(shù)。中間件訪問層:由ARM公司實現(xiàn),芯片廠商提供更新,主要負責(zé)當(dāng)以中間件訪問的應(yīng)用程序接口API函數(shù)。器件級外設(shè)訪問層:由芯片廠商實現(xiàn),包含了定義硬件寄存器的地址以及外設(shè)的訪問函數(shù),比如ST公司提供的固件庫外設(shè)驅(qū)動文件(stm32f40x_gpio.c等文件)。另外廠商會對異常向量進行擴展,以處理相應(yīng)異常。STM32F4官方標(biāo)準(zhǔn)固件庫包介紹下載“STSW_STM32065_STM32F4單片機DSP與標(biāo)準(zhǔn)外設(shè)庫”后解壓縮后如圖2-2所示:圖2-2“STSW_STM32065_STM32F4單片機DSP與標(biāo)準(zhǔn)外設(shè)庫”內(nèi)容STM32F4官方標(biāo)準(zhǔn)固件庫包介紹STM32F4官方標(biāo)準(zhǔn)固件庫包介紹STM32F4官方標(biāo)準(zhǔn)固件庫包介紹STM32F4官方標(biāo)準(zhǔn)固件庫包介紹Libraries文件夾里面的文件在建立工程的時候會使用。STM32F4官方標(biāo)準(zhǔn)固件庫包介紹包含ST公司提供的官方實例(常用的硬件功能應(yīng)用),用戶可以參考這些實例編寫自己的開發(fā)程序,縮短開發(fā)周期。存放工程模板,給出了常用的集中開發(fā)環(huán)境下的項目模板。STM32F4官方標(biāo)準(zhǔn)固件庫包介紹固件庫的幫助文檔,在開發(fā)過程中會用到。STM32F4單片機的關(guān)鍵配置文件表2-1STM32F4單片機的關(guān)鍵配置文件序號文件所在目錄說明1core_cm4.h\stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\CMSIS\Include該頭文件是CMSIS的核心文件,提供進入Cortex-M4內(nèi)核接口。用戶無須修改該文件。2stm32f4xx.h\stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\CMSIS\Device\ST\STM32F4xx\IncludeSTM32F4片上外設(shè)訪問層頭文件,該文件至關(guān)重要,對系統(tǒng)寄存器進行了定義聲明以及內(nèi)存操作,該文件同時還包含了時鐘的相關(guān)定義、FPU和MPU單元開啟定義、中斷相關(guān)定義等。3system_stm32f4xx.h\stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\CMSIS\Device\ST\STM32F4xx\Include片上外設(shè)接入層系統(tǒng)頭文件。主要是申明設(shè)置系統(tǒng)及總線時鐘相關(guān)的函數(shù)。STM32F4單片機的關(guān)鍵配置文件表2-1STM32F4單片機的關(guān)鍵配置文件序號文件所在目錄說明4system_stm32f4xx.c\stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Project\STM32F4xx_StdPeriph_Templates該文件是在系統(tǒng)啟動時對整個系統(tǒng)和時鐘系統(tǒng)進行配置,系統(tǒng)啟動后首先要調(diào)用該文件中的SystemInit函數(shù)。5stm32f4xx_it.c\stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4x_DSP_StdPeriph_Lib_V1.8.0\Project\STM32F4xx_StdPeriph_Template用于集中編寫中斷函數(shù)6stm32f4xx_it.h\stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4x_DSP_StdPeriph_Lib_V1.8.0\Project\STM32F4xx_StdPeriph_Templatestm32f4xx_it.c對應(yīng)的頭文件。STM32F4單片機的關(guān)鍵配置文件表2-1STM32F4單片機的關(guān)鍵配置文件序號文件所在目錄說明7stm32f4xx_conf.h\stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4x_DSP_StdPeriph_Lib_V1.8.0\Project\STM32F4xx_StdPeriph_Template外設(shè)驅(qū)動配置文件,通過修改該文件中所包含的外設(shè)頭文件,用戶啟動或禁用外設(shè)驅(qū)動。8stm32f4xx_rcc.c\stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\STM32F4xx_StdPeriph_Driver\src與系統(tǒng)時鐘RCC相關(guān)的一些操作函數(shù),主要是對一些時鐘的配置和使能。9stm32f4xx_rcc.h\stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\STM32F4xx_StdPeriph_Driver\incstm32f4xx_rcc.c對應(yīng)的頭文件。STM32F4單片機的關(guān)鍵配置文件表2-1STM32F4單片機的關(guān)鍵配置文件序號文件所在目錄說明10misc.c\stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\STM32F4xx_StdPeriph_Driver\src包含中斷優(yōu)先級以及內(nèi)核中滴答定時器的配置操作函數(shù),在實際設(shè)計中會經(jīng)常用到misc.c和misc.h這兩個文件。11misc.h\stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\STM32F4xx_StdPeriph_Driver\incmisc.c對應(yīng)的頭文件。系統(tǒng)啟動文件系統(tǒng)的啟動文件系統(tǒng)啟動文件完成以下工作:初始化堆棧指針SP。初始化PC指針,將指針PC設(shè)置為“Reset_Handler”,系統(tǒng)啟動后從“Reset_Handler”向量入口開始執(zhí)行程序。初始化中斷向量表。配置系統(tǒng)時鐘,調(diào)用SystemInit。系統(tǒng)啟動文件將棧的區(qū)域“Stack_Size“大小設(shè)置為0x00000400(1K字節(jié))*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************系統(tǒng)啟動文件
*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************系統(tǒng)啟動文件開辟一個??臻g,??臻g的標(biāo)號為“Stack_Mem”,??臻g大小為“Stack_Size”。SPACE偽指令用于開辟一個空間。*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************系統(tǒng)啟動文件*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************標(biāo)號“__initial_sp”表示了堆空間的頂部,也就是棧頂。系統(tǒng)啟動文件*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************
代碼定義了一個名為“HEAP”的數(shù)據(jù)段,標(biāo)號“__heap_base”表示了的數(shù)據(jù)段的底部,標(biāo)號“__heap_limit”表示了堆的頂部。系統(tǒng)啟動文件通過上述程序代碼可以看出,棧的頂部和堆的底部是連接在一起的,在程序運行中,當(dāng)發(fā)生進棧操作時是向RAM的低地址方向存儲臨時變量。而堆的作用是分配變量,向高地址方向分配RAM的存儲空間。
當(dāng)設(shè)計程序非常龐大時,運行過程中有可能會出現(xiàn)堆棧溢出的情況。系統(tǒng)啟動文件*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************指定當(dāng)前文件保持堆棧八字節(jié)對齊。指示編譯器將使用Thumb指令集。在使用Thumb具體指令前要使用該指令進行聲明。系統(tǒng)啟動文件*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************定義了一個名為“RESET”的數(shù)據(jù)段,并設(shè)置為只讀屬性,通過“EXPORT”將標(biāo)號“__Vectors”、“__Vectors_End”、“__Vectors_Size”聲明為全局量,可供其他源文件訪問。系統(tǒng)啟動文件*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************DCD偽指令在RAM中分配了連續(xù)的存儲空間并進行了初始化設(shè)置。分配了連續(xù)字節(jié)的存儲空間,并進行了初始化設(shè)置,初始化值為“__initial_sp”,“__initial_sp”標(biāo)號代表了地址值?!癬_Vectors”標(biāo)號也同樣代表了當(dāng)前數(shù)據(jù)段在RAM中的地址值。標(biāo)號“__Vectors_End”表示了上述分配空間結(jié)束后的地址值。標(biāo)號“__Vectors_Size”代表了分配的向量空間的總字節(jié)數(shù)。系統(tǒng)啟動文件*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************分配了名為“|.text|”只讀的程序存儲空間段“PROC”和“ENDP”構(gòu)成了一個過程,相當(dāng)于定義了一個函數(shù),在”PROC”與“ENDP”之間的代碼構(gòu)成了一個子程序的內(nèi)容,”PROC”與“ENDP”成對出現(xiàn)。系統(tǒng)啟動文件*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************標(biāo)號Reset_Handler相當(dāng)于函數(shù)名,對應(yīng)了這段程序的首地址。EXPORT用于聲明,聲明Reset_Handler標(biāo)號為全局標(biāo)號,其它源文件可以訪問。[WEAK]用于指示如果有其它源文件定義Reset_Handler標(biāo)號,則屏蔽掉此處的聲明。系統(tǒng)啟動文件*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************通知編譯器使用其它源文件中的“SystemInit”、“__main”標(biāo)號。系統(tǒng)啟動文件*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************將“SystemInit”標(biāo)號對應(yīng)的值寫入內(nèi)部寄存器R0中。系統(tǒng)啟動文件*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************跳轉(zhuǎn)到寄存器R0內(nèi)容對應(yīng)的地址處執(zhí)行子程序,并將指令切換回ARM指令集。系統(tǒng)啟動文件*******************************************************************************FileName:startup_stm32f40_41xxx.s*******************************************************************************定義了標(biāo)號名稱為NMI_Handler的子程序,ENDP:表示程序的結(jié)束,[WEAK]:該段程序的定義為弱定義方式,其它源文件定義了“NMI_Handler”函數(shù)則屏蔽掉此處的聲明。MDK簡介KeilMDK,也稱MDK-ARM、RealviewMDK,源自于德國的KEIL公司,是ARM公司推出的針對各種嵌入式處理器的軟件開發(fā)工具。圖2-4MDK5啟動界面MDK簡介KeilMDK,也稱MDK-ARM、RealviewMDK,源自于德國的KEIL公司,是ARM公司推出的針對各種嵌入式處理器的軟件開發(fā)工具。圖2-5MDK5的組成MDK簡介KeilMDK,也稱MDK-ARM、RealviewMDK,源自于德國的KEIL公司,是ARM公司推出的針對各種嵌入式處理器的軟件開發(fā)工具。MDK5下載網(wǎng)址:/demo/eval/arm.htmARM.CMSIS.5.8.0pack安裝包和Keil.STM32F4xx_DFP.2.16.0.pack安裝包下載網(wǎng)址:/dd2/Pack/#!#eula-containerMDK安裝教程本節(jié)總結(jié)1.STM32F4單片機的官方標(biāo)準(zhǔn)固件庫下載3.STM32F4官方標(biāo)準(zhǔn)固件庫包2.CMSIS標(biāo)準(zhǔn)4.STM32F4單片機的關(guān)鍵配置文件5.系統(tǒng)啟動文件6.MDK簡介任務(wù)2.2新建STM32F4單片機項目工程【知識目標(biāo)】掌握使用MDK新建STM32F4設(shè)計項目的流程。【能力目標(biāo)】能夠在MDK中成功創(chuàng)建一個全新的STM32F4單片機項目工程。能夠根據(jù)項目需求,在STM32項目中精準(zhǔn)配置相應(yīng)STD庫文件和編譯選項。【素質(zhì)目標(biāo)】培訓(xùn)系統(tǒng)學(xué)習(xí)能力。培養(yǎng)查閱設(shè)計資料的能力。培養(yǎng)分析問題解決問題的能力。1.創(chuàng)建項目工程并配置項目參數(shù)3.在項目中添加自定義延時文件和自定義系統(tǒng)文件2.在項目中添加配置文件本節(jié)學(xué)習(xí)內(nèi)容:4.添加并配置標(biāo)準(zhǔn)庫文件5.啟動文件配置6.項目頭文件路徑配置8.設(shè)置下載/調(diào)試選項7.設(shè)置輸出選項9.配置系統(tǒng)時鐘參數(shù)10.單片機項目編譯準(zhǔn)備工作:1.下載STM32F4固件庫包并解壓縮,如圖所示:2.安裝好MDK53.安裝好STM32F4的器件包:Keil.STM32F4xx_DFP.1.0.8.pack1.創(chuàng)建項目工程并配置項目參數(shù)1)首先在電腦的硬盤上創(chuàng)建一個文件夾用來存放工程模板,并在該文件夾下新建6個文件夾,如圖2-5所示。圖2-5新建模板的窗口1.創(chuàng)建項目工程并配置項目參數(shù)2)打開MDK軟件,執(zhí)行Project\NewμVisionProject…菜單命令,并將工程路徑選擇為新建的模板文件下的USER,并保存工程名為template。在彈出的窗口中選擇器件,如圖2-6所示:圖2-6新建項目選擇器件將器件選擇為:STMicroelectronics/STM4Series/STM32F407/STM32F407ZG/STM32F407ZGTx1.創(chuàng)建項目工程并配置項目參數(shù)單擊OK后,在彈出的如圖2-7所示的“ManageRun-TimeEnvironment”對話框中選擇Cancel。操作完成后,USER文件夾下文件如圖2-8所示。圖2-8USER目錄下的文件圖2-7“ManageRunEnvironment”對話框2.在項目中添加配置文件1)將stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\STM32F4xx_StdPeriph_Drive目錄下的inc、src文件夾復(fù)制到新建模板目錄下的FWLIB文件夾下。固件庫中src為驅(qū)動STM32F4的庫函數(shù)文件。inc則是這些庫文件對應(yīng)的頭文件。2)將與內(nèi)核和啟動相關(guān)的文件復(fù)制到模板文件夾下的core文件夾內(nèi)。將stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\arm目錄下的startup_stm32f40_41xxx.s啟動文件復(fù)制到CORE文件夾內(nèi)。將stm32f4_dsp_stdperiph_lib_V1.8.0\Libraries\CMSIS\Include目錄下的core_cm4.h、core_cmsimd.h、core_cmFunc.h、core_cmInstr.h復(fù)制到CORE文件夾內(nèi)。2.在項目中添加配置文件3)將stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\CMSIS\Device\ST\STM32F4xx\Include目錄下的stm32f4xx.h、system_stm32f4xx.h文件復(fù)制到USER目錄下。4)將stm32f4_dsp_stdperiph_lib_V1.8.0\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Project\STM32F4xx_StdPeriph_Templates目錄下的main.c、main.h、stm32f4xx_conf.h、system_stm32f4xx.c、stm32f4xx_it.c、stm32f4xx_it.h文件復(fù)制到USER文件夾下。2.在項目中添加配置文件文件復(fù)制后的user文件夾如圖2-9所示。圖2-9USER文件夾3.在項目中添加自定義延時文件和自定義系統(tǒng)文件在system文件夾內(nèi)新建兩個文件夾delay、sys,如圖2-12所示。圖2-12新建sys、delay文件夾在MDK界面執(zhí)行菜單命令File\New命令,新建文件分別保存在delay文件中和sys文件夾中:delay文件夾中保存的文件名為delay.c和delay.hsys文件夾中保存為sys.c和sys.h3.在項目中添加自定義延時文件和自定義系統(tǒng)文件在STM32編程過程中經(jīng)常會使用到調(diào)用毫秒級和微秒級的延時函數(shù),一般使用STM32單片機內(nèi)部的滴答定時器來設(shè)計實現(xiàn)毫秒、微妙延時功能,因此用戶可以自己編寫滴答定時器的驅(qū)動程序。
本模板中的延時驅(qū)動函數(shù)保存在delay.c文件中,對應(yīng)的頭文件為delay.h。
打開delay.c文件,錄入代碼內(nèi)容并保存。3.在項目中添加自定義延時文件和自定義系統(tǒng)文件在STM32編程過程中經(jīng)常會使用到調(diào)用毫秒級和微秒級的延時函數(shù),通常會使用STM32單片機內(nèi)部的滴答定時器來設(shè)計實現(xiàn)毫秒、微妙延時功能,因此用戶可以自己編寫滴答定時器的驅(qū)動程序。
本模板中的延時驅(qū)動函數(shù)保存在delay.c文件中,對應(yīng)的頭文件為delay.h。
打開delay.c文件,錄入代碼內(nèi)容并保存。3.在項目中添加自定義延時文件和自定義系統(tǒng)文件在STM32編程過程中經(jīng)常會使用到調(diào)用毫秒級和微秒級的延時函數(shù),通常會使用STM32單片機內(nèi)部的滴答定時器來設(shè)計實現(xiàn)毫秒、微妙延時功能,因此用戶可以自己編寫滴答定時器的驅(qū)動程序。
本模板中的延時驅(qū)動函數(shù)保存在delay.c文件中,對應(yīng)的頭文件為delay.h。
打開delay.c文件,錄入代碼內(nèi)容并保存。3.在項目中添加自定義延時文件和自定義系統(tǒng)文件打開delay.h文件,錄入如下代碼并保存。delay.h對delay.c中定義的函數(shù)進行了聲明,包含了delay.h頭文件的源文件可以使用delay.h中聲明過的函數(shù)。3.在項目中添加自定義延時文件和自定義系統(tǒng)文件打開sys.h文件,并錄入代碼并保存。sys.h文件定義了STM32F4的IO口輸入讀取宏定義和輸出宏定義,在編程操作時通過有參宏的使用能夠直接讀取、設(shè)置I/O端口的引腳電平,為程序設(shè)計提供了方便。創(chuàng)建用戶自己的系統(tǒng)文件sys.c,并保存在sys文件夾內(nèi)。用戶可以將自己創(chuàng)建的系統(tǒng)函數(shù)保存在sys.c文件內(nèi)。打開新建的MDK模板項目,如圖2-10所示,在“Target1”上單擊鼠標(biāo)右鍵,添加組,并將組改名為USER、FWLIB、SYSTEM、HARDWARE、CORE,與模板文件夾下文件夾名稱相對應(yīng),如圖2-11所示。圖2-10新建組操作圖2-11新建并分組后的項目4.添加并配置標(biāo)準(zhǔn)庫文件4.添加并配置標(biāo)準(zhǔn)庫文件單擊工具欄中的,在彈出的如圖2-13所示的窗口界面下,將之前復(fù)制的文件添加到修改的組內(nèi)。圖2-13添加文件到FWLIB組操作4.添加并配置標(biāo)準(zhǔn)庫文件將src內(nèi)的源文件全部添加到FWLIB組內(nèi),添加后的界面如圖2-14所示。由于設(shè)計的模板采用的是STM32F407單片機,不需要使用stm32f4xx_fmc.c文件,該文件在STM32F42、STM32F43系列單片機中才會使用,因此可以將該文件移除。圖2-14添加FWLIB組文件界面5.啟動文件配置
1)將startup_stm32f40_41xxx.s文件添加CORE組內(nèi),由于默認添加的文件類型為*.h和*.c,因此在添加該文件時需要將添加文件的類型選擇為Allflies(*.*),如圖2-15所示。圖2-15添加啟動文件到CORE組內(nèi)5.啟動文件配置
2)將main.c、system_stm32f4xx.c添加到USER組內(nèi),如圖2-16所示,如果希望將用戶編寫的中斷響應(yīng)函數(shù)存放在stm32f4xx_it.c文件中則將stm32f4xx_it.c添加到USER包內(nèi),如果用戶不需要將自己編寫的中斷響應(yīng)函數(shù)保存在stm32f4xx_it.c中則可以不添加該文件到USER包中。圖2-16添加用戶文件到USER中5.啟動文件配置
3)將delay.c、sys.c文件添加到system組中,如圖2-17所示。圖2-17添加sys.c和delay.c文件5.啟動文件配置
4)添加文件的包內(nèi)列出對應(yīng)的包內(nèi)文件,如圖2-18所示。圖2-18添加文件后的模板項目6.項目頭文件路徑配置在MDK集成環(huán)境中需要明確指出文件頭文件所在路徑,否則MDK無法查找到各類元件中需要的頭文件。圖2-19設(shè)置頭文件路徑單擊工具欄內(nèi)的,在彈出的界面內(nèi)選擇C/C++選項,鼠標(biāo)左鍵單擊“includePaths”右側(cè)的按鈕,在彈出的窗口中在空白處雙擊鼠標(biāo)左鍵,如圖2-19所示。6.項目頭文件路徑配置然后點擊單片機右側(cè)的,選擇頭文件所在的文件夾,如圖2-20所示,添加CORE文件夾路徑。同時添加USER文件夾、FWLIB\inc、SYSTEM\delay、SYSTEM\sys文件夾路徑。圖2-20選擇頭文件路徑文件夾6.項目頭文件路徑配置對于STM32F40系列工程,還需要添加一個全局宏定義標(biāo)識符。單擊工具欄內(nèi)的,在彈出的界面內(nèi)選擇C/C++選項內(nèi)的“Define:”操作框內(nèi)輸入“STM32F40_41xxx,USE_STDP
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國垃圾處置設(shè)施市場消費趨勢與多元化銷售渠道研究報告
- 東莞市中堂鎮(zhèn)公開招聘編外聘用人員20人備考題庫及參考答案詳解1套
- 2026年重慶醫(yī)科大學(xué)編外聘用人員招聘備考題庫及完整答案詳解一套
- 2026年鄭州高新區(qū)科學(xué)大道第二小學(xué)教師招聘備考題庫帶答案詳解
- 2026年永康市龍山鎮(zhèn)人民政府工作人員招聘備考題庫及參考答案詳解一套
- 2025至2030中國立克次體檢測技術(shù)發(fā)展現(xiàn)狀及商業(yè)化前景研究報告
- 2026年桃李未來1對1-26屆校園招聘65人備考題庫及1套參考答案詳解
- 北京市通州區(qū)精神病醫(yī)院面向2026年應(yīng)屆畢業(yè)生公開招聘備考題庫完整參考答案詳解
- 2026年西安交通大學(xué)繼續(xù)教育學(xué)院招聘備考題庫完整參考答案詳解
- 教育行政學(xué) 教育行政組織
- 2025年互聯(lián)網(wǎng)安全與隱私保護操作手冊
- 潔凈墻板專項施工方案
- 5g基站施工指導(dǎo)方案
- 浙江省金華市2024-2025學(xué)年七年級上學(xué)期期末地理試卷(含答案)
- 北京通州產(chǎn)業(yè)服務(wù)有限公司招聘參考題庫及答案1套
- 2026年七臺河職業(yè)學(xué)院單招職業(yè)技能筆試模擬試題帶答案解析
- 2025至2030中國短弧氙燈行業(yè)調(diào)研及市場前景預(yù)測評估報告
- 2026廣東河源市東源縣司法局招聘司法協(xié)理員9人筆試備考題庫及答案解析
- 炎德·英才·名校聯(lián)考聯(lián)合體2026屆高三年級1月聯(lián)考英語試卷(含答及解析)+聽力音頻+聽力材料
- 2025年易制毒化學(xué)品自查報告
- 科創(chuàng)飛地合作協(xié)議書
評論
0/150
提交評論