
嵌入式Rust编程指南(英文版)
来自 网络整理·免费领取学习资源
5,335 领取 · 9,979 收藏更新于 2026年9月20日
这份资料来自网络整理2026年的付费VIP课,内容以视频为主,对应《嵌入式Rust编程指南(英文版)》。官网需要单独购买,有集上可以免费领取。
课程目录
- 1 – Introduction
- 1 -Welcome
- 1 -Welcome.srt
- 1 -Welcome_en.srt
- 2 – Course repository.html
- 10 – Rust Foreign Function Interface(FFI)
- 1 -Steps involved in dealing with Rust and Foreign language code
- 1 -Steps involved in dealing with Rust and Foreign language code.srt
- 1 -Steps involved in dealing with Rust and Foreign language code_en.srt
- 2 -Types mapping between Rust and C
- 2 -Types mapping between Rust and C.srt
- 2 -Types mapping between Rust and C_en.srt
- 3 -Rust equivalent of C’s void and void pointer
- 3 -Rust equivalent of C’s void and void pointer.srt
- 3 -Rust equivalent of C’s void and void pointer_en.srt
- 4 -Rust equivalent of C’s void and void pointer contd
- 4 -Rust equivalent of C’s void and void pointer contd.srt
- 4 -Rust equivalent of C’s void and void pointer contd_en.srt
- 5 -Rust representation of C’s String
- 5 -Rust representation of C’s String.srt
- 5 -Rust representation of C’s String_en.srt
- 6 -Rust accepting and processing Strings from ’C’ (coreffiCstr)
- 6 -Rust accepting and processing Strings from ’C’ (coreffiCstr).srt
- 6 -Rust accepting and processing Strings from ’C’ (coreffiCstr)_en.srt
- 7 -Rust sending Strings to ’C’ (stdffiCString)
- 7 -Rust sending Strings to ’C’ (stdffiCString).srt
- 7 -Rust sending Strings to ’C’ (stdffiCString)_en.srt
- 8 -Struct memory layout Rust Vs C
- 8 -Struct memory layout Rust Vs C.srt
- 8 -Struct memory layout Rust Vs C_en.srt
- 9 -Passing struct from Rust to C
- 9 -Passing struct from Rust to C.srt
- 9 -Passing struct from Rust to C_en.srt
- 11 – Exercise 005 Flappy Bird game implementation(Rust + C)
- 1 -Introduction to Flappy bird application
- 1 -Introduction to Flappy bird application.srt
- 1 -Introduction to Flappy bird application_en.srt
- 10 -Implementation part 2 Peripheral configuration and code generation
- 10 -Implementation part 2 Peripheral configuration and code generation.srt
- 10 -Implementation part 2 Peripheral configuration and code generation_en.srt
- 11 -Copy driver files into the project
- 11 -Copy driver files into the project.srt
- 11 -Copy driver files into the project_en.srt
- 11 -c_drivers
- 12 -Analysing the issue related to weak symbol linkage
- 12 -Analysing the issue related to weak symbol linkage.srt
- 12 -Analysing the issue related to weak symbol linkage_en.srt
- 13 -Fixing issue related to weak symbol linkage and testing project
- 13 -Fixing issue related to weak symbol linkage and testing project.srt
- 13 -Fixing issue related to weak symbol linkage and testing project_en.srt
- 14 -Game feature Start screen implementation part-1
- 14 -Game feature Start screen implementation part-1.srt
- 14 -Game feature Start screen implementation part-1_en.srt
- 15 -Game feature Start screen implementation part-2
- 15 -Game feature Start screen implementation part-2.srt
- 15 -Game feature Start screen implementation part-2_en.srt
- 16 -Game feature Start screen implementation part-3
- 16 -Game feature Start screen implementation part-3.srt
- 16 -Game feature Start screen implementation part-3_en.srt
- 17 -Game feature Start screen implementation part-4
- 17 -Game feature Start screen implementation part-4.srt
- 17 -Game feature Start screen implementation part-4_en.srt
- 18 -Game feature Start screen implementation part-5
- 18 -Game feature Start screen implementation part-5.srt
- 18 -Game feature Start screen implementation part-5_en.srt
- 19 -Game feature Start screen implementation part-6
- 19 -Game feature Start screen implementation part-6.srt
- 19 -Game feature Start screen implementation part-6_en.srt
- 2 -fastbit_Stm32_nano_v2_sch
- 2 -Implementation part 1 Generating ’C’ MCU driver files using STM32CubeIDE
- 2 -Implementation part 1 Generating ’C’ MCU driver files using STM32CubeIDE.srt
- 2 -Implementation part 1 Generating ’C’ MCU driver files using STM32CubeIDE_en.srt
- 20 -Game feature Start screen implementation part-7
- 20 -Game feature Start screen implementation part-7.srt
- 20 -Game feature Start screen implementation part-7_en.srt
- 21 -Game feature Start screen implementation part-8
- 21 -Game feature Start screen implementation part-8.srt
- 21 -Game feature Start screen implementation part-8_en.srt
- 22 -Game feature Start screen implementation part-9
- 22 -Game feature Start screen implementation part-9.srt
- 22 -Game feature Start screen implementation part-9_en.srt
- 23 -Game feature Start screen implementation part-10
- 23 -Game feature Start screen implementation part-10.srt
- 23 -Game feature Start screen implementation part-10_en.srt
- 24 -Game feature Start screen implementation part-11
- 24 -Game feature Start screen implementation part-11.srt
- 24 -Game feature Start screen implementation part-11_en.srt
- 25 -Game feature Start screen implementation part-12
- 25 -Game feature Start screen implementation part-12.srt
- 25 -Game feature Start screen implementation part-12_en.srt
- 26 -Game feature Start screen implementation part-13
- 26 -Game feature Start screen implementation part-13.srt
- 26 -Game feature Start screen implementation part-13_en.srt
- 27 -Game feature Obstacle movement implementation part-1
- 27 -Game feature Obstacle movement implementation part-1.srt
- 27 -Game feature Obstacle movement implementation part-1_en.srt
- 28 -Game feature Obstacle movement implementation part-2
- 28 -Game feature Obstacle movement implementation part-2.srt
- 28 -Game feature Obstacle movement implementation part-2_en.srt
- 29 -Game feature Obstacle movement implementation part-3
- 29 -Game feature Obstacle movement implementation part-3.srt
- 29 -Game feature Obstacle movement implementation part-3_en.srt
- 3 -Compiling ’C’ source files from Rust project How it works
- 3 -Compiling ’C’ source files from Rust project How it works.srt
- 3 -Compiling ’C’ source files from Rust project How it works_en.srt
- 30 -Game feature Obstacle movement implementation part-4
- 30 -Game feature Obstacle movement implementation part-4.srt
- 30 -Game feature Obstacle movement implementation part-4_en.srt
- 31 -Game feature Obstacle movement implementation part-5
- 31 -Game feature Obstacle movement implementation part-5.srt
- 31 -Game feature Obstacle movement implementation part-5_en.srt
- 32 -Game feature Obstacle movement implementation part-6
- 32 -Game feature Obstacle movement implementation part-6.srt
- 32 -Game feature Obstacle movement implementation part-6_en.srt
- 33 -Game feature Player movement implementation part-1
- 33 -Game feature Player movement implementation part-1.srt
- 33 -Game feature Player movement implementation part-1_en.srt
- 34 -Game feature Player movement implementation part-2
- 34 -Game feature Player movement implementation part-2.srt
- 34 -Game feature Player movement implementation part-2_en.srt
- 35 -Game feature Collision detection implementation part-1
- 35 -Game feature Collision detection implementation part-1.srt
- 35 -Game feature Collision detection implementation part-1_en.srt
- 36 -Game feature Collision detection implementation part-2
- 36 -Game feature Collision detection implementation part-2.srt
- 36 -Game feature Collision detection implementation part-2_en.srt
- 37 -Game feature Collision detection implementation part-3
- 37 -Game feature Collision detection implementation part-3.srt
- 37 -Game feature Collision detection implementation part-3_en.srt
- 4 -Writing build.rs part 1
- 4 -Writing build.rs part 1.srt
- 4 -Writing build.rs part 1_en.srt
- 5 -Writing build.rs part 2
- 5 -Writing build.rs part 2.srt
- 5 -Writing build.rs part 2_en.srt
- 6 -Writing build.rs part 3
- 6 -Writing build.rs part 3.srt
- 6 -Writing build.rs part 3_en.srt
- 7 -Writing build.rs part 4
- 7 -Writing build.rs part 4.srt
- 7 -Writing build.rs part 4_en.srt
- 8 -Writing build.rs part 5
- 8 -Writing build.rs part 5.srt
- 8 -Writing build.rs part 5_en.srt
- 9 -Testing project for systick interrupt generation
- 9 -Testing project for systick interrupt generation.srt
- 9 -Testing project for systick interrupt generation_en.srt
- 12 – Creating hardware agnostic device driver using embedded-hal
- 1 -About hardware agnostic driver development
- 1 -About hardware agnostic driver development.srt
- 1 -About hardware agnostic driver development_en.srt
- 2 -MPU6050 driver crate implementation part-1
- 2 -MPU6050 driver crate implementation part-1.srt
- 2 -MPU6050 driver crate implementation part-1_en.srt
- 3 -MPU6050 driver crate implementation part-2
- 3 -MPU6050 driver crate implementation part-2.srt
- 3 -MPU6050 driver crate implementation part-2_en.srt
- 4 -MPU6050 driver crate implementation part-3
- 4 -MPU6050 driver crate implementation part-3.srt
- 4 -MPU6050 driver crate implementation part-3_en.srt
- 5 -MPU6050 driver crate implementation part-4
- 5 -MPU6050 driver crate implementation part-4.srt
- 5 -MPU6050 driver crate implementation part-4_en.srt
- 2 – Rust Toolchain Installation
- 1 -Toolchain installation for Host
- 1 -Toolchain installation for Host.srt
- 1 -Toolchain installation for Host_en.srt
- 2 -Toolchain components and target triple of Tier 1 targets
- 2 -Toolchain components and target triple of Tier 1 targets.srt
- 2 -Toolchain components and target triple of Tier 1 targets_en.srt
- 3 -Creating a Rust project using Cargo and Important VS code extensions
- 3 -Creating a Rust project using Cargo and Important VS code extensions.srt
- 3 -Creating a Rust project using Cargo and Important VS code extensions_en.srt
- 4 -Important tools rustfmt, cargo fix , Clippy
- 4 -Important tools rustfmt, cargo fix , Clippy.srt
- 4 -Important tools rustfmt, cargo fix , Clippy_en.srt
- 3 – Rust Fundamentals Quick intro to core concepts
- 1 -How Rust ensures memory safety compared to CC++ part 1
- 1 -How Rust ensures memory safety compared to CC++ part 1.srt
- 1 -How Rust ensures memory safety compared to CC++ part 1_en.srt
- 10 -Borrow(&T and &mut T)
- 10 -Borrow(&T and &mut T).srt
- 10 -Borrow(&T and &mut T)_en.srt
- 11 -slice data type
- 11 -slice data type.srt
- 11 -slice data type_en.srt
- 12 -if..else as a statement and expression
- 12 -if..else as a statement and expression.srt
- 12 -if..else as a statement and expression_en.srt
- 13 -match statement
- 13 -match statement.srt
- 13 -match statement_en.srt
- 14 -if..let statement
- 14 -if..let statement.srt
- 14 -if..let statement_en.srt
- 15 -How Rust ensures memory safety compared to CC++ part 3
- 15 -How Rust ensures memory safety compared to CC++ part 3.srt
- 15 -How Rust ensures memory safety compared to CC++ part 3_en.srt
- 16 -Comparison and logical operators
- 16 -Comparison and logical operators.srt
- 16 -Comparison and logical operators_en.srt
- 17 -Bitwise operators
- 17 -Bitwise operators.srt
- 17 -Bitwise operators_en.srt
- 18 -Strings
- 18 -Strings.srt
- 18 -Strings_en.srt
- 19 -UTF8 encoded string
- 19 -UTF8 encoded string.srt
- 19 -UTF8 encoded string_en.srt
- 2 -Variables and numerical data types
- 2 -Variables and numerical data types.srt
- 2 -Variables and numerical data types_en.srt
- 20 -String literal type(&str)
- 20 -String literal type(&str).srt
- 20 -String literal type(&str)_en.srt
- 21 -Function declaration and parameters
- 21 -Function declaration and parameters.srt
- 21 -Function declaration and parameters_en.srt
- 22 -OptionT
- 22 -OptionT.srt
- 22 -OptionT_en.srt
- 23 -ResultT, E
- 23 -ResultT, E.srt
- 23 -ResultT, E_en.srt
- 24 -Generics
- 24 -Generics.srt
- 24 -Generics_en.srt
- 3 -Byte literal
- 3 -Byte literal.srt
- 3 -Byte literal_en.srt
- 4 -Char and unicode representation
- 4 -Char and unicode representation.srt
- 4 -Char and unicode representation_en.srt
- 5 -Statics
- 5 -Statics.srt
- 5 -Statics_en.srt
- 6 -Constants
- 6 -Constants.srt
- 6 -Constants_en.srt
- 7 -How Rust ensures memory safety compared to CC++ part 2
- 7 -How Rust ensures memory safety compared to CC++ part 2.srt
- 7 -How Rust ensures memory safety compared to CC++ part 2_en.srt
- 8 -Arrays
- 8 -Arrays.srt
- 8 -Arrays_en.srt
- 9 -References
- 9 -References.srt
- 9 -References_en.srt
- 4 – Cross compilation
- 1 -About the hardware
- 1 -About the hardware.srt
- 1 -About the hardware_en.srt
- 2 -Intro to cross compilation for target architecture
- 2 -Intro to cross compilation for target architecture.srt
- 2 -Intro to cross compilation for target architecture_en.srt
- 3 -Generating ELF file for the very basic rust program part 1
- 3 -Generating ELF file for the very basic rust program part 1.srt
- 3 -Generating ELF file for the very basic rust program part 1_en.srt
- 4 -Generating ELF file for the very basic rust program part 2
- 4 -Generating ELF file for the very basic rust program part 2.srt
- 4 -Generating ELF file for the very basic rust program part 2_en.srt
- 5 -About Type ’never’(!)
- 5 -About Type ’never’(!).srt
- 5 -About Type ’never’(!)_en.srt
- 6 -Inspecting ELF file using cargo-binutils
- 6 -Inspecting ELF file using cargo-binutils.srt
- 6 -Inspecting ELF file using cargo-binutils_en.srt
- 5 – Writing start-up code and linker script for bare metal Rust program
- 1 -Writing start-up code part-1
- 1 -Writing start-up code part-1.srt
- 1 -Writing start-up code part-1_en.srt
- 10 -Writing start-up code part-5 [Reset_Handler]
- 10 -Writing start-up code part-5 [Reset_Handler].srt
- 10 -Writing start-up code part-5 [Reset_Handler]_en.srt
- 11 -Raw pointers in Rust
- 11 -Raw pointers in Rust.srt
- 11 -Raw pointers in Rust_en.srt
- 12 -Writing start-up code part-6 [Reset_Handler]
- 12 -Writing start-up code part-6 [Reset_Handler].srt
- 12 -Writing start-up code part-6 [Reset_Handler]_en.srt
- 2 -About Linker, Linker flags and Linker script
- 2 -About Linker, Linker flags and Linker script.srt
- 2 -About Linker, Linker flags and Linker script_en.srt
- 3 -Writing linker script from scratch part 1 [MEMORY]
- 3 -Writing linker script from scratch part 1 [MEMORY].srt
- 3 -Writing linker script from scratch part 1 [MEMORY]_en.srt
- 4 -Different types of data in a program
- 4 -Different types of data in a program.srt
- 4 -Different types of data in a program_en.srt
- 5 -Writing linker script from scratch part 2 [SECTIONS]
- 5 -Writing linker script from scratch part 2 [SECTIONS].srt
- 5 -Writing linker script from scratch part 2 [SECTIONS]_en.srt
- 6 -Writing linker script from scratch part 3
- 6 -Writing linker script from scratch part 3.srt
- 6 -Writing linker script from scratch part 3_en.srt
- 7 -Writing start-up code part-2 [Vector table]
- 7 -Writing start-up code part-2 [Vector table].srt
- 7 -Writing start-up code part-2 [Vector table]_en.srt
- 8 -Writing start-up code part-3 [extern C]
- 8 -Writing start-up code part-3 [extern C].srt
- 8 -Writing start-up code part-3 [extern C]_en.srt
- 9 -Writing start-up code part-4 [Default_Handlers]
- 9 -Writing start-up code part-4 [Default_Handlers].srt
- 9 -Writing start-up code part-4 [Default_Handlers]_en.srt
- 6 – Flash and Debug
- 1 -Flashing code to target hardware-1 [Install STM32CubeCLT]
- 1 -Flashing code to target hardware-1 [Install STM32CubeCLT].srt
- 1 -Flashing code to target hardware-1 [Install STM32CubeCLT]_en.srt
- 2 -Flashing code to target hardware-2 [VsCode and cortex-debug setup]
- 2 -Flashing code to target hardware-2 [VsCode and cortex-debug setup].srt
- 2 -Flashing code to target hardware-2 [VsCode and cortex-debug setup]_en.srt
- 3 -Flashing code using probe.rs tools
- 3 -Flashing code using probe.rs tools.srt
- 3 -Flashing code using probe.rs tools_en.srt
- 7 – Exercise 2 Write a bare metal Rust application to handle LEDs using Interrupts
- 1 -Introduction
- 1 -Introduction.srt
- 1 -Introduction_en.srt
- 10 -Commenting and generating documentation part 2 [! Inner documentation]
- 10 -Commenting and generating documentation part 2 [! Inner documentation].srt
- 10 -Commenting and generating documentation part 2 [! Inner documentation]_en.srt
- 11 -Commenting and generating documentation part 1 [ Outer documentation]
- 11 -Commenting and generating documentation part 1 [ Outer documentation].srt
- 11 -Commenting and generating documentation part 1 [ Outer documentation]_en.srt
- 12 -Exercise Implementation Part 8; Writing button module
- 12 -Exercise Implementation Part 8; Writing button module.srt
- 12 -Exercise Implementation Part 8; Writing button module_en.srt
- 13 -Exercise Implementation Part 9; Coding for button interrupt
- 13 -Exercise Implementation Part 9; Coding for button interrupt.srt
- 13 -Exercise Implementation Part 9; Coding for button interrupt_en.srt
- 14 -Exercise Implementation Part 10
- 14 -Exercise Implementation Part 10.srt
- 14 -Exercise Implementation Part 10_en.srt
- 15 -Exercise Implementation Part 11
- 15 -Exercise Implementation Part 11.srt
- 15 -Exercise Implementation Part 11_en.srt
- 16 -Exercise Implementation Part 12
- 16 -Exercise Implementation Part 12.srt
- 16 -Exercise Implementation Part 12_en.srt
- 17 -Exercise Implementation Part 13
- 17 -Exercise Implementation Part 13.srt
- 17 -Exercise Implementation Part 13_en.srt
- 18 -Exercise Implementation Part 14 Testing button interrupt
- 18 -Exercise Implementation Part 14 Testing button interrupt.srt
- 18 -Exercise Implementation Part 14 Testing button interrupt_en.srt
- 2 -Exercise Implementation Part 1
- 2 -Exercise Implementation Part 1.srt
- 2 -Exercise Implementation Part 1_en.srt
- 3 -Exercise Implementation Part 2
- 3 -Exercise Implementation Part 2.srt
- 3 -Exercise Implementation Part 2_en.srt
- 4 -Exercise Implementation Part 3
- 4 -Exercise Implementation Part 3.srt
- 4 -Exercise Implementation Part 3_en.srt
- 5 -Exercise Implementation Part 4
- 5 -Exercise Implementation Part 4.srt
- 5 -Exercise Implementation Part 4_en.srt
- 6 -Exercise Implementation Part 5
- 6 -Exercise Implementation Part 5.srt
- 6 -Exercise Implementation Part 5_en.srt
- 7 -Exercise Implementation Part 6
- 7 -Exercise Implementation Part 6.srt
- 7 -Exercise Implementation Part 6_en.srt
- 8 -Exercise Implementation Part 7 and Testing LED module
- 8 -Exercise Implementation Part 7 and Testing LED module.srt
- 8 -Exercise Implementation Part 7 and Testing LED module_en.srt
- 9 -Unsafe block vs Unsafe fn
- 9 -Unsafe block vs Unsafe fn.srt
- 9 -Unsafe block vs Unsafe fn_en.srt
- 8 – Exercise 3 Using external crate cortex-m-rt and cortex-m
- 1 -What is a crate
- 1 -What is a crate.srt
- 1 -What is a crate_en.srt
- 2 -Important crates for embedded systems
- 2 -Important crates for embedded systems.srt
- 2 -Important crates for embedded systems_en.srt
- 3 -Exercise introduction
- 3 -Exercise introduction.srt
- 3 -Exercise introduction_en.srt
- 4 -Cortex-m-rt crate explanation
- 4 -Cortex-m-rt crate explanation.srt
- 4 -Cortex-m-rt crate explanation_en.srt
- 5 -Crate version number syntax
- 5 -Crate version number syntax.srt
- 5 -Crate version number syntax_en.srt
- 6 -Panic handling crates
- 6 -Panic handling crates.srt
- 6 -Panic handling crates_en.srt
- 7 -Systick time base generation using cortex-m crate
- 7 -Systick time base generation using cortex-m crate.srt
- 7 -Systick time base generation using cortex-m crate_en.srt
- 8 -Testing Systick time base generation
- 8 -Testing Systick time base generation.srt
- 8 -Testing Systick time base generation_en.srt
- 9 – Exercise 004 ITM prints
- 1 -Exercise 004 introduction
- 1 -Exercise 004 introduction.srt
- 1 -Exercise 004 introduction_en.srt
- 2 -Instrumentation Trace Macrocell(ITM)
- 2 -Instrumentation Trace Macrocell(ITM).srt
- 2 -Instrumentation Trace Macrocell(ITM)_en.srt
- 3 -Exercise implementation
- 3 -Exercise implementation.srt
- 3 -Exercise implementation_en.srt
- 4 -Refactoring and Testing
- 4 -Refactoring and Testing.srt
- 4 -Refactoring and Testing_en.srt
- 5 -Critical section
- 5 -Critical section.srt
- 5 -Critical section_en.srt
- 6 -Mutex and Refcell
- 6 -Mutex and Refcell.srt
- 6 -Mutex and Refcell_en.srt
包含内容
- · 1 – Introduction
- · 1 -Welcome
- · 1 -Welcome.srt
- · 1 -Welcome_en.srt
- · 2 – Course repository.html
- · 10 – Rust Foreign Function Interface(FFI)
- · 1 -Steps involved in dealing with Rust and Foreign language code
- · 1 -Steps involved in dealing with Rust and Foreign language code.srt
贡献者
陈可
白银