这个目录包含了一系列用于演示 RT-Thread 中 Rust 编程功能的示例用户应用程序和组件。这些示例展示了如何在 RT-Thread 实时操作系统中使用 Rust 语言进行系统编程。
example_usrapp/
├── SConscript # SCons 构建脚本
├── fs/ # 文件系统操作示例
├── loadlib/ # 动态库加载示例
├── mutex/ # 互斥锁同步示例
├── param/ # 参数处理示例
├── queue/ # 消息队列示例
├── semaphore/ # 信号量同步示例
└── thread/ # 线程管理示例
RT_USING_RUST),并且开启 examples 编译(RT_USING_RUST_EXAMPLES)中的应用(RT_RUST_BUILD_APPLICATIONS)在 RT-Thread 项目根目录执行:
scons -j$(nproc)
构建系统会自动:
在 RT-Thread 系统启动后,可以通过命令行运行各个示例:
# 查看所有可用示例
help
# 运行线程示例
rust_thread_demo
# 运行文件系统示例
rust_file_demo
# 其他示例类似...
所有示例应用都依赖以下核心组件:
rt-rust: RT-Thread Rust 绑定库rt-macro: 主函数宏支持fs示例还依赖日志组件:
em_component_log: 日志组件example_usrapp/ 下创建新目录Cargo.toml 配置文件src/lib.rs 中实现示例代码#[macro_main_use] 宏定义入口点#![no_std]
use macro_main::macro_main_use;
use rt_rust::param::Param;
use rt_rust::println;
#[macro_main_use(
name = "your_demo_name",
component = "是否为组件示例",
app = "是否为用户应用示例",
cmd = true,
desc = "Your demo description."
)]
fn main(_param: Param) {
println!("Hello from your demo!");
// 你的示例代码...
}
println! 进行基本调试输出