RT-Thread 4.0 + STM32F407 學習筆記1

RT Thread 4.0提供了新的BSP框架框架

新 BSP 框架的主要特性以下:工具

  • 提供多系列 BSP 模板,大大下降新 BSP 的添加難度;spa

  • 每一個 BSP 都配有齊全的驅動文件,開發者能夠方便地使用全部驅動;3d

  • 開發者可使用 CubeMX 工具對 BSP 進行圖形化配置;調試

因爲Hal庫是之後主流,在使用STD庫對STM32很熟悉後,建議轉到Hal庫日誌

本文參考官方《STM32系列BSP製做教程》,因爲官方提供的CubeMX與Hal庫版本固定,不必定適用全部初步使用的人,本文使用本身的CubeMX製做BSP並強調注意事項。code

其中一些解釋如內容說明、Scons、Env等,詳細參見《STM32系列BSP製做教程》blog

1. BSP 製做方法

BSP 的製做過程分爲以下五個步驟:教程

  1. 複製通用模板ip

  2. 使用 CubeMX 工具配置工程

  3. 修改 BSP 中的 Kconfig 文件

  4. 修改構建工程相關文件

  5. 從新生成工程

1.1 複製通用模板

複製        rt-thread-4.0.0\bsp\stm32\libraries\templates\stm32f4xx

重命名爲 rt-thread-4.0.0\bsp\stm32\stm32f407-pz6808l

1.2 使用CubeMX配置工程

本文使用的是CubeMX 5.2版本 

配置RCC使能外部晶振

 

使能調試

使能UART

時鐘配置

工程管理,生成到BSP框架裏的文件夾下

生成工程以下

1.3 HAL庫替換

刪除MDK-ARM文件夾

複製Drivers到 rt-thread-4.0.0\bsp\stm32\libraries 文件下並重命名爲 STM32F4xx_HAL_502

從模板中複製SConscript文件

1.4文件修改

rt-thread-4.0.0\bsp\stm32\stm32f407-pz6808l\board\board.c

用生成的main.c中的 SystemClock_Config 進行替換

修改 board/Kconfig 文件

修改連接腳本

 

填寫對應芯片的Flah和RAM大小,主要有些芯片有非連續RAM,填寫RAM1大小便可

修改主工程目錄下的

修改 SConstruct 連接本身的HAL庫

修改 board 目錄下的 SConscript

 

修改成須要製做BSP的芯片型號對應內容

注意 stm32f4xx_hal_msp.c 文件  查看是否包含有串口初始化 HAL_UART_MspInit ,沒有則用MX從新生成,不然程序運行會出錯(串口異常)

1.5 使用Env工具生成工程

打開模板 template.uvprojx ,對工程進行相關設置,這樣之後每次文件的改動須要從新生成工程時,工程就不用再設置了;

在 env 界面輸入命令 menuconfig 對工程進行配置,並生成新的 rtconfig.h 文件。

調試日誌的配置,這樣看到初始化時的一些信息

配置完save,而後輸入命令 scons --target=mdk5 從新生成工程

keil打開project工程,編譯無誤,製做BSP成功。

相關文章
相關標籤/搜索