课程大纲

Embedded Rust入门

  • 概述no_std、core和Embedded Rust生态系统
  • 选择目标平台并理解目标三元组
  • 设置rustup、cargo和目标工具链

工具、构建与调试工作流

  • 使用cargo、cargo-embed、probe-run和OpenOCD工作流
  • 使用硬件探针(ST-Link、JLink)进行烧录和调试
  • 构建Embedded Rust固件的CI注意事项

硬件抽象与外设访问

  • 理解embedded-hal特性和驱动模式
  • 外设访问包(PACs)和设备包(svd2rust)
  • 编写和使用HAL驱动及板级支持包(BSCs)

内存安全、并发与实时性

  • 中断中的共享状态和可变引用的安全模式
  • RTIC及其他实时系统的并发模型
  • 堆与栈的使用、分配器及避免动态分配

错误处理、测试与可靠性

  • 受限环境中的错误处理模式
  • 主机上的单元测试与硬件上的集成测试
  • 故障分析、日志记录及事后分析策略

性能、功耗与资源优化

  • 基准测试、测量及优化热点路径
  • 代码大小缩减技术及链接器脚本
  • 电源管理策略及低功耗设计模式

部署、安全与生态系统最佳实践

  • 安全启动、固件签名及更新策略
  • 供应链考虑及依赖管理
  • 将C固件迁移至Rust的路线图及社区资源

总结与下一步

要求

  • 理解Rust核心概念:所有权、借用、生命周期
  • 具备编写非简单Rust程序的经验(中级Rust)
  • 熟悉嵌入式概念:内存映射I/O、中断、外设

受众

  • 希望采用Rust的嵌入式固件工程师
  • 具备Rust经验并转向底层系统的软件工程师
  • 评估Rust用于嵌入式产品开发的技术负责人
 14 小时

客户评论 (5)

即将举行的公开课程

课程分类