《单片机编程魔法师之高级裸编程思想》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:余灿基主编;张玮,张志柏,苏永刚编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2014
  • ISBN:9787121239724
  • 页数:261 页
图书介绍:本书首先介绍数据驱动的程序,实现程序的数码分离,然后介绍并行多任务程序。接下来以软件定时器与软件延时器为例,实现了多任务并行在微操作系统下的存活,并且证明了硬件资源的匮乏可以由软件(系统级的代码)来弥补。最后从实战的角度对项目进行统筹与包装,并以宝贝车为实例,对本书介绍的编程思想进行了综合运用,让读者可以看到实际运用中的坎坷与坦途。

第1章 数据驱动程序 1

1.1 数据驱动程序 1

1.1.1 数据驱动程序的定义 1

1.1.2 数据驱动程序简介 2

1.2 4支方波问题与测试模型 4

1.2.1 问题1与分析 4

1.2.2 测试模型 5

1.3 一支峰谷等宽方波的实现 6

1.3.1 问题1-1与分析 6

1.3.2 实现 8

1.3.3 仿真 8

1.4 一支峰谷不等宽方波的实现 9

1.4.1 问题1-2与分析 9

1.4.2 实现 10

1.4.3 仿真 11

1.4.4 亮点分析 11

1.5 两支波的实现 12

1.5.1 问题1-3与分析 12

1.5.2 实现 14

1.5.3 仿真 15

15.4 亮点分析 15

1.6 4支波的实现 16

1.6.1 问题1-4与分析 16

1.6.2 实现 17

1.6.3 仿真 19

1.7 冗余代码的一次简化 20

1.7.1 亮点分析 21

1.7.2 代码简化 22

1.8 冗余代码的二次简化 23

1.8.1 亮点分析 24

1.8.2 代码简化 24

1.9 冗余代码的三次简化 26

1.9.1 数码分离的启示 26

1.9.2 数据脚本 27

1.9.3 数据驱动的实现 28

1.9.4 回顾与思考 29

1.10 4支波数据驱动程序应用 29

1.10.1 问题2与分析 30

1.10.2 实现 32

1.10.3 仿真 33

1.10.4 回顾与思考 33

1.1 1总结 34

1.1 1.1 问题3与分析 34

1.1 1.2 规范脚本 35

1.1 1.3 规范播放器 36

1.1 1.4 规范实现 37

1.1 1.5 回顾与思考 38

第2章 并行多任务程序 42

2.1 初识并行多任务程序 42

2.1.1 释义 42

2.1.2 单片机能力的评估 43

2.2 并行三任务问题与测试平台 45

2.2.1 问题4与分析 45

2.2.2 测试模型 46

2.3 并行三任务问题的顺序编程 47

2.3.1 问题与分析 47

2.3.2 实现 48

2.3.3 仿真一 50

2.3.4 测试分析 50

2.3.5 仿真二 52

2.3.6 仿真三 53

2.3.7 仿真四 53

2.3.8 回顾与思考 54

2.4 运行时序 55

2.4.1 时序分析 55

2.4.2 并行多任务 56

2.4.3 并行多任务的可行性 57

2.5 我们的微操作系统 59

2.5.1 操作系统与并行多任务 59

2.5.2 单片机的优劣分析 60

2.5.3 微操作系统 62

2.6 任务的生与死 63

2.6.1 问题5与分析 63

2.6.2 问题5的实现 63

2.6.3 暗点分析 64

2.6.4 任务的生死状态 65

2.6.5 “生”与“死”的实现 65

2.6.6 回顾与思考 66

2.7 一个任务的线程 67

2.7.1 问题与分析 67

2.7.2 实现 69

2.7.3 回顾与思考 71

2.8 并行多任务线程 73

2.8.1 问题与分析 73

2.8.2 实现 74

2.8.3 回顾与思考 76

2.9 并行多任务多线程的数据与代码分离 78

2.9.1 问题与分析 78

2.9.2 实现 81

2.9.3 回顾与思考 84

2.10 任务的生命 86

2.10.1 问题与分析 86

2.10.2 实现 87

2.10.3 回顾与思考 90

2.11 任务的复活 92

第3章 定时器与延时器 94

3.1 并行多任务多线程的等待方案 94

3.1.1 概述 94

