FreeRTOS 体验教程:2.如何用命令行操作FreeRTOS?

FreeRTOS 教程:添加命令行实现

FreeRTOS不像RT-Thread那样内置了类似Finsh的命令行组件,但官方提供了CLI(Command Line Interface)示例及相关API,供需要者参考和实现。在这篇文章中,我们将介绍如何在STM32F103系列上移植FreeRTOS的CLI,并添加自定义命令行功能。

一、准备工作

  1. 新建项目文件夹 首先,在您的项目目录中创建一个用于存放RTOS文件的文件夹,这里命名为rtos
    image.png
  2. 下载FreeRTOS源码 从FreeRTOS的GitHub仓库下载最新的源码包,并将其中的source文件夹拷贝到rtos目录下。文件结构如下:
    image.png
    • include: 头文件目录
    • portable: 硬件接口相关文件夹(包括芯片接口、内存管理等)
      • Keil: ARM-MDK IDE的启动文件(硬件接口)
      • MemMang: 内存管理相关
      • RVDSGCC: 不同编译环境的启动文件
    • *.c: FreeRTOS的核心源文件

二、移植CLI命令行

  1. 拷贝文件 将CLI示例中的两个文件UARTCommandConsole.cSample-CLI-commands.c拷贝到您的工程目录下。
    image.png

  2. 处理依赖 打开UARTCommandConsole.c,查看其依赖关系。发现需要FreeRTOS_CLI.hserial.h两个头文件。
    image.png

  3. 拷贝serial相关文件serial.hserial.c文件拷贝到工程目录中。serial.h可以在FreeRTOS/Demo/Common/include找到,而serial.c根据实际板子及编译器情况,可以在对应(或相近)的示例路径下找到,例如STM32F103系列的serial.cFreeRTOS/Demo/CORTEX_STM32F103_Keil/serial路径下。
    image.png
    image.png
    image.png
    image.png

  4. 拷贝FreeRTOS_CLI相关文件FreeRTOS_CLI.cFreeRTOS_CLI.h文件从FreeRTOS/FreeRTOS-Plus/Source/FreeRTOS-Plus-CLI目录下拷贝到工程目录中。
    image.png
    image.png

  5. 添加依赖 确认上述文件的依赖已添加完毕,在MDK工程中为CLI添加一个独立的Group,并将上述文件添加到Group中,同时添加头文件路径。
    image.png
    image.png

三、编译与调试

  1. 编译 进行初次编译,若报错提示configCOMMAND_INT_MAX_OUTPUT_SIZE未定义,则在FreeRTOS_CLI.h头文件中添加该

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值