目的
用RT-Thread Studio创建一个简单工程,主要功能为点亮LED灯,同时用Jlink RTT作为打印输出。RT-Thread官方例程为点亮LED灯,同时用UART1作为console端口。由于Jlink本身带有RTT打印功能,能节省一个UART口。
使用的MCU:STM32F407ZG(正点原子探索者开发板)
开发环境:RT-Thread Studio
步骤
一、打开RT-Thread Studio,新建项目
可以选择标准RT-Thread或者Nano版本新建。

工程名字及路径:根据个人喜好自定义。
基于芯片或者开发板都行,本次是基于芯片。然后选择对应开发芯片的型号。控制台串口先默认UART1,调试器选择Jlink。然后完成。

二、RT-Thread配置,添加RTT软件包,配置console为jlinkRtt
点击添加软件包,搜索RTT软件包,然后添加。
(若想打印浮点型数据,即输出f%,需再添加rt_vsnprintf软件包,添加该软件包大概增加8Kb字节的存储空间)

打开SEGGER RTT功能

组件栏打开PIN功能

打开rt_kprintf控制台,修改控制台名称为jlinkRtt

以上配置修改完成之后,点击保存或者按快捷键Ctrl+S,系统会自动保存并配置好。
三、用STM32 CubeMX生成时钟配置
这里用的MCU是STM32F407ZG,所以用官方的CubeMX软件配置系统时钟。其他厂家的芯片根据厂家提供的时钟配置即可。
根据芯片型号配置时钟,配置好之后GENERATE CODE,生成代码。

用MDK打开工程,copy生成的代码中的SystemClock_Config()函数里所有代码。

四、RT-Thread Studio中手动修改代码
找到并打开drv_clk.c,将上一步在mdk中copy的SystemClock_Config代码,直接替换掉system_clock_config()里的代码。

修改board.c文件,一是初始化jlink_rtt,二是设置console设备。初始化jlink_rtt先extern引用外部函数,然后直接调用。设置console设备的需要在component组件初始化之后,如图所示,放在后面。

在main.c中添加用户程序。程序中循环亮灭红绿灯。

结尾
至此,一个点亮LED灯的基本工程做好了,jlink同时作为打印输出用。J-link RTT使用时,打开J-link RTT Viewer,就能收到RT-Thread的打印信息了,同时还能作为控制台使用。注意发送命令时,先设置Input–>Sending–>Send on Enter,输入命令后按enter键就发送出去了。

刚接触RT-Thread操作系统,做个笔记记录一下。
该文介绍了如何利用RT-ThreadStudio为STM32F407ZG开发板创建一个点亮LED灯的工程,并将JlinkRTT配置为打印输出,以节省UART口。步骤包括新建项目、配置RT-Thread、添加RTT软件包、用STM32CubeMX生成时钟配置,以及手动修改代码来初始化JlinkRTT和设置控制台。
3176

被折叠的 条评论
为什么被折叠?



