RT - thread学习(一)

目录

一、RT - thread介绍

二、RT - thread移植

首先我们先在官网获取​编辑

 对无关的文件进行剪裁。

剪裁后的内核文件移植到sdk文件

配置内核文件


一、RT - thread介绍

        rt-thread是国产的一款开源的实时操作系统。这款操作系统包含了丰富的外设组件:文件系统、TCP/IP协议栈、libc接口、图形用户界面、MQTT等等。方便开发者使用。

以下文章主要对RT-thread的nano进行介绍。

        RT-thread-nano是一个精简的rt-thread内核,里面包括了任务实时调度,线程管理,线程间通信,软件定时器,内存管理,时钟管理等功能。

nano本身最少需要2.5K的ROM、1K的RAM。所以占用的系统资源比较少,效率比较高。学习起来比较方便。

支持的硬件架构:Cortex-M0/M1/M3/M4/M7/L0/L1/L4等   

                             RISC-V

这个是nano版本的获取方法:

https://www.rt-thread.org/download.html#download-rt-thread-nano

二、RT - thread移植

首先我们先在官网获取RT - thread学习(一)_第1张图片

 下载后解压文件, 相关文件夹介绍

RT - thread学习(一)_第2张图片

 对无关的文件进行剪裁。

1.rt-thread/bsp

RT - thread学习(一)_第3张图片

2.\rt-thread\libcpu

3. rt-thread\libcpu\arm

 RT - thread学习(一)_第4张图片

4.rt-thread\libcpu\arm\cortex-m0

RT - thread学习(一)_第5张图片

5.rt-thread\components 

RT - thread学习(一)_第6张图片

这时内核剪裁就完成了。

剪裁后的内核文件移植到sdk文件

我使用的是 芯海科技 的M0芯片cs32f031的SDK

1.将剪裁好的rt-thread内核移动到M0芯片cs32f031的SDK中

RT - thread学习(一)_第7张图片

2.keil中加入头文件路径

RT - thread学习(一)_第8张图片

3.文件中加入src中的.c文件

RT - thread学习(一)_第9张图片

 4.文件中加入lipcpu中的.c文件

RT - thread学习(一)_第10张图片

5. 文件中导入板载启动中文件

RT - thread学习(一)_第11张图片

 这时内核移植就差配置就完成了。

配置内核文件

1.将sdk中的中断函数注释掉 

//void SVC_Handler(void)

//void PendSV_Handler(void)

//void SysTick_Handler(void)

RT - thread学习(一)_第12张图片

RT - thread学习(一)_第13张图片

 2. 配置系统时钟 rtthread/board.c

RT - thread学习(一)_第14张图片

 3.配置打印函数

RT - thread学习(一)_第15张图片

 配置打印输出函数 RT_WEAK  void  rt_hw_console_output(const char *str)RT - thread学习(一)_第16张图片

 这时就已经将内核移植完成了。

已将移植好的代码放在githug中了

你可能感兴趣的:(Rt-thread,学习)