基于STM32的FreeRTOS開發(fā)(2)----Cube工程的FreeRTOS配置
為什么使用Cube進行FreeRTOS配置
STM32Cube是STMicroelectronics提供的一種軟件工具,用于配置和生成STM32微控制器的固件。它提供了一個圖形化用戶界面,可以輕松配置微控制器的各種功能和外設(shè),并生成初始化代碼。使用Cube可以大大簡化微控制器開發(fā)過程,減少手工編寫配置代碼的工作量。 FreeRTOS是一個嵌入式實時操作系統(tǒng),提供了任務(wù)調(diào)度、信號量、隊列等多種多核操作系統(tǒng)常用機制。使用Cube配置FreeRTOS可以使用圖形化界面輕松配置任務(wù)和資源,并生成初始化代碼。這樣可以大大減少手工編寫FreeRTOS配置代碼的工作量,使得開發(fā)人員能夠?qū)W⒂趹?yīng)用程序的開發(fā)。
最近在弄ST和GD的課程,需要GD樣片的可以加群申請:6_15061293 。
樣品申請
https://www.wjx.top/vm/wFGhGPF.aspx#
生成例程
使用STM32CUBEMX生成例程,這里使用NUCLEO-F103RB開發(fā)板?

?新建一個工程,這里有3種新建工程方式。 ● 基于MCU新建工程 ● 基于ST模塊新建工程 ● 基于案例新建工程?

?創(chuàng)建時候,可以查看開發(fā)板或者芯片的基礎(chǔ)資料。?

配置FreeRTOS
如果想要在STM32上使用FreeRTOS,需要遵循以下步驟: 1.在左側(cè)的菜單欄中選擇“Middleware”,然后找到“FreeRTOS”選項并將其打開。?

?2.選擇FreeRTOS版本 FreeRTOS是一個可移植的實時操作系統(tǒng),可以在很多不同的平臺上運行。 CMSIS-RTOS v1是在CMSIS v2之前發(fā)布的版本。它為 Cortex-M 微控制器提供了簡單的RTOS接口,但沒有提供其他額外的功能,如事件、信號量等。 CMSIS-RTOS v2是在CMSIS v3之后發(fā)布的版本。它為 Cortex-M 微控制器提供了豐富的RTOS接口,支持事件、信號量等多種功能。它還支持跨平臺開發(fā),可以在不同的操作系統(tǒng)上使用。 FreeRTOS 可以使用兩種CMSIS-RTOS版本來移植到不同的平臺上,CMSIS_v1和CMSIS_v2可以使FreeRTOS移植到很多不同的平臺上。選擇哪一個版本具體取決于項目需求和硬件平臺的限制。 在這里選擇CMSIS v2進行開發(fā)。?

?3.需要為FreeRTOS配置合適的時鐘源,圍了防止與HAL庫鐘的時鐘沖突,可以將時基源修改為定時器。?

?4.在“FreeRTOS”選項卡中,可以配置FreeRTOS的各種參數(shù),如內(nèi)存分配方式、任務(wù)優(yōu)先級等。?

?在配置FreeRTOS的時候,系統(tǒng)會自動創(chuàng)建一個用戶任務(wù),在配置面板鐘選擇Tasks and Queues可以查看。?

?5.生成包含F(xiàn)reeRTOS配置的代碼。 在Project Manager中,選擇Code Generator,選擇生成獨立的c和文件。?

?在Project中,配置項目路徑,注意不能有空格和中文,之后選擇IDE為STM32CubeIDE。?

?6.點擊“Generate Code”按鈕,STM32CubeMX將會生成包含F(xiàn)reeRTOS配置的代碼。?

?編譯并下載程序到STM32微控制器,就可以使用FreeRTOS了。請注意,這只是一個大致的流程,具體的配置過程因開發(fā)環(huán)境和微控制器型號而異。