《嵌入式系统课程设计》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:贾世祥,俞建新,马小飞,肖建编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2015
  • ISBN:9787111496373
  • 页数:246 页
图书介绍:综合实践是嵌入式系统教学中的重要实验环节。本书是基于VxWorks操作系统的嵌入式系统综合实践教材。在本书的前导部分,介绍了VxWorks/Tornado的基本知识,概述了VxWorks综合课程设计的特点与分类,以及综合课程设计的基本类型与步骤。在本书的核心部分介绍了控制类、模拟器类、游戏类、实用软件类……等类型课程设计的基本解决方案、关键技术和实验要点。在本书给出的两个到三个嵌入式综合课程设计实验讲解中,涉及到了选题说明、功能设计、任务划分和模块划分、详细设计、测试设计、测试用例、测试报告、运行结果等教学范例内容。为了方便读者的使用,本书附有配套光盘,内含正文阐述的VxWorks综合课程设计范例的工程文件。本书可作为高等院校研究生、本科生进行嵌入式系统教学或者案例教学的教材,也可作为工程技术人员和嵌入式系统爱好者的参考读物。

第0章 引言 1

0.1 对读者基本知识和技能的要求 1

0.2 对读者自行开展课程设计的期望 2

第1章 VxWorks/Tornado概述 3

1.1 VxWorks基本组成 3

1.2 VxWorks特点 4

1.3 Tornado概述 5

1.4 VxWorks任务管理 6

1.4.1 任务状态转换 7

1.4.2 任务框架 8

1.4.3 任务相关API函数 9

1.4.4 任务相关API函数使用范例 10

1.5 VxWorks任务间通信 12

1.5.1 信号量 13

1.5.2 信号量语句编程实验 14

1.5.3 消息队列 16

1.5.4 消息队列语句编程实验 19

1.5.5 管道 19

1.5.6 信号(软中断) 20

1.5.7 进程间通信函数综合使用范例 22

1.6 VxWorks中断机制 27

1.7 VxWorks设备驱动 28

1.7.1 VxWorks设备描述符 29

1.7.2 VxWorks的I/O系统 29

1.7.3 基本I/O接口 30

1.7.4 安装VxWorks驱动程序 31

1.8 VxWorks图形组件 32

1.8.1 WindML3.0 32

1.8.2 通用图形库 33

1.8.3 WindML基本知识 34

1.8.4 UGL获得输入设备信息的详细解释 35

1.8.5 典型WindML绘图程序结构 36

1.8.6 UGL常用的窗口函数 38

1.9 小结 40

第2章 嵌入式系统课程设计概述 41

2.1 嵌入式课程设计的基本特点 41

2.2 嵌入式课程设计的教学目标 42

2.3 嵌入式课程设计的基本分类 42

2.3.1 控制类课程设计 42

2.3.2 模拟器类课程设计 43

2.3.3 通信类课程设计 43

2.3.4 地理位置服务类课程设计 44

2.3.5 游戏类课程设计 46

2.3.6 实用工具类课程设计 46

2.4 嵌入式课程设计的基本步骤 46

2.4.1 选题说明书 46

2.4.2 可行性分析 48

2.4.3 概要设计 49

2.4.4 任务划分 58

2.4.5 常用编码规则 58

2.4.6 头文件编程范例 60

2.4.7 代码优化 62

2.4.8 测试方案设计和测试用例 65

2.4.9 测试报告 68

2.4.1 0实验文档编写指导 69

2.5 小结 70

第3章 控制类课程设计 71

3.1 LED点阵汉字滚行显示扩展板 71

3.1.1 软硬件开发环境 71

3.1.2 硬件功能分析与设计 71

3.1.3 扩展板电路设计 77

3.1.4 汉字显示原理 80

3.1.5 软件功能分析与设计 82

3.1.6 驱动程序设计 87

3.1.7 测试方案设计 90

3.1.8 测试应用程序设计 90

3.1.9 CPLD程序注解 92

3.1.10 VxWorks驱动程序注解 95

3.1.11 驱动程序测试步骤和测试结果 109

3.2 其他实现方案 110

3.3 思考题 111

3.4 替换练习 111

3.5 小结 111

第4章 模拟器类课程设计 112

4.1 列车自动售票机模拟器 112

4.1.1 概述 113

4.1.2 自动售票机软硬件环境需求 113

4.1.3 自动售票机用户需求 113

4.1.4 功能分析和设计 115

4.2 数据分析 116

4.2.1 主要结构体数据变量定义 117

4.2.2 数据流分析 118

4.3 任务划分和定义 119

4.4 人机交互设计 120

4.4.1 主函数progStart设计 125