3.1.2 软件定时器与软件延时器 95

3.2 一个软件定时器 96

3.2.1 问题6与分析 96

3.2.2 测试模型 97

3.2.3 问题与分析 97

3.2.4 实现 99

3.2.5 仿真 100

3.3 8个软件定时器 100

3.3.1 问题与分析 100

3.3.2 实现 102

3.3.3 仿真 107

3.3.4 回顾与思考 107

3.4 软件定时器代码优化 109

3.4.1 问题与分析 109

3.4.2 实现 110

3.4.3 回顾与思考 114

3.5 时基中断的时序与主程序的关系 114

3.5.1 时序分析 114

3.5.2 回顾与思考 116

3.6 一个延时器 116

3.6.1 问题7与分析 116

3.6.2 实现 118

3.6.3 回顾与思考 119

3.7 8个延时器 120

3.7.1 问题与分析 120

3.7.2 实现 120

3.7.3 回顾与思考 126

3.8 延时器的优化 126

3.8.1 问题与分析 126

3.8.2 实现 128

3.9 任务代码的初步改造 132

3.9.1 问题与分析 132

3.9.2 实现 132

3.9.3 回顾与思考 135

3.10 消息处理 136

3.10.1 问题与分析 136

3.10.2 实现 137

3.10.3 问题分析 139

3.10.4 实现 139

3.10.5 回顾与思考 142

3.11 广播消息 142

3.11.1 问题与分析 142

3.11.2 实现 143

3.11.3 回顾与思考 147

3.12 任务代码的最终改造 148

3.12.1 问题与分析 149

3.12.2 实现 149

3.12.3 仿真 154

3.12.4 回顾与思考 154

3.12.5 亮点分析 155

3.13 状态指示灯 155

3.13.1 问题8与分析 155

3.13.2 测试模型 157

3.13.3 实现 157

3.13.4 回顾与思考 161

第4章 面向对象的程序 162

4.1 计算机的语言特征 162

4.1.1 正视C语言 162

4.1.2 以对象看世界 163

4.2 兔类的传奇 164

4.2.1 兔类浅说 164

4.2.2 单片机中的兔类 165

4.2.3 兔类的结构 166

4.2.4 兔类的属性成员 167

4.2.5 兔类的实现 169

4.3 兔子的传奇 170

4.3.1 问题9与分析 170

4.3.2 实现 171

4.3.3 回顾与思考 173

4.4 面向对象编程的书写规范 174

4.4.1问题与分析 174

4.4.2 实现 180

4.5 方波对象 184

4.5.1 问题10与分析 184

4.5.2 测试模型 186

4.5.3 综合分析一 186

4.5.4 增补的面向对象编程的头文件 189

4.5.5 综合分析二 190

4.5.6 实现 198

4.5.7 仿真 207

4.5.8 回顾与思考 207

第5章 对象的归宿 209

5.0引言 209

5.1 解密对象魔法 209

5.1.1 对象的生命特征 210

5.1.2 对象生命特征的含义 210

5.2 项目管理 211

5.2.1 项目的内容 211

5.3 项目的实现 214

5.3.1 文档的落实 214

5.3.2 文档的分包 222

5.4 对象文档与项目分离 224

5.4.1 任务与分析 224

5.4.2 面向对象编程的层次关系 225

5.5 源码的商业保护 226

5.5.1 库文件 226

5.5.2 库中的模块 227

5.5.3 制作库 228

5.5.4 使用对象库 229

5.5.5 库、模块与对象的关系 230

5.5.6 库的操作 230

5.5.7 创库计划 232

5.6 对象的花絮 233

5.6.1 对象分析的观点 233

5.6.2 内存统筹的观点 234

5.6.3 虚拟与现实相通的观点 234

5.6.4 常见的对象 238

第6章 宝贝车的综合应用 241

6.1 宝贝车简介 241

6.1.1 问题11 241

6.2 对象分析 242

6.2.1 组合对象与实现 242

6.2.2 宝贝车的库项目 246

6.3 实现对象 248

6.3.1 车轮的定义 248

6.3.2 脉冲发生器 249

6.3.3 宝贝车的控制 252

6.3.4 宝贝车的创建 253

6.3.5 实现 254

6.3.6 修成正果 259

6.4 对象的使用 259

参考文献 261