二、RT-Thread移植

前言

本文是基于RT-Thread的集成IDE:RT-Thread Studio的移植使用,如果想自己手动移植rtt到Keil中,可参考:

基于Keil5的RT-Thread移植RT-Thread移植(标准库):手把手教你移植RT-Thread系统_rtthread移植_嵌入式@hxydj的博客-CSDN博客

基于 STM32CubeMX 添加 RT-Thread 操作系统组件(hal库):基于 STM32CubeMX 添加 RT-Thread 操作系统组件(一)- 详细介绍操作步骤_mx_rt_thread_process()_Ch_champion的博客-CSDN博客

二、RT-Thread移植

2.1 RT-Thread版本分类

2.1.1 RT-Thread标准版系统架构

RT-Thread标准版包括如文 件系统、图形库等较为完整的中间件组件,具备低功耗、安全、通信协议支持和云端连接能力的软件平台。

2.1.2 Nano版本

RT-Thread Nano 是一个极简版的硬实时内核,它是由 C 语言开发,采用面向对象的编程思维,具有良好的代码风格,是一款可裁剪的、抢占式实时多任务的RTOS。其内存资源占用极小,功能包括任务处理、软件定时器、信号量、邮箱和实时调度等相对完整的实时操作系统特性。适用于家电、消费电子、医疗设备、工控等领域大量使用的 32 位 ARM 入门级 MCU 的场合。

下图是 RT-Thread Nano 的软件框图,包含支持的 CPU 架构与内核源码,还有可拆卸的 FinSH 组件:

功能:线程管理、线程间同步与通信、时钟管理、中断管理、内存管理。

特点:

  • 下载简单
  • 代码简单
  • 移植简单
  • 使用简单
  • 资源占用小
  • 开源免费

2.1.3 Smart版本

RT-Thread Smart(简称 rt-smart)是基于 RT-Thread 操作系统衍生的新分支,面向带 MMU,中高端应用的芯片,例如 ARM Cortex-A 系列芯片,MIPS 芯片,带 MMU 的 RISC-V 芯片等。rt-smart在 RT-Thread 操作系统的基础上启用独立、完整的进程方式,同时以混合微内核模式执行。

RT-Thread Smart 是基于 RT-Thread 操作系统上的混合操作系统,简称为 rt-smart,它把应用从内核中独立出来,形成独立的用户态应用程序,并具备独立的地址空间(32 位系统上是 4G 的独立地址空间)

2.2 标准版RTT移植

下载安装RT-Thread_Studio,安装完成后注册并登录后方可创建RTT工程。

1、新建工程,打开 IDE,点击【文件】-【新建】-【RT-Thread 项目】

2、进入新建工程设置向导

3、工程创建完毕,连接硬件,可直接进行编译下载,如下所示:

4、通过修改 board.c 的 SystemClock_Config() 更改系统时钟

5、由于在创建工程向导中配置了控制台串口号及其引脚号,所以工程中已经实现了 uart 的驱动以及 rt_hw_console_output() ,默认可以进行打印。打开串口终端,可以发现在终端中执行了打印

6、添加 FinSH组件

双击 RT-Thread Settings 进入配置,打开组件,勾选FinSH Shell,保存配置。此操作将把 FinSH 组件的源码加入工程中。

其中,rt_hw_console_getchar() 已经在 drv_uart.c 中实现,无需再实现对接 FinSH 的代码。

7、链接硬件,编译下载后,在串口终端中按下 Tab 键,可查看系统中的命令:

也可以用终端调试助手,这里以SecureCRT为例

新建串口连接

连接成功后,如果按复位,终端卡死

(1)首先找到对应串口的配置文件如下:

(2)打开对应路径,文本工具打开new.ini

(3)把D:"DTR Flow Control"=00000001改为D:"DTR Flow Control"=00000000

把D:"RTS Flow Control"=00000001改为D:"RTS Flow Control"=00000000

(4)这样就能解决了,复位板子就会出现RTT的信息了

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

竹烟淮雨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值