4.4.2 usrAppInit函数 126

4.4.3 模拟钱币输入时间限制处理 127

4.5 进一步理解TTVM程序 128

4.5.1 完整源代码清单阅读指南 128

4.5.2 任务处理流程的着色说明 128

4.5.3 二进制信号量使用分析 128

4.5.4 消息队列使用分析 129

4.5.5 其他IPC语句使用 131

4.6 任务执行流程分析 131

4.6.1 LCD任务的处理流程 131

4.6.2 触摸屏任务的处理流程 135

4.6.3 计算任务的处理流程 137

4.6.4 输入任务的处理流程 142

4.6.5 输出任务的处理流程 146

4.6.6 键盘任务的处理流程 150

4.6.7 LED数码管任务的处理流程 150

4.6.8 自动售票机模拟器的主要函数 152

4.7 测试方案设计 154

4.8 异常处理测试方案设计 155

4.9 测试结果和故障排除 159

4.10 思考题 160

4.11 联网自动售票机模拟器 161

4.12 小结 161

第5章 网络游戏类课程设计 162

5.1 跳棋溯源 162

5.2 联网跳棋电子游戏简介 163

5.2.1 软硬件环境 163

5.2.2 主要功能 163

5.3 跳棋游戏运行指南 164

5.3.1 运行前的准备工作 164

5.3.2 游戏操作说明 164

5.4 自然人走棋版本系统设计 168

5.4.1 主界面设计 168

5.4.2 棋位极坐标系设计 170

5.4.3 绘图坐标系设计 171

5.4.4 主要数据结构和数组赋值 173

5.4.5 颜色确定算法 175

5.4.6 旋转映射算法 176

5.4.7 走棋规则 178

5.4.8 光标改变及走棋设计 178

5.4.9 可达棋位搜索算法 179

5.4.10 游戏胜利的判断及排名和记录步数算法 180

5.4.11 判断当前和下一步该谁走棋的算法 180

5.4.12 程序模块划分 181

5.4.13 任务划分 181

5.4.14 数据包结构描述 181

5.4.15 网络通信处理流程 182

5.4.16 光标闪烁的实现及信号的使用 182

5.4.17 程序间通信 183

5.4.18 图形界面绘制 183

5.4.19 函数 184

5.5 任务函数处理流程 187

5.5.1 progStart任务 187

5.5.2 taskGame任务 188

5.5.3 taskGlint任务 189

5.5.4 taskRecv任务 190

5.5.5 taskTick任务和taskTimeShow任务 192

5.6 机器走棋版本系统设计 192

5.6.1 跳棋游戏平台描述 193

5.6.2 可判优坐标系设计 193

5.6.3 机器走棋的棋盘坐标系变换 194

5.6.4 智能走棋策略 196

5.6.5 数据结构改动 198

5.6.6 程序模块改动 198

5.6.7 taskCMP任务工作原理及流程图 198

5.6.8 开局阶段走棋函数说明 199

5.6.9 中局阶段走棋函数说明 200

5.6.10 收尾阶段走棋函数说明 202

5.6.11 循环走棋判断 203

5.6.12 程序间通信 204

5.6.13 每步走棋等待时间设置 205

5.6.14 增加的函数 205

5.7 机器走棋版本编程指南 206

5.7.1 跳棋B版本的工程文件 206

5.7.2 处理流程总控制结构 206

5.7.3 对模板程序中智能走棋算法的改造 207

5.7.4 改造后的程序测试及算法评估 215

5.8 编码过程中的故障排除 217

5.9 设计测试方案并进行测试 217

5.9.1 测试方案 217

5.9.2 测试实施 218

5.9.3 6个自然人玩家的实测记录 218

5.9.4 4个自然人玩家的实测记录 219

5.9.5 2个自然人玩家和1个机器玩家的实测记录 221

5.9.6 2个机器玩家的实测记录 221

5.9.7 2个自然人玩家和4个机器玩家的实测记录 222

5.9.8 6个机器玩家的实测记录 222

5.10 机器棋手博弈走棋算法 223

5.10.1 博弈走棋的图例说明 224

5.10.2 红色玩家的优选走棋路径 225

5.10.3 黄色玩家的优选走棋路径 226

5.10.4 绿色玩家的优选走棋路径 227

5.10.5 浅蓝色玩家的优选走棋路径 229

5.10.6 深蓝色玩家的优选走棋路径 230

5.10.7 紫色玩家的优选走棋路径 231

5.10.8 当前玩家敏感走法案例图解 232

5.10.9 博弈算法基本处理流程 233

5.11 功能扩展练习和替换练习 237

5.12 小结 239

附录 WindML绘图程序例子 240

参考文献 246