安装RTT 新建 打开 配置RTT2020-02-23

RTT有2个版本 RT-Thread 完整版和RT-Thread Nano版

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

RT-Thread 完整版不仅仅是一个实时内核,还具备丰富的中间层组件,包括如文件系统、图形库等较为完整的中间件组件,具备低功耗、安全、通信协议支持和云端连接能力的软件平台,RT-Thread 就是一个 IoT OS。

开发工具 可选:

在 RT-Thread Studio 上使用 RT-Thread Nano

基于 KEIL MDK 移植 RT-Thread Nano

基于 CubeMX 移植 RT-Thread Nano

基于 IAR 移植 RT-Thread Nano

移植 RT-Thread Nano 到 RISC-V

建好的工程 直接把文件拖到RT-Thread Studio 工程里,就可以打开工程


//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

/* 表示内核对象的名称的最大长度,若代码中对象名称的最大长度大于宏定义的长度,

* 多余的部分将被截掉。*/

#define RT_NAME_MAX 8

/* 字节对齐时设定对齐的字节个数。常使用 ALIGN(RT_ALIGN_SIZE) 进行字节对齐。*/

#define RT_ALIGN_SIZE 4

/* 定义系统线程优先级数;通常用 RT_THREAD_PRIORITY_MAX-1 定义空闲线程的优先级 */

#define RT_THREAD_PRIORITY_MAX 32

/* 定义时钟节拍,为 100 时表示 100 个 tick 每秒,一个 tick 为 10ms */

#define RT_TICK_PER_SECOND 100

/* 检查栈是否溢出,未定义则关闭 */

#define RT_USING_OVERFLOW_CHECK

/* 定义该宏开启 debug 模式,未定义则关闭 */

#define RT_DEBUG

/* 开启 debug 模式时:该宏定义为 0 时表示关闭打印组件初始化信息,定义为 1 时表示启用 */

#define RT_DEBUG_INIT 0

/* 开启 debug 模式时:该宏定义为 0 时表示关闭打印线程切换信息,定义为 1 时表示启用 */

#define RT_DEBUG_THREAD 0

/* 定义该宏表示开启钩子函数的使用,未定义则关闭 */

#define RT_USING_HOOK

/* 定义了空闲线程的栈大小 */

#define IDLE_THREAD_STACK_SIZE 256

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

/* 定义该宏可开启信号量的使用,未定义则关闭 */

#define RT_USING_SEMAPHORE

/* 定义该宏可开启互斥量的使用,未定义则关闭 */

#define RT_USING_MUTEX

/* 定义该宏可开启事件集的使用,未定义则关闭 */

#define RT_USING_EVENT

/* 定义该宏可开启邮箱的使用,未定义则关闭 */

#define RT_USING_MAILBOX

/* 定义该宏可开启消息队列的使用,未定义则关闭 */

#define RT_USING_MESSAGEQUEUE

/* 定义该宏可开启信号的使用,未定义则关闭 */

#define RT_USING_SIGNALS

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

/* 开启静态内存池的使用 */

#define RT_USING_MEMPOOL

/* 定义该宏可开启两个或以上内存堆拼接的使用,未定义则关闭 */

#define RT_USING_MEMHEAP

/* 开启小内存管理算法 */

#define RT_USING_SMALL_MEM

/* 关闭 SLAB 内存管理算法 */

/* #define RT_USING_SLAB */

/* 开启堆的使用 */

#define RT_USING_HEAP

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

/* 表示开启了系统设备的使用 */

#define RT_USING_DEVICE

/* 定义该宏可开启系统控制台设备的使用,未定义则关闭 */

#define RT_USING_CONSOLE

/* 定义控制台设备的缓冲区大小 */

#define RT_CONSOLEBUF_SIZE 128

/* 控制台设备的名称 */

#define RT_CONSOLE_DEVICE_NAME "uart1"

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

/* 定义该宏开启自动初始化机制,未定义则关闭 */

#define RT_USING_COMPONENTS_INIT

/* 定义该宏开启设置应用入口为 main 函数 */

#define RT_USING_USER_MAIN

/* 定义 main 线程的栈大小 */

#define RT_MAIN_THREAD_STACK_SIZE 2048


(6)FinSH

/* 定义该宏可开启系统 FinSH 调试工具的使用,未定义则关闭 */

#define RT_USING_FINSH

/* 开启系统 FinSH 时:将该线程名称定义为 tshell */

#define FINSH_THREAD_NAME "tshell"

/* 开启系统 FinSH 时:使用历史命令 */

#define FINSH_USING_HISTORY

/* 开启系统 FinSH 时:对历史命令行数的定义 */

#define FINSH_HISTORY_LINES 5

/* 开启系统 FinSH 时:定义该宏开启使用 Tab 键,未定义则关闭 */

#define FINSH_USING_SYMTAB

/* 开启系统 FinSH 时:定义该线程的优先级 */

#define FINSH_THREAD_PRIORITY 20

/* 开启系统 FinSH 时:定义该线程的栈大小 */

#define FINSH_THREAD_STACK_SIZE 4096

/* 开启系统 FinSH 时:定义命令字符长度 */

#define FINSH_CMD_SIZE 80

/* 开启系统 FinSH 时:定义该宏开启 MSH 功能 */

#define FINSH_USING_MSH

/* 开启系统 FinSH 时:开启 MSH 功能时,定义该宏默认使用 MSH 功能 */

#define FINSH_USING_MSH_DEFAULT

/* 开启系统 FinSH 时:定义该宏,仅使用 MSH 功能 */

#define FINSH_USING_MSH_ONLY

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,222评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,455评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,720评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,568评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,696评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,879评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,028评论 3 409
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,773评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,220评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,550评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,697评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,360评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,002评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,782评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,010评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,433评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,587评论 2 350

推荐阅读更多精彩内容