资源内容
从零开始学习 Rust 编程语言
从零开始构建你的第一个裸机 Rust 应用程序
学习如何为运行在 ARM Cortex-M 微控制器上的固件设置 Rust 工具链
编写你自己的链接脚本和启动文件,并理解嵌入式 Rust 中的内存布局和启动过程
使用 cargo-binutils 来检查和分析 ELF 文件
使用 VS Code 设置现代高效的开发流程,用于构建、烧录和调试针对嵌入式目标的 Rust 代码
使用和理解核心嵌入式 Rust 库
在资源受限的环境中高效地记录和调试
使用 cortex-m 和 cortex-m-rt 库与 ARM Cortex 外设(如 SysTick 和 ITM)进行实战操作
Rust FFI:创建安全的 Rust API 以与现有的 C 库进行接口交互,使将 Rust 集成到现有的 C 基础代码库中更加容易
学习如何在 Rust 和 C 之间安全地传递结构体、字符串和枚举,同时保持类型安全和控制
将 Rust 函数暴露给 C 调用,使用 unsafe 和 FFI 概念来安全地管理跨语言互操作性
逐步构建一个实际的 Flappy Bird 游戏应用使用 Rust
使用 embedded-hal 特性构建硬件无关的驱动程序,使您的代码可以在多个微控制器平台上保持一致。
使用真正的传感器(MPU6050)来控制游戏机制
用整洁可维护的模块结构化您的代码
使用 STM32 HAL 箱子轻松配置和控制您的微控制器外设,使用安全的 Rust 抽象
编写通用嵌入式代码
本课程不需要任何先验的 Rust 编程经验,因为课程将从零开始教授
任何微控制器的基本知识
任何编程语言的基本知识
如果您想在嵌入式目标上运行代码,需要列出的硬件和组件
想要在您的工具箱中添加另一种嵌入式语言吗?试试 Rust 吧——您不会失望的!
本课程是您开始使用 Rust 在微控制器上进行编程的起点,即使您对嵌入式系统一无所知。
我们将从了解微控制器的工作原理到用 Rust 编程,一步步带你掌握基础知识。无论你是否熟悉 C/C++,或者刚刚接触微控制器,这门课程都将使你能够轻松地进行嵌入式 Rust 开发。
为什么选择 Rust 用于嵌入式开发?
Rust 通过以下方式防止许多常见的内存问题(如空指针解引用、缓冲区溢出和使用后释放错误):
所有权模型:Rust 的严格所有权、借用和生命周期规则防止了大多数意外的内存误用。
类型安全性 :Rust 的类型系统确保你正确地访问数据,并通过强制执行严格的变量使用模式来防止某些类型的无效内存访问。
谢谢 Cargo,Rust 的官方包管理器,你可以通过简单地包含外部库或“crate”,就像插拔组件一样,轻松地添加功能。
在这门课程中,你将掌握以下内容:
为嵌入式系统初学者准备的 Rust 入门介绍
完整的工具链设置,用于跨编译、烧录和调试
使用 defmt 和 probe-rs 进行实时跟踪的调试和日志记录
使用 STM32 HAL crate 进行高级外设编程
逐步构建一个真实的 Flappy Bird 游戏应用程序,使用 Rust
使用真实的传感器(MPU6050)来控制游戏机制
清晰、模块化的编码实践和硬件抽象
使用 embedded-hal 特性构建硬件无关的驱动程序
编写和理解你自己的链接脚本和启动代码
使用 Rust 的泛型和特质构建通用的嵌入式代码
通过 FFI 实现安全且无缝的 Rust + C 集成
用 Rust 编写稳健、可重用且符合生产标准的嵌入式固件的信心
注意: 如果您已经有微控制器开发板,我们建议继续使用它。本课程设计得非常全面,概念和步骤可以应用于大多数开发板,尽管可能需要一些小的调整。但如果您希望使用与讲师相同的开发板以获得更顺畅的体验,可以查看推荐的硬件
- 微控制器开发板
- 选项-1. 基于 STM32F303 的开发板
- 该课程主要使用了 Fastbit STM32 Nano 板 ,该板基于 STM32F303 微控制器和内置的 MPU6050 传感器。
- 选项 2. 任何 STM32 微控制器板
- 您可以使用任何带有 STM32 微控制器的开发板。课程内容设计得具有适应性,因此您可以使用手头的具体 STM32 板进行学习。
- 2) SWD 基的调试器
- 用于编程和调试 STM32 微控制器,需要一个基于 SWD(Serial Wire Debug)的调试器。此工具对于将程序加载到微控制器上以及实时调试您的项目都是必不可少的。
- 3) LCD 扩展板
- 在一个项目中,您需要一个 TFT LCD 模块进行实验。本课程使用的是基于 GC9A01 LCD 驱动的 Fastbit 1.28″ TFT LCD,具有 8 位并行接口。不过,您可以使用相同或兼容的模块。
- 4) MPU6050 传感器
- VS Code
- STM32CubeIDE
- 寻求探索 Rust 作为 C/C++ 的替代品,或者与现有代码共存以进行微控制器编程的嵌入式开发人员
- 想将 Rust 技能应用到低级、硬件相关的项目中并学习嵌入式编程的 Rust 爱好者。
- 勇于从零开始构建嵌入式系统的初学者
- 想要再掌握一门嵌入式语言吗?试试 Rust,你不会失望的
本站所有内容均由网络公开等合法途径整理而来,该资料仅作为阅读交流使用,并无任何商业目的,严禁用于商业用途。
任何访问、浏览本网站,购买或未购买者,都代表已阅读、理解并同意遵守本声明条款。
关于价格:本站资料价格均不代表原商品实价,标价仅为人工整理网站所收取的服务费用。
内容来源:本站所有内容均来自网络公开等合法途径,本店仅做整理;若版权方、出版社认为本站侵权,请立即通知本站。如版权属实,本站将立即下架相关资料,谢谢!
版权所属:本站售出资料的版权归相应内容作者或权利人所有,本站不对涉及的版权问题负法律责任。
免责声明:资料所标识的价格是对本店整理资料以及网盘运营必须的费用支出所支付的适应补偿,资料索取者应尊懂版权方的知识产权! 支持正版!!!
相关规定:根据二00二年一月一日《计算机软件保护条例》规定为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。
如有侵权请您联系邮箱:ccziyuanzhan@163.com 我们将第一时间为您处理!
暂无评论内容