嵌入式Rust编程指南 | Embedded Rust for Absolute Beginners-cc资源站
嵌入式Rust编程指南 | Embedded Rust for Absolute Beginners
此内容为付费资源,请付费后查看
100积分
永久包售后
1. 课程包更新
2. 通用视频格式
3. 超清高清视频
4. 资料齐全
5. 无二次加密
付费资源

嵌入式Rust编程指南 | Embedded Rust for Absolute Beginners

资源内容

Rust编程指南|EmbeddedRustforAbsoluteBeginners

想学怎么用Rust来打造既安全又现代化的

系统吗?我们会带你从零开始,通过实际动手做项目、编写驱动、了解如何使用外部函数接口(FFI),还有掌握Cortex-M相关工具。一步步教你成为高手!

从零开始学习Rust编程语言

从零开始构建你的第一个裸机Rust应用程序

学习如何为运行在ARMCortex-M微控制器上的固件设置Rust工具链

编写你自己的链接脚本和启动文件,并理解嵌入式Rust中的内存布局和启动过程

使用cargo-binutils来检查和分析ELF文件

使用VSCode设置现代高效的开发流程,用于构建、烧录和调试针对嵌入式目标的Rust代码

使用和理解核心嵌入式Rust库

在资源受限的环境中高效地记录和调试

使用cortex-m和cortex-m-rt库与ARMCortex外设(如SysTick和ITM)进行实战操作

RustFFI创建安全的RustAPI以与现有的C库进行接口交互,使将Rust集成到现有的C基础代码库中更加容易

学习如何在Rust和C之间安全地传递结构体、字符串和枚举,同时保持类型安全和控制

将Rust函数暴露给C调用,使用unsafe和FFI概念来安全地管理跨语言互操作性

逐步构建一个实际的FlappyBird游戏应用使用Rust

使用embedded-hal特性构建硬件无关的驱动程序,使您的代码可以在多个微控制器平台上保持一致。

使用真正的传感器(MPU6050)来控制游戏机制

用整洁可维护的模块结构化您的代码

使用STM32HAL箱子轻松配置和控制您的微控制器外设,使用安全的Rust抽象

编写通用嵌入式代码

本课程不需要任何先验的Rust编程经验,因为课程将从零开始教授

任何微控制器的基本知识

任何编程语言的基本知识

如果您想在嵌入式目标上运行代码,需要列出的硬件和组件

想要在您的工具箱中添加另一种嵌入式语言吗?试试Rust吧——您不会失望的!

本课程是您开始使用Rust在微控制器上进行编程的起点,即使您对嵌入式系统一无所知。

我们将从了解微控制器的工作原理到用Rust编程,一步步带你掌握基础知识。无论你是否熟悉C/C++,或者刚刚接触微控制器,这门课程都将使你能够轻松地进行嵌入式Rust开发。

为什么选择Rust用于嵌入式开发?

Rust通过以下方式防止许多常见的内存问题(如空指针解引用、缓冲区溢出和使用后释放错误)

所有权模型Rust的严格所有权、借用和生命周期规则防止了大多数意外的内存误用。

类型安全性 Rust的类型系统确保你正确地访问数据,并通过强制执行严格的变量使用模式来防止某些类型的无效内存访问。

谢谢Cargo,Rust的官方包管理器,你可以通过简单地包含外部库或“crate”,就像插拔组件一样,轻松地添加功能。

在这门课程中,你将掌握以下内容

为嵌入式系统初学者准备的Rust入门介绍

完整的工具链设置,用于跨编译、烧录和调试

使用 defmt 和 probe-rs 进行实时跟踪的调试和日志记录

使用STM32HALcrate进行高级外设编程

逐步构建一个真实的FlappyBird游戏应用程序,使用Rust

使用真实的传感器(MPU6050)来控制游戏机制

清晰、模块化的编码实践和硬件抽象

使用 embedded-hal 特性构建硬件无关的驱动程序

编写和理解你自己的链接脚本和启动代码

使用Rust的泛型和特质构建通用的嵌入式代码

通过 FFI 实现安全且无缝的 Rust+C集成

用Rust编写稳健、可重用且符合生产标准的嵌入式固件的信心

注意 如果您已经有微控制器开发板,我们建议继续使用它。本课程设计得非常全面,概念和步骤可以应用于大多数开发板,尽管可能需要一些小的调整。但如果您希望使用与讲师相同的开发板以获得更顺畅的体验,可以查看推荐的硬件

1)微控制器开发板

选项-1.基于STM32F303的开发板

该课程主要使用了 FastbitSTM32Nano板 ,该板基于STM32F303微控制器和内置的MPU6050传感器。

选项2.任何STM32微控制器板

您可以使用任何带有STM32微控制器的开发板。课程内容设计得具有适应性,因此您可以使用手头的具体STM32板进行学习。

2)SWD基的调试器

用于编程和调试STM32微控制器,需要一个基于SWD(SerialWireDebug)的调试器。此工具对于将程序加载到微控制器上以及实时调试您的项目都是必不可少的。

3) LCD扩展板

在一个项目中,您需要一个TFTLCD模块进行实验。本课程使用的是基于GC9A01LCD驱动的 Fastbit1.28″TFTLCD,具有8位并行接口。不过,您可以使用相同或兼容的模块。

4) MPU6050传感器

VSCode

STM32CubeIDE

寻求探索Rust作为C/C++的替代品,或者与现有代码共存以进行微控制器编程的嵌入式开发人员

想将Rust技能应用到低级、硬件相关的项目中并学习嵌入式编程的Rust爱好者。

勇于从零开始构建嵌入式系统的初学者

想要再掌握一门嵌入式语言吗?试试Rust,你不会失望的

© 版权声明
THE END
点赞8 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容