首页 > 图书中心 > Rust汽车电子开发实践

目录

目    录

开篇 1

第1章  Rust语言简介 2

1.1  Rust语言概述 3

1.2  Rust语言特性 4

1.3  Rust语言发展历程和现状 6

1.4  Rust语言与C/C++的比较 8

1.5  Rust语言学习资源 10

1.6  总结与讨论 10

1.7  练习 11

第2章  初识Rust 12

2.1  IDE环境介绍 12

2.2  安装Rust 14

2.2.1  Windows安装 14

2.2.2  Linux或macOS安装 14

2.2.3  故障排除 15

2.2.4  更新与卸载 15

2.2.5  本地文档 16

2.3  第一个Rust程序:Hello world 16

2.4  Cargo介绍 17

2.4.1  创建项目 17

2.4.2  编译并运行Cargo项目 18

2.4.3  发布 19

2.4.4  依赖 19

2.5  调试Rust 20

2.6  总结与讨论 21

2.7  练习 22

第3章  编程基础概念 23

3.1  关键字 23

3.2  变量 23

3.3  常量 25

3.4  数据类型 25

3.5  函数 28

3.6  注释 29

3.7  控制流 30

3.8  总结与讨论 34

3.9  练习 34

第4章  所有权 35

4.1  栈与堆 35

4.2  所有权规则 36

4.3  变量作用域 37

4.4  内存与分配 38

4.5  变量与数据交互的方式:移动(move) 39

4.6  变量与数据交互的方式:克隆(clone) 40

4.7  所有权与函数 41

4.8  引用与借用 42

4.9  可变引用 42

4.10  悬垂引用 45

4.11  总结与讨论 47

4.12  练习 48

第5章  结构体 49

5.1  结构体实例 49

5.2  使用结构体 50

5.3  结构体方法 51

5.4  关联函数 53

5.5  总结与讨论 53

5.6  练习 54

第6章  枚举 55

6.1  枚举值 55

6.2  Option枚举 56

6.3  match控制流 58

6.4  绑定值的模式 60

6.5  匹配Option<T> 61

6.6  匹配的一些知识点 61

6.7  if let控制流 62

6.8  总结与讨论 63

6.9  练习 64

第7章  模块系统 65

7.1  包和crate 65

7.2  模块 66

7.3  引用模块项目的路径 68

7.4  使用pub关键字 69

7.5  使用use关键字 71

7.6  使用as关键字 71

7.7  使用第三方的包 72

7.8  总结与讨论 72

7.9  练习 74

第8章  练手:写个猜数字游戏 75

8.1  处理输入和输出 75

8.2  生成一个秘密数字 77

8.3  比较 79

8.4  循环猜数 83

8.5  总结与讨论 84

8.6  练习 84

第9章  嵌入式系统简介 85

9.1  嵌入式系统概述 85

9.2  汽车中的嵌入式设备 86

9.3  嵌入式系统的组成 88

9.4  汽车中的嵌入式技术 90

9.5  嵌入式系统开发流程 91

9.6  汽车嵌入式软件开发 93

9.7  嵌入式系统常见的问题 97

9.8  Rust语言在嵌入式系统中的优势 98

9.9  总结与讨论 98

9.10  练习 99

第10章  Rust在Linux中的应用 100

10.1  在Windows系统下编译Linux程序 100

10.2  命令行程序 103

10.3  my_ls程序 103

10.4  错误处理 105

10.5  优化my_ls 108

10.6  总结与讨论 109

10.7  练习 109

第11章  Rust的文件操作 110

11.1  Linux的文件系统 110

11.2  Rust创建文件 111

11.3  读写文件 113

11.4  设置文件指针指向的位置 118

11.5  总结与讨论 120

11.6  练习 120

第12章  多线程处理 121

12.1  进程与线程 121

12.2  闭包 122

12.3  迭代器 131

12.4  线程 134

12.5  多线程共享状态 143

12.6  总结与讨论 148

12.7  练习 149

第13章  汽车电子生态环境介绍 150

13.1  汽车电子主要供应商 151

13.1.1  汽车电子Tier 1供应商 151

13.1.2  汽车电子国内外主要芯片供应商 152

13.2  汽车电子应用场景 154

13.3  MCU简介 159

13.3.1  车规级MCU 160

13.3.2  ECU、MCU、VCU、HCU、PCU…… 161

13.4  车规级MCU的分类及其主要产品 164

13.4.1  车规级MCU的分类 164

13.4.2  车规级MCU的主要厂商及其产品 165

13.5  总结与讨论 172

13.6  练习 173

第14章  Rust语言在MCU中的应用 174

14.1  Rust语言MCU开发环境搭建 174

14.2  Rust嵌入式开发环境的初步使用 184

14.3  初级应用:点亮LED 192

14.4  进阶应用:实现LED闪烁 202

14.5  进阶应用:按键控制 207

14.6  进阶应用:按键中断 211

14.7  CAN通信 217

14.8  总结与讨论 226

14.9  练习 227

第15章  Rust在TCxx硬件平台上的开发 228

15.1  工具链说明 229

15.2  硬件平台 232

15.3  TC375 Lite Kit Example 234

15.4  总结与讨论 258

15.5  练习 259

第16章  Rust进阶应用之DDS 260

16.1  DDS中间件简介 260

16.2  DDS的发布/订阅模式 262

16.3  DDS在汽车电子中的应用 263

16.4  DDS发布/订阅模式的Rust实现 264

16.5  总结与讨论 275

16.6  练习 276

第17章  汽车电子开发展望 277

17.1  汽车电子开发现状 277

17.2  汽车电子中Rust的发展机会 279

17.3  反思与计划 281

附录  关键字 283

版权所有(C)2023 清华大学出版社有限公司 京ICP备10035462号 京公网安备11010802042911号

联系我们 | 网站地图 | 法律声明 | 友情链接 | 盗版举报 | 人才招聘