版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第4章STM32CubeIDE創(chuàng)建工程實(shí)例4.1STM32CubeIDE的安裝在安裝STM32CubeIDE之前,首先登錄ST公司官網(wǎng),選擇STM32CubeIDE安裝包。網(wǎng)址如下:/zh/development-tools/stm32cubeide.html#登錄ST公司官網(wǎng)后,選擇STM32CubeIDE安裝包版本(如STM32CubeIDE1.15.1),單擊圖4-1中的獲取軟件按鈕,然后進(jìn)入STM32CubeIDE安裝包下載許可協(xié)議選擇界面,需要登錄MyST,同STM32CubeMX的操作方式,這里從略。4.1.1STM32CubeIDE軟件包獲取圖4-1STM32CubeIDE安裝包下載界面下載后STM32CubeIDE軟件包如圖4-2所示。圖4-2STM32CubeIDE軟件包STM32FCubeIDE安裝步驟如下。將圖4-2所示的STM32CubeIDE軟件包解壓縮后,得到如圖4-3所示的STM32CubeIDE應(yīng)用程序。4.1.2STM32FCubeIDE的安裝步驟圖4-3STM32CubeIDE應(yīng)用程序雙擊st-stm32cubeide_1.15.1_21094_20240412_1041_x86_64應(yīng)用程序,彈出如圖4-4所示的STM32CubeIDE安裝向?qū)Ы缑妗D4-4STM32CubeIDE安裝向?qū)Ы缑鎲螕魣D4-4中的Next按鈕,彈出如圖4-5所示LicenseArgreement(許可協(xié)議)接受界面,選擇Accept:Iaccepttheagreement。圖4-5LicenseArgreement(許可協(xié)議)接受界面單擊圖4-5中的IAgree按鈕,彈出如圖4-6所示的STM32CubeIDE安裝路徑選擇界面。圖4-6STM32CubeIDE安裝路徑選擇界面一般選擇默認(rèn)路徑,單擊圖4-6中的Next按鈕,彈出如圖4-7所示的ChooseComponents(選擇組件)選擇界面。圖4-7ChooseComponents(選擇組件)選擇界面單擊圖4-7中的Install按鈕,彈出如圖4-8所示的Installing(安裝)界面。圖4-8STM32CubeIDE安裝界面在STM32CubeIDE安裝工程中,會彈出如圖4-9所示的STMicroelectronics通用串行總線設(shè)備安裝選擇界面。圖4-9STMicroelectronics通用串行總線設(shè)備安裝選擇界面由于在應(yīng)用STM32CubeIDE開發(fā)調(diào)試時(shí),要將ST-LINK/V2插入到計(jì)算機(jī)的USB接口,所以單擊圖4-9中的安裝按鈕,彈出如圖4-10所示的STM32CubeIDE繼續(xù)安裝界面。圖4-10STM32CubeIDE繼續(xù)安裝界面STM32CubeIDE安裝完成,彈出如圖4-11所示的STM32CubeIDE安裝完成界面。圖4-11STM32CubeIDE安裝完成界面單擊圖4-11中的Next按鈕,彈出如圖4-12所示的創(chuàng)建桌面圖標(biāo)界面。圖4-12創(chuàng)建桌面圖標(biāo)界面單擊圖4-12中的Finish(完成)按鈕,在計(jì)算機(jī)桌面生成如圖4-13所示的STM32CubeIDE圖標(biāo)。圖4-13STM32CubeIDE圖標(biāo)4.2啟動STM32CubeIED啟動STM32CubeIDE,首先將會出現(xiàn)圖4-14所示的歡迎界面。圖4-14STM32CubeIDE的歡迎界面隨后,會顯示啟動(Launcher)界面,如圖4-15所示。圖4-15STM32CubeIDE的啟動界面圖4-15中的Workspace文本框,供用戶選擇計(jì)算機(jī)上存放工程文件的工作空間地址。勾選“Usethisasthedefaultanddonotaskagain”復(fù)選框,可以將所選地址設(shè)為默認(rèn)啟動地址,啟動時(shí)不再彈出選擇界面。RecentWorkspaces顯示最近建立或訪問過的工作空間,用戶可直接點(diǎn)擊查看。上述參數(shù)設(shè)置完畢后,單擊界面右下的Launch按鈕,即可啟動STM32CubeIDE,如圖4-16所示。圖4-16啟動STM32CubeIDE啟動過程結(jié)束后,會彈出圖4-17所示的STM32CubeIDE主界面。圖14-17STM32CubeIDE的主界面4.3建立新工程在STM32CubeIDE的主界面中,打開主菜單File選擇New→STM32Project命令,就可以建立一個新的STM32工程,如圖4-18所示。4.3.1建立STM32工程圖4-18建立一個新的STM32工程選擇STM32Project之后,會顯示如圖4-19所示的初始化目標(biāo)選擇器進(jìn)度框。這個過程實(shí)際上是調(diào)用STM32各系列芯片的信息。在這個初始化的過程中會彈出圖4-20所示的下載選擇文件(DownloadselectedFiles)的進(jìn)度框(初次啟動STM32CubeIDE才有)。圖4-19顯示初始化目標(biāo)選擇器的進(jìn)度圖4-20下載選擇的文件目標(biāo)選擇器初始化過程結(jié)束后,會彈出圖4-21所示的目標(biāo)器件選擇(TargetSelection)界面1。從這個界面中,可以選擇項(xiàng)目工程所用的具體器件。4.3.2選擇目標(biāo)器件圖4-20下載選擇的文件以芯片型號是STM32F407ZGT6搜索為例,可在器件搜索框中輸入該型號。在輸入過程中,系統(tǒng)會自動列出包含已輸入信息的所有器件名稱以供選擇,同時(shí)在右下側(cè)信息框內(nèi)顯示所選器件的詳細(xì)信息。如圖14-22所示,選擇的器件型號是STM32F407ZGT6。圖4-22目標(biāo)器件選擇界面(2)在圖4-22中根據(jù)型號找到所用芯片,然后在右下側(cè)列表項(xiàng)中選中該芯片,如圖4-23所示。圖4-23選中具體的芯片如果在器件搜索框內(nèi)輸入完整的器件型號,在MCUs/MPUsList中就會出現(xiàn)唯一一行對應(yīng)該型號芯片的信息。選中器件后,上方可查看特性、框圖、文件資源及數(shù)據(jù)手冊,查看文件時(shí)系統(tǒng)聯(lián)網(wǎng)從ST官網(wǎng)下載。單擊Datasheet,則會彈出圖4-24所示對話框,從ST網(wǎng)站上下載該器件的數(shù)據(jù)手冊。圖4-24下載數(shù)據(jù)手冊目標(biāo)器件選擇完成后,單擊圖4-21所示界面中右下側(cè)的Next按鈕(在上述器件選擇步驟完成后,該按鈕才允許單擊),會彈出STM32工程建立(ProjectSetup)界面,如圖4-25所示。4.3.3設(shè)置工程參數(shù)圖4-25工程建立界面在工程建立界面中,需要給所建立的工程命名。圖4-26所示為固件庫(Firm-wareLibraryPackageSetup)設(shè)置界面。圖4-26固件庫設(shè)置界面單擊圖4-26中的Finish按鈕會彈出一個提示框(如圖4-27所示),詢問是否進(jìn)入STM32CubeMx界面。在STM32CubeMx界面中可以完成對MCU各硬件功能模塊的配置。4.3.4硬件功能模塊配置圖4-27提示是否進(jìn)入硬件配置界面在圖4-27中,單擊Yes按鈕會顯示一個初始化硬件配置過程的進(jìn)度條,然后就會啟動項(xiàng)目工程的建立過程。工程建立過程結(jié)束后會出現(xiàn)如圖4-28所示的名為1ed.ioc的硬件配置界面,其中l(wèi)ed為所建立的工程名。本例的任務(wù)是點(diǎn)亮一只發(fā)光二極管,并以此為例講解硬件配置過程和IDE的使用方法。用STM32F407ZGT6控制一個發(fā)光二極管。在硬件上,該發(fā)光二極管的亮滅是由MCU的PA5引腳控制的。PA5引腳輸出高電平時(shí)LED點(diǎn)亮,輸出低電平時(shí)LED熄滅。圖4-28led.ioc的硬件配置界面1.配置GPIO首先介紹如何配置PA5。在圖4-28所示界面中,給出了STM32F407ZGTx芯片的外形圖,四周都是引腳。用放大工具將該圖放大后(進(jìn)入Pinoutview界面,用鼠標(biāo)中間的滾輪即可放大或縮小,或者單擊圖4-29中的放大、縮小工具),可以找到PA5引腳;單擊PA5引腳,會彈出圖4-29所示選項(xiàng)列表。圖4-29中的選項(xiàng)列表是用來選擇PA5功能的。圖4-29選擇引腳功能由于在硬件上將PA5用于驅(qū)動一個發(fā)光二極管,所以選擇PA5的功能為輸出(GPIO_Output)。選擇完畢后,可以看到PA5的顏色會改變,并且出現(xiàn)GPIO_Output字樣,如圖4-30所示。圖4-30選擇引腳功能為GPIO_Output圖4-31所示為GPIO的模式與配置。圖4-31GPIO的模式與配置2.配置RCC接下來,介紹如何配置RCC(ResetandClockControl,復(fù)位和時(shí)鐘控制)參數(shù)。單擊SystemCore→RCC,會顯示RCC的模式與配置界面。RCC的模式與配置界面如圖4-32所示。圖4-32RCC的模式與配置3.配置SYSSYS的模式與配置(SYSModeandConfiguration)界面中是一些有關(guān)系統(tǒng)的配置參數(shù),如調(diào)試(Debug)的方式、系統(tǒng)喚醒模式的選擇、時(shí)間基準(zhǔn)的選擇等。本例中,只選擇了調(diào)試方式,其下拉列表框中有常用的JTAG、串行線(SerialWire)等選項(xiàng)。由于使用的是NUCLEO-G474RE板上自帶的調(diào)試器,故選擇SerialWire即可。其他參數(shù)采用默認(rèn)值。SYS模式與配置界面如圖4-33所示。圖4-33SYS的模式與配置4.配置系統(tǒng)時(shí)鐘接下來,介紹系統(tǒng)時(shí)鐘的配置。單擊圖4-32中的ClockConfiguration標(biāo)簽頁,會顯示關(guān)于STM32的詳細(xì)時(shí)鐘配置圖,也稱時(shí)鐘樹。由于完整的時(shí)鐘配置圖中包含的內(nèi)容很多,為了清晰起見,圖4-34只給出了局部信息。由于本例中僅使用HSE作為時(shí)鐘,所以在此只介紹HSE相關(guān)的時(shí)鐘配置。圖4-34時(shí)鐘配置圖設(shè)置好以后,系統(tǒng)時(shí)鐘(SYSCLK)的頻率即為168MHz,如圖4-35所示。圖4-35配置系統(tǒng)時(shí)鐘系統(tǒng)時(shí)鐘配置完畢后,保存led.ioc文件。如圖4-36所示,打開主菜單Project選擇GenerateCode命令,此時(shí)會彈出圖4-37所示的對話框。在該過程中,系統(tǒng)會將上面所配置的信息自動轉(zhuǎn)換成代碼。4.3.5啟動代碼生成功能圖4-36生成代碼圖4-37代碼生成進(jìn)度顯示如圖4-38所示,展開工程界面左側(cè)瀏覽條目中的Core→Src,其中的main.c就是自動生成代碼的主程序。雙擊,可打開main.c程序代碼。圖4-38查看自動生成的C代碼4.4修改代碼查看main.c文件會發(fā)現(xiàn)主程序中有很多/*······*/,此為注釋語句。在程序編譯時(shí),這些注釋語句是不會被編譯的,而且這些注釋基本都是成對出現(xiàn)的。譬如,在main函數(shù)的最后有個while(1)語句:/*Infiniteloop*///提示如下代碼為無限循環(huán)/*USERCODEBEGINWHILE*///提示while中的用戶代碼段開始while(1){/*USERCODEENDWHILE*///提示while中的用戶代碼段結(jié)束/*USERCODEBEGIN3*///提示用戶代碼段3開始4.4.1代碼中注釋對及其作用}/*USERCODEEND3*///提示用戶代碼段3結(jié)束上面這段代碼中,第一行的注釋語句/*Infiniteloop*/提示下面是一個無限循環(huán)。后面緊跟著的是兩對注釋:/*USERCODEBEGINWHILE*/……/*USERCODEENDWHILE*/和/*USERCODEBEGIN3*/……/*USERCODEEND3*/在這兩個注釋對中,都明確說明了這是用戶代碼的開始(USERCODEBEGIN)和結(jié)束(USERCODEEND)的位置。此為提示信息,提示編程者把代碼寫在這對注釋語句之間。下面來看main函數(shù)中while語句之前的幾個子函數(shù)。為清晰起見,先刪除用于提示寫入用戶代碼的注釋對語句。去掉注釋對語句后,圖4-39中的main函數(shù)代碼如下:intmain(void){HAL_Init();//復(fù)位外設(shè)、初始化Flash接口和時(shí)鐘基準(zhǔn)等SystemClock_Config();//配置系統(tǒng)時(shí)鐘MX_GPIO_Init();//初始化外設(shè)while(1){}4.4.2初始化函數(shù)}上述main函數(shù)代碼中有三個子函數(shù)。這些子函數(shù)都是關(guān)于硬件配置的,也是前面配置完引腳、時(shí)鐘等硬件參數(shù)后STM32CubeIDE自動生成的代碼。在圖4-39所示界面中,當(dāng)把光標(biāo)移到HAL_Init()上時(shí),會顯示該函數(shù)的簡單介紹。圖4-39查看函數(shù)聲明在main函數(shù)中,另一個重要的子函數(shù)是關(guān)于I/O引腳配置的,即MX_GPIO_Init()函數(shù),其聲明也是在main.c文件中給出。由于在前面僅配置了PA5,所以在MX_GPIO_Init()函數(shù)中主要是針對PA5的配置信息,如初始電平、模式、上拉/下拉等。staticvoidMX_GPIO_Init(void){GPIO_InitTypeDefGPIO_Intstruct={0};/*GPIOPortsClockEnable*///使能時(shí)鐘——HAL_RCC_GPIOF_CLK_ENABLE();——HAL_RCC_GPIOA_CLK_ENABLE();/*ConfigureGPIOpinOutputLevel*///設(shè)置初始狀態(tài)HAL_GPIO_WritePin(LED_GPIO_Port,LED_Pin,GPIO_PIN_SET);/*ConfigureGPIOpin:CED_Pin*///配置引腳模式、上拉/下拉、速度GPIO_Intstruct.pin=LED_Pin;GPIO_InitStruct.Mode=GPIO_MODE_OUTPVT_PP;GPIO_InitStruct.Pull=GPTO_PULUP;GPIO_InitStruct.Speed=GPIO_SPEED_FREQHIGH;HALGPIOLInit(LED-GPI0_Port,&GPIO_InitStruct);}至此,硬件配置基本完畢,下面就可以開始編寫用戶代碼了。4.4.3添加用戶代碼HAL_GPIO_TogglePin()和HAL_Delay()都是STM32Cube固件庫提供的函數(shù)。STM32CubeIDE采用的是Eclipse架構(gòu),具有代碼自動提示功能(contentassist)。譬如,寫代碼時(shí),在文件中輸入HAL后按組合鍵Alt+/,就會開啟代碼自動提示功能。系統(tǒng)會自動顯示以HAL打頭的固件庫函數(shù)。圖4-40中,顯示了所有以HAL_GPIO_打頭的庫函數(shù)。4.4.4如何查找所需要的HAL庫函數(shù)圖4-40使用代碼自動提示功能圖4-39中顯示了很多與GPIO相關(guān)的庫函數(shù),對于GPIO來說,最常用的是后面三個:HAL_GPIO_ReadPin(GPIOx,GPIO_Pin);HAL_GPIO_TogglePin(GPIOx,GPIO_Pin);HAL_GPIO_WritePin(GPIOx,GPIO_Pin,PinState);HAL_GPIO_ReadPin()函數(shù)是在將I/O配置為輸入后用于讀取GPIO引腳上的值(狀態(tài))的;HAL_GPIO_TogglePin()和HAL_GPIO_WritePin()函數(shù)都是在將GPIO配置為輸出后用于寫GPIO值(狀態(tài))的。這些函數(shù)的使用方法及與硬件的關(guān)系,后面講GPIO時(shí)會進(jìn)一步說明。將上面控制PA5的語句和延時(shí)語句放到while(1)循環(huán)中,即可完成用戶代碼的修改。不過需要注意,這兩句代碼要放置到注釋對中,譬如放到/*USERCODEBEGIN3*/與/*USERCODEEND3*/之間:while(1){/*USERCODEBEGIN3*/HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_5);HAL_Delay(500);}/*USERCODEEND3*/至此,點(diǎn)亮發(fā)光二極管的程序編寫完畢。4.4.5修改后的代碼4.5編譯工程單擊工具欄上的BuildAll按鈕(或者打開主菜單Project選擇BuildAll命令),就可以啟動項(xiàng)目工程編譯過程,如圖4-41所示。用BuildAll編譯工程,會把工作空間(Workspace)中所有項(xiàng)目都編譯一遍。工作空間如果有多個項(xiàng)目,最好打開菜單Project選擇BuildProject命令,這樣就只會編譯當(dāng)前工程,如圖4-42所示。編譯過程結(jié)束后,如果沒有錯誤,在工程界面下側(cè)信息窗中的Console欄會出現(xiàn)編譯信息,如圖4-43所示。如圖4-43所示,編譯中沒有遇到錯誤和警告。圖4-41編譯工程圖4-42編譯當(dāng)前工程圖4-43編譯結(jié)果信息4.6STM32CubeProgrammer軟件ST有限公司發(fā)布新版STM32CubeProgrammer和STM32CubeMonitor,助力開發(fā)者快速推向市場。嵌入式工程師需選擇功能全開發(fā)平臺,泛生態(tài)工具對STM32開發(fā)尤為重要。STM32CubeProgrammer支持通過ST-Link的SWD/JTAG接口擦寫STM32片上存儲器。也支持通過UART、USB、I2C、SPI、CAN接口調(diào)用芯片內(nèi)bootloader擦寫存儲器。ST-Linkv2僅支持UART和USB通信,ST-Linkv3新增SPI、I2C和CAN支持。STM32CubeProgrammer還可操作MCU選項(xiàng)字節(jié)和一次性可編程字節(jié)。通過外部loader,STM32CubeProgrammer支持對外部存儲器的編程。STM32CubeProgrammer是針對STM32的一款多功能的編程下載工具,提供圖形用戶界面(GUI)和命令行界面(CLI)版本。STM32CubeProgrammer還允許通過腳本編寫選項(xiàng)編程和上傳、編程內(nèi)容驗(yàn)證以及編程自動化。STM32CubeProgrammer軟件特色如下:(1)可對片內(nèi)Flash進(jìn)行擦除或編程以及查看Flash內(nèi)容。(2)支持s19、hex、elf和bin等格式的文件。(3)支持調(diào)試接口或bootloader接口。①STLINK調(diào)試接口(JTAG/SWD)②UART或USBDFUbootloader接口(4)支持對外部的存儲器的擦除或編程。(5)支持STM32芯片的自動編程(擦除、校驗(yàn)、編程、選項(xiàng)字配置)。(6)支持對STM32片內(nèi)OTP區(qū)域的編程。(7)既支持圖形化界面操作也支持命令行操作。(8)支持對ST-Link調(diào)試器的在線固件升級。(9)配合STM32TrustedPackageCreatortool實(shí)現(xiàn)固件加密操作。(10)支持Windows、Linux和MacOS多種操作系統(tǒng)。STM32CubeProgrammer圖形化用戶界面如圖4-44所示。圖4-44STM32CubeProgrammer圖形化用戶界面1. STM32CubeProgrammer的主要功能在STM32CubeProgrammer最左側(cè)一欄可以在不同的功能標(biāo)簽頁之間切換,進(jìn)行不同的操作。接下來,我們會對STM32CubeProgrammer的主要功能進(jìn)行介紹。(1)支持按扇區(qū)或全片擦除Flash,導(dǎo)入多種格式文件燒錄,如bin、elf、hex和srec。(2)連接MCU后,在“Erasing&Programming”頁執(zhí)行按扇區(qū)或全片擦除操作。(3)燒錄文件可在“Erasing&Programming”或“Memory&fileedition”頁導(dǎo)入并啟動。(3)在“Memory&fileedition”頁還能讀存儲器值并保存為bin、hex或srec格式文件。(3)支持修改存儲器指定地址值,自動完成擦除與寫回,適用于OTP字節(jié)編程。(4)“OB”頁顯示當(dāng)前MCU選項(xiàng)字,允許用戶修改,詳見MCU參考手冊。(5)“二合一”燒錄可同時(shí)寫Flash和選項(xiàng)字,命令行使用“-ob”參數(shù)配置。(5)示例:設(shè)置讀保護(hù)level1,勾選全片擦除和下載文件,輸入“-obrdp=0xBB”,開始燒錄。(5)“-ob”命令中OptByte字段定義可通過界面“Optionbytes”或“-obdispl”命令查詢。(6)外部存儲器SPI、FSMC、QSPI等接口讀寫需配合externalloader使用。2. STM32CubeProgrammer關(guān)鍵技術(shù)STM32CubeProgrammer關(guān)鍵技術(shù)如下:(1)STM32CubeProgrammer統(tǒng)一體驗(yàn),集成ST-Link功能,跨平臺自帶OpenJDK8,提供圖形與命令行界面,方便用戶操作和腳本編寫。(2)核心支持STM32調(diào)試與燒寫,2.6版可導(dǎo)出動態(tài)修改寄存器,支持一次燒寫外部存儲,自定義日志顏色便于調(diào)試。(3)集成TrustedPackageCreator,支持OEM密鑰安全上傳與固件加密,支持多接口與外部安全固件安裝,助力STM32安全。(4)使用STM32WL提取Sigfox證書,導(dǎo)入/sfxp下載憑據(jù)包,再通過STM32CubeProgrammer加載并獲得MCUSigfoxID注冊。4.7STM32CubeMonitor軟件STM32CubeMonitor1.0.0由ST公司2020年發(fā)布,借助ST-Link仿真器實(shí)時(shí)監(jiān)測STM32內(nèi)部變量變化,支持曲線顯示。用戶可修改變量值,且通過局域網(wǎng)內(nèi)瀏覽器訪問監(jiān)控界面,功能超越斷點(diǎn)調(diào)試,類數(shù)字示波器實(shí)用調(diào)試工具。軟件基于Node-RED開發(fā),Node-RED是IBM2013年開源項(xiàng)目,支持硬件與Web服務(wù)連接,具圖形化流程式編程優(yōu)勢。STM32CubeMonitor是基于Node-RED開發(fā)的,它增加了一些專用節(jié)點(diǎn),用于STM32運(yùn)行時(shí)數(shù)據(jù)監(jiān)測和可視化。STM32CubeMonitor具有如下功能和特性。(1)基于流程的圖形化編輯器,無須編程就可創(chuàng)建監(jiān)測程序,設(shè)計(jì)顯示面板。(2)通過ST-Link仿真器與STM32系統(tǒng)連接,可使用SWD或JTAG調(diào)試接口。(3)在STM32上的程序全速運(yùn)行時(shí),STM32CubeMonitor可以即時(shí)(on-the-fly)讀取或修改STM32內(nèi)存中的變量或外設(shè)寄存器的值。(4)可以解讀STM32應(yīng)用程序文件中的調(diào)試信息。(5)具有兩種讀取數(shù)據(jù)的模式:直接(direct)模式和快照(snapshot)模式。(6)可以設(shè)置觸發(fā)條件觸發(fā)數(shù)據(jù)采集。(7)可以將監(jiān)測的數(shù)據(jù)存儲到文件中,以便后期分析。(8)具有可定制的數(shù)據(jù)可視化顯示組件,如曲線、儀表板(gauge)、柱狀圖等。(9)支持多個ST-Link仿真器同步監(jiān)測多個STM32設(shè)備。(10)在同一個局域網(wǎng)內(nèi)的其他計(jì)算機(jī)、手機(jī)或平板計(jì)算機(jī)上,通過瀏覽器就可以實(shí)現(xiàn)遠(yuǎn)程監(jiān)測。(11)可以通過公用云平臺和MQTT(MessageQueuingTelemetryTransport,消息隊(duì)列遙測傳輸)協(xié)議實(shí)現(xiàn)遠(yuǎn)程網(wǎng)絡(luò)監(jiān)測。(12)支持多種操作系統(tǒng),包括Windows、Linux和macOS。簡單地說,STM32CubeMonitor能使用圖形化編程方式設(shè)計(jì)監(jiān)測程序,通過ST-Link仿真器連接STM32系統(tǒng)后,就可以實(shí)時(shí)監(jiān)測和顯示所監(jiān)測的變量或外設(shè)寄存器的值。圖4-45是STM32CubeMonitor的圖形化編輯器界面,可供用戶使用各種節(jié)點(diǎn)連接組成流程,實(shí)現(xiàn)變量監(jiān)測和顯示的程序。圖4-45STM32CubeMonitor的圖形化編輯器界面完成圖形化程序設(shè)計(jì)后,單擊圖4-45右上角的DEPLOY按鈕就可以部署程序,然后單擊圖4-44右上角的DASHBOARD按鈕,可以打開Dashboard窗口,也就是監(jiān)測結(jié)果顯示圖形界面。STM32CubeMonitor目前只支持ST-Link仿真器,不支持其他的仿真器。4.8STM32F407開發(fā)板的選擇本書應(yīng)用實(shí)例是在野火F407-霸天虎開發(fā)板上調(diào)試通過的,該開發(fā)板可以在淘寶上購買,價(jià)格因模塊配置的區(qū)別而不同,價(jià)格在500元~700元之間。野火F407-霸天虎實(shí)驗(yàn)平臺使用STM32F407ZGT6作為主控芯片,使用4.3寸液晶屏進(jìn)行交互??赏ㄟ^Wi-Fi的形式接入互聯(lián)網(wǎng),支持使用串口(TTL)、485、CAN、USB協(xié)議與其他設(shè)備通信,板載Flash、EEPROM存儲器、全彩RGBLED燈,還提供了各式通用接口,能滿足各種各樣的學(xué)習(xí)需求。野火F407-霸天虎開發(fā)板如圖4-45所示。圖4-45野火F407-霸天虎開發(fā)板(帶TFTLCD)4.9STM32仿真器的選擇開發(fā)板可以采用ST-Link、J-Link或野火fireDAP下載器(符合CMSIS-DAPDebμgger規(guī)范)下載程序。1. CMSIS-DAP仿真器CMSIS-DAP是支持訪問CoreSight調(diào)試訪問端口(DAP)的固件規(guī)范和實(shí)現(xiàn),以及各種Cortex處理器提供CoreSight調(diào)試和跟蹤。如今眾多Cortex-M處理器能這么方便調(diào)試,在于有一項(xiàng)基于ArmCortex-M處理器設(shè)備的CoreSight技術(shù),該技術(shù)引入了強(qiáng)大的新調(diào)試(Debμg)和跟蹤(Trace)功能。CoreSight兩個主要功能就是調(diào)試和跟蹤功能。(1)調(diào)試功能①運(yùn)行處理器的控制,允許啟動和停止程序。②單步調(diào)試源碼和匯編代碼。③在處理器運(yùn)行時(shí)設(shè)置斷點(diǎn)。④即時(shí)讀取/寫入存儲器內(nèi)容和外設(shè)寄存器。⑤編程內(nèi)部和外部Flash存儲器。(2)跟蹤功能①串行線查看器(SWV)提供程序計(jì)數(shù)器(PC)采樣,數(shù)據(jù)跟蹤,事件跟蹤和儀器跟蹤信息;②指令跟蹤(ETM)技術(shù)能夠?qū)崟r(shí)地將處理器執(zhí)行的指令流式傳輸?shù)絇C,進(jìn)而支持歷史序列的調(diào)試、軟件性能分析及代碼覆蓋率分析等多種功能。這樣的改進(jìn)不僅提升了數(shù)據(jù)傳輸?shù)男剩€大大增強(qiáng)了開發(fā)和調(diào)試過程的靈活性和準(zhǔn)確性。野火fireDAP高速仿真器如圖4-46所示。圖4-46野火fireDAP高速仿真器2. J-LinkJ-Link是SEGGER公司為支持仿真Arm內(nèi)核芯片推出的JTAG仿真器。J-Link仿真器如圖4-47所示。J-Link仿真器具有如下特點(diǎn):(1)JTAG最高時(shí)鐘頻率可達(dá)15MHz。(2)目標(biāo)板電壓范圍為1.2~3.3V,5V兼容。(3)具有自動速度識
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年智能遮陽鋰電池包項(xiàng)目營銷方案
- 2026年空天信息技術(shù)項(xiàng)目評估報(bào)告
- 2025年江蘇省鎮(zhèn)江市中考道法真題卷含答案解析
- 2026年陜西省延安市高三一模高考語文試卷試題(含答案詳解)
- 重癥救治護(hù)理試題及答案
- 2025年國家高壓電工證理論考試題庫(含答案)
- 學(xué)校安全工作總結(jié)匯報(bào)
- 2025年不動產(chǎn)登記中心招聘考試試題庫真題及答案
- 疾病控制預(yù)防中心突發(fā)公共衛(wèi)生事件應(yīng)急處理預(yù)案
- 2025年市容環(huán)境衛(wèi)生管理中心年度工作總結(jié)(二篇)
- 離婚協(xié)議標(biāo)準(zhǔn)版(有兩小孩)
- 浙江省臺州市路橋區(qū)2023-2024學(xué)年七年級上學(xué)期1月期末考試語文試題(含答案)
- 假體隆胸后查房課件
- 2023年互聯(lián)網(wǎng)新興設(shè)計(jì)人才白皮書
- DB52-T 785-2023 長順綠殼蛋雞
- c語言知識點(diǎn)思維導(dǎo)圖
- 關(guān)于地方儲備糧輪換業(yè)務(wù)會計(jì)核算處理辦法的探討
- GB/T 29319-2012光伏發(fā)電系統(tǒng)接入配電網(wǎng)技術(shù)規(guī)定
- GB/T 1773-2008片狀銀粉
- GB/T 12007.4-1989環(huán)氧樹脂粘度測定方法
- (完整版)北京全套安全資料表格
評論
0/150
提交評論