zoukankan      html  css  js  c++  java
  • RT-Thread 4.0 + STM32F407 学习笔记1

    RT Thread 4.0提供了新的BSP框架

    新 BSP 框架的主要特性如下:

    • 提供多系列 BSP 模板,大大降低新 BSP 的添加难度;

    • 每个 BSP 都配有齐全的驱动文件,开发者可以方便地使用所有驱动;

    • 开发者可以使用 CubeMX 工具对 BSP 进行图形化配置;

    由于Hal库是以后主流,在使用STD库对STM32很熟悉后,建议转到Hal库

    本文参考官方《STM32系列BSP制作教程》,由于官方提供的CubeMX与Hal库版本固定,不一定适用所有初步使用的人,本文使用自己的CubeMX制作BSP并强调注意事项。

    其中一些解释如内容说明、Scons、Env等,详细参见《STM32系列BSP制作教程》

    1. BSP 制作方法

    BSP 的制作过程分为如下五个步骤:

    1. 复制通用模板

    2. 使用 CubeMX 工具配置工程

    3. 修改 BSP 中的 Kconfig 文件

    4. 修改构建工程相关文件

    5. 重新生成工程

    1.1 复制通用模板

    复制        rt-thread-4.0.0spstm32libraries emplatesstm32f4xx

    重命名为 rt-thread-4.0.0spstm32stm32f407-pz6808l

    1.2 使用CubeMX配置工程

    本文使用的是CubeMX 5.2版本 

    配置RCC使能外部晶振

     

    使能调试

    使能UART

    时钟配置

    工程管理,生成到BSP框架里的文件夹下

    生成工程如下

    1.3 HAL库替换

    删除MDK-ARM文件夹

    复制Drivers到 rt-thread-4.0.0spstm32libraries 文件下并重命名为 STM32F4xx_HAL_502

    从模板中复制SConscript文件

    1.4文件修改

    rt-thread-4.0.0spstm32stm32f407-pz6808loardoard.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成功。

  • 相关阅读:
    Java密钥库的不同类型 -- 概述
    【Spring Boot】Filter
    【VUE】开发环境
    【Java Web开发学习】Spring 注解
    【TongWeb】问题记录
    python的u,r,b分别什么意思?
    nil
    goland安装
    vscode调试和设置
    函数类型
  • 原文地址:https://www.cnblogs.com/silencehuan/p/10904048.html
Copyright © 2011-2022 走看看