项目简介
Turnip CLI是一个专为嵌入式系统设计的可扩展C++命令行接口(CLI)。该项目基于FreeRTOS、libopencm3和STM32F1微控制器,展示了在嵌入式环境中实现简单命令行接口的方法。虽然示例代码针对STM32F1平台,但其核心CLI部分可轻松移植到其他嵌入式系统。
项目的主要特性和功能
- 动态命令注册:支持动态注册命令,每个命令可独立实现为
.h/.cpp
文件对或仅.h
文件,并通过简单代码注册到系统。 - 命令解析:每个命令类需实现
parse
函数,在用户输入命令时调用,负责解析并执行操作。 - FreeRTOS支持:利用FreeRTOS任务调度功能,支持多任务并发执行,适用于复杂嵌入式应用场景。
- UART通信:通过UART接口与用户交互,支持命令行输入和输出。
- 模块化设计:CLI部分模块化,便于从现有项目剥离并集成到其他系统。
- 开源库依赖:依赖FreeRTOS和libopencm3等开源库,提供丰富嵌入式开发功能。
安装使用步骤
假设用户已下载本项目的源码文件,按照以下步骤操作:
1. 复制项目:
bash
cd turnip_cli
2. 初始化子模块:
bash
git submodule update --init --recursive
3. 编译libopencm3库:
bash
cd lib/libopencm3
make
cd ../..
4. 编译项目:
bash
make
5. 烧录到STM32设备:
bash
make flash
6. 测试:通过UART接口连接到设备,输入命令进行测试。
注意事项
lib
文件夹中的资源不包含在MIT许可证下,使用时请遵守各自的许可证条款。- 本项目示例代码适用于STM32F1平台,移植到其他平台时可能需要调整硬件相关的代码。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】