---恢复内容开始---
一 根据相近型号的demo BSP进行修改制作自己的BSP
https://github.com/RT-Thread/rt-thread/blob/master/bsp/stm32/docs/STM32%E7%B3%BB%E5%88%97BSP%E5%88%B6%E4%BD%9C%E6%95%99%E7%A8%8B.md
项目 | 需要修改的内容说明 |
---|---|
CubeMX_Config (文件夹) | CubeMX 工程:芯片型号,时钟源,下载方式,使能串口外设(只需要,为何?),配置时钟树,生成对应工程只是为了获得board/CubeMX_Config/Src/main.c下的SystemClock_Config()拷贝到board.c中 |
linker_scripts (文件夹) | BSP 特定的链接脚本 |
board.c/h | 系统时钟、GPIO 初始化函数、芯片存储器大小(根据具体芯片修改 FLASH 和 RAM 的相关参数) |
Kconfig | 芯片型号、系列、外设资源 |
SConscript | 芯片启动文件、目标芯片型号 |
修改工程模板 |
打开mdk或IAR修改芯片。调试下载方式等 |
二 。通过使能偏上外设编写自己的板载外设,可以利用用板载的外设、内核资源/组件开发相应应用利用,偏上外设加板级扩展模块也相当于板上外设级别
为 BSP 添加驱动时,STM32CubeMX 工具可以快速的完成使能外设和配置管脚的工作。而外设初始化,中断配置,DMA配置等等则由 RT-Thread 提供的驱动文件来完成。也就是说,虽然 STM32CubeMX 生成了多个文件用来初始化外设,但 RT-Thread 只使用了 STM32CubeMX 生成的 stm32fxx_hal_msp.c
文件(存放了在 CubeMX 工具中开启的外设驱动的配置代码)和 stm32fxx_hal_conf.h
文件(文件里提供的宏开关会决定 HAL 库将哪些外设驱动添加到工程中)。