1、移植finsh基于device框架【这个官方文档中心有相关的文章了,链接:https://www.rt-thread.org/document/site/tutorial/nano/nano_finsh/an0033-nano-finsh/】 2、移植finsh不基于device框架【本文讲解这个不基于device框架的,从头讲解,如果移植rtt nano,然后基于这个nano 再移植finsh】【本文基于 rtt nano 3.1.2 /...
一、RT-Thread简介 RT-Thread是一款开源的嵌入式实时操作系统,作为一款国产的操作系统,经过10余年的发展,RT-Thread逐渐得到了市场的认可,开始被广泛应用在智能家电,智能穿戴设备中。相对于其他的RTOS,RT-Thread最大的特点就是有着丰富的中间层组件的支持,我们可以根据产品功能的需要,移植各种组件,打造出自己需要的系...
在项目中添加finsh源码 FinSH 源码位于 components/finsh 目录下,如下图所示: 将finsh文件拷贝至工程项目的RT_Thread\components路劲下,如下图所示: 在工程中添加finsh源码,如下图所示: 在rtconfig.h文件中定义finsh相关的宏 /** * FinSH */ /* 定义该宏可开启系统 FinSH 调试工具的使用,未定义则关闭 */ #d...
第二部分是实现移植 FinSH 组件,实现在控制台输入命令调试系统,该部分实现基于第一部分,只需要添加 FinSH 组件源码并再对接一个系统函数即可实现。下面将对这两部分进行说明。 在Nano上添加UART控制台 在RT-Thread Nano 上添加 UART 控制台打印功能后,就可以在代码中使用 RT-Thread 提供的打印函数 rt_kprintf() ...
第一随文就节点是,我已经移植了,rt_thread_nano. 且已经基本可以点亮一颗灯,和串口。且还挂载了finsh组件。 说一下步骤吧。 1. cubeMX 生成起码项目,启动UART1和PA8. 这些看你们硬件。具体如下图操作如图: 说说这个东西吧,其实建立工程有好多种方法,我发现这个是最简单的,但是需要cubeMX工具。如果你想从事STM...
5基于 STM32cubeMX 移植RT-Thread Nano 上移植FinSH 本文分为两部分:第一部分是实现 UART 控制台,该部分只需要实现两个函数即可完成 UART 控制台打印功能。第二部分是实现移植 FinSH 组件,实现在控制台输入命令调试系统,该部分实现基于第一部分,只需要添加 FinSH 组件源码并再对接一个系统函数即可实现。下面将对这...
创建rt_src和rt_port 首先在User添加 在添加rt_src(就是添加RT文件下SRC文件夹下的文件) 然后添加rt_port 然后开始编译 会报错3个重定义的错误,没关系注释掉就行了 这里我将工程文件放在Github上 https://github.com/Esonfu/stm32_rtos_nano finsh分享...
RT-Thread是一个开源的实时操作系统,而finSH是RT-Thread中的一个命令行工具,它提供了一种方便用户进行命令行操作的方式。下面是finSH移植的方法: 添加finsh组件:在RT-Thread的menuconfig配置界面中,选择Components->Finsh,勾选它以启用finSH组件。 配置finSH:在menuconfig中,选择Finsh Configuration,配置finSH的一些参数,...
详细下载地址: https://www.rt-thread.org/download/mdk/RealThread.RT-Thread.3.1.5.pack 如上图所示勾选shell与kernel,如果不是用FinSH可以不勾选shell。 勾选后keil MDK自动添加RTOS到工程, 如下图所示: 其中rt_config.h为rt thread配置页, board.c为用户个性化配置启动代码(如初始化串口等). ...
在rt-thread官网中给出了nano版本增加控制台的示范例程,主要是增加了一个接受队列。(如果用rt-thread studio配置控制台,接受好像用的是查询模式,如果只是单纯一个控制台,不干其他事情好像也没啥事) #ifdef RT_USING_FINSHchar rt_hw_console_getchar(void){int ch=-1;if(__HAL_UART_GET_FLAG(&handle,UART...