RT-Thread Studio学习(一)新建工程
开发环境
- MCU:STM32F407VET6
- RT-Thread Studio: V2.1.5
- RT-Thread内核:V4.0.3
- STM32 CubeMX: V6.3.0
- KEIL: V5.35.0.0
- STM32 CubeMX firmware: STM32Cube FW_F4 V1.26.2
简介
本文将介绍如何使用RT-Thread Studio来新建项目,并结合STM32CubeMX完成使用外部时钟系统的配置。
新建RT-Thread项目
打开RT-ThreadStudio软件后,选择 文件 –>新建 –>RT-Thread项目 ,然后根据自己的实际项目情况进行相应的设置。在Project name 后输入项目名称,比如rtt_demo。选择基于芯片 ,RT-Thread版本为4.0.3 ,厂商为STMicroelectronics ,系列为STM32F4 ,子系列为STM32F407 ,芯片为STM32F407VE ,控制台串口为UART1 ,发送脚为PA9 ,接收脚PA10 ,调试器选择DAP-LINK ,接口为SWD 。配置完成后点击完成 按钮创建一个新的RT-Thread项目。如下图:
CubeMX配置
点击工程内CubeMX Settings 或者cubemx.ioc ,进入STM32CubeMX配置。
-
配置使用外部时钟: -
配置下载方式: -
配置串口: -
配置时钟树: 选择Pinout&Configuration –>左侧System Core –>RCC –>HSE 和LSE –>选择Crystal/Ceramic Resonator 。STM32CubeMX的Clock Configuration 设置如下图: 注意APB1和APB2的Prescaler相同,也可以不相同。如果不相同,在使用timer时要留意不同timer挂在不同APB之下,会出现相同的代码不同的时钟频率。 -
配置工程 Project Manager 页面的Project 设置如下图:
Project Manager 页面的Code Generator 设置如下图:
最后点击GENERATE CODE 生成KEIL工程及其代码。
设置RT-Thread Studio工程
编译工程,会出现很多错误,这是因为在STM32CubeMX中GENERATE CODE 后生成了很多无用的源码文件。写一个scon脚本文件进行额外的设置就可以解决了。 选择cubemx 文件夹,新建名称为SConscript的文件,如下图: 添加如下内容:
import os
from building import *
cwd = GetCurrentDir()
src = Glob('*.c')
# add cubemx drivers
src = Split('''
Src/stm32f4xx_hal_msp.c
Src/main.c
''')
path = [cwd]
path += [cwd + '/Inc']
group = DefineGroup('cubemx', src, depend = [''], CPPPATH = path)
Return('group')
右键选择更新软件包 ,添加Scon到系统环境: 点击CubeMX生成的main函数,在main.c文件的main函数前面添加__weak ,如下图: 编译工程并下载:
实验现象
|