Bootstrap

基于RTT Nano的多任务嵌入式程序设计

一、国产RT-Thread操作系统概述

1.简述

RT-Thread实时操作系统是一个分层的操作系统,它包括了:
• 组件层components,这些是基于RT-Thread核心基础上的外围组件,把一些功能模块划分成独立的一个个组件模块,做到组件与组件之间的低耦合,组件内部的高内聚。
 例如文件系统,命令行shell接口,lwIP轻型TCP/IP协议栈,GUI图形用户界面等。
• 硬实时内核kernel,这层是RT-Thread的核心,包括了内核系统中对象的实现,例如多线程及其调度,信号量,邮箱,消息队列,内存管理,定时器等实现。
•分支接口porting,主要由libcpu以及不同硬件平台的bsp构成,即RT-Thread支持的一个个芯片移植,外设驱动等
在这里插入图片描述

2.特点

①体积小,可伸缩、易裁剪最小资源占用 1.2KB RAM 和 2.5KB flash。
②针对物联网场景提供的众多组件和软件包,比如 AT组件、WiFi、蓝牙、LoRa、Sensor、AI 等等,以及针对安全和低功耗的优化,
③代码质量优秀,linux内核风格,增加了小程序、SMP 多核调度、PSA 安全支持等多项的功能。

3.优势

相比Linux操作系统,RT-Thread体积小、功耗低、启动快速,还具有实时性高、占用资源小等特点,非常适用于各种资源受限的场合。
而“美”则是RT-Thread优化了使用和开发体验,增加了小程序、SMP多核调度、PSA安全支持等多项实用的新功能,使得RT-Thread系统能实现灵活极简的应用开发,能扩展至众多高性能、高安全的应用领域。

二、RTT-Nano的功能框架

RT-Thread Nano是一个极简的硬实时内核,它还具备体积小、启动快速、实时性高、占用资源小等特点。
适用于系统资源紧张或是项目功能较为简单,仅需使用RTOS内核,无需丰富功能的场景,且开发时无需额外的辅助工具。
在这里插入图片描述

三、在stm32F103上移植RTT Nano

1.添加RT-Thread系统组件

获取RT-Thread Nano软件包
软件包

2.创建工程及配置项目

在CubeMX中新建项目(同之前)
配置sys
在这里插入图片描述

配置RCC
在这里插入图片描述

设置引脚PA6和PA7
在这里插入图片描述

设置串口USART1

;