当前位置:首页 > 工业技术
基于嵌入式实时操作系统的程序设计技术
基于嵌入式实时操作系统的程序设计技术

基于嵌入式实时操作系统的程序设计技术PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:周航慈著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2011
  • ISBN:9787512402508
  • 页数:268 页
图书介绍:本书介绍了在“嵌入式实时操作系统”环境下的程序设计技术,内容有“绪论”、“建立开发环境”、“有关任务的基本知识”、“任务函数设计”、“中断服务程序设计”、“行为同步”、“资源同步”、“数据通信”、“时间管理”、“采样任务设计”、“串行通信任务设计”、“键盘任务设计”、“显示任务设计”、“嵌入式操作系统的剪裁”和“设计示例”。本书介绍的内容以源码开放的嵌入式实时操作系统?C/OS-II为软件运行环境,以SmartCortex M3-1700通用教学/竞赛/工控开发平台为硬件环境。本书内容深入浅出,为加深理解,书中有很多程序设计实例和实验。
《基于嵌入式实时操作系统的程序设计技术》目录

第1章 绪论 1

1.1 嵌入式系统的编程环境 1

1.1.1 基于裸机的编程环境 2

1.1.2 基于嵌入式实时操作系统的编程环境 2

1.2 学习使用实时操作系统之前必须具备的能力 3

1.2.1 软件设计能力的要求 3

1.2.2 硬件设计能力的要求 4

1.2.3 工程项目开发能力的要求 4

1.3 实时操作系统的快速入门方法 4

第2章 建立开发环境 6

2.1 CPU芯片与硬件平台的选择 6

2.2 嵌入式实时操作系统的选择 8

2.3 嵌入式实时操作系统的移植 9

2.4 开发调试环境的建立 9

2.5 工程模板分析 15

2.6 工程模板的使用 17

第3章 有关任务的基本知识 21

3.1 仿多CPU环境的实现 21

3.2 任务的特性 22

3.2.1 任务的独立性 22

3.2.2 任务的并发性 23

3.2.3 任务的动态性 24

3.3 任务的划分 26

3.3.1 设备依赖性任务的划分 26

3.3.2 关键任务的划分 27

3.3.3 紧迫任务的划分 30

3.3.4 数据处理任务的划分 31

3.3.5 功能聚合任务的划分 32

3.3.6 触发条件相同任务的划分 32

3.3.7 运行周期相同任务的划分 33

3.3.8 顺序操作任务的划分 33

3.3.9 任务划分小结 33

3.4 任务的可调度性分析 34

3.5 与任务管理有关的常用函数 35

3.5.1 创建任务 35

3.5.2 删除任务 37

第4章 任务设计 39

4.1 任务函数的结构 39

4.1.1 单次执行的任务 39

4.1.2 周期性执行的任务 43

4.1.3 事件触发执行的任务 44

4.2 任务优先级安排 47

4.2.1 任务的优先级资源 48

4.2.2 任务优先级安排原则 48

4.3 任务的数据结构设计 49

4.3.1 与操作系统有关的数据结构 49

4.3.2 与操作系统无关的数据结构 50

4.4 任务函数设计中的问题 50

4.4.1 公共函数的调用 50

4.4.2 与其他任务的协调 52

4.4.3 共享资源的访问 52

4.4.4 与其他任务进行数据通信 52

4.5 任务函数的代码设计过程 52

4.5.1 系统总体任务关联图 53

4.5.2 任务的关联分析 53

4.5.3 任务的程序流程图 54

4.5.4 编写任务函数的程序代码 56

第5章 中断服务程序设计 58

5.1 中断优先级 58

5.1.1 中断的优先级资源 59

5.1.2 中断优先级安排原则 59

5.2 在工程模板中加入中断服务程序 60

5.3 中断服务程序设计 61

5.3.1 中断服务程序的结构 61

5.3.2 选择与关联任务的通信手段 62

5.3.3 带中断服务程序的示例 63

第6章 行为同步 65

6.1 用于行为同步的通信手段 65

6.1.1 二值信号量 65

6.1.2 计数信号量 66

6.1.3 事件标志组 68

6.1.4 消息邮箱 70

6.1.5 消息队列 72

6.1.6 通信手段的选择 73

6.2 行为同步 73

6.2.1 ISR和任务之间的同步 73

6.2.2 两个任务之间的单向同步 76

6.2.3 两个任务之间的双向同步 81

6.2.4 两个以上任务同步一个任务 85

6.2.5 多个任务相互同步 94

第7章 资源同步 103

7.1 关中断 103

7.1.1 保障数据可靠性 103

7.1.2 保障数据完整性 114

7.1.3 关中断小结 125

7.2 关调度 126

7.3 使用互斥信号量 131

7.4 使用计数信号量 135

第8章 数据通信 137

8.1 全局变量 137

8.2 内存数据块 142

8.3 消息邮箱 142

8.4 消息队列 161

第9章 时间管理 167

9.1 控制任务的执行周期 167

9.2 控制任务的运行节奏 168

9.3 状态查询 168

9.4 终止周期性任务 169

第10章 采样任务设计 174

10.1 使用延时函数控制采样周期 174

10.2 使用定时中断控制采样周期 178

10.3 使用节拍钩子函数进行采样 182

10.4 被动采样 186

第11章 串行通信任务设计 191

11.1 通信协议设计 191

11.2 风险评估 192

11.3 帧缓冲区 193

11.4 数据发送 194

11.5 数据接收 198

11.6 双向数据通信 202

第12章 键盘任务设计 208

12.1 可靠地获取键盘操作信息 208

12.2 基于菜单操作的监控流程 210

12.2.1 系统功能分析和菜单结构设计 210

12.2.2 监控程序设计 210

12.3 与显示任务的通信 212

第13章 显示任务设计 213

13.1 GUI简介 213

13.2 画面设计 213

13.3 与其他任务的接口 214

13.4 短消息设计 215

13.5 显示任务设计 216

第14章 嵌入式操作系统的裁剪 223

14.1 服务功能的裁剪 223

14.1.1 任务管理功能的裁剪 223

14.1.2 通信服务功能的裁剪 224

14.1.3 其他功能的裁剪 226

14.2 数据结构的裁剪 226

14.2.1 与任务有关的数据结构 227

14.2.2 与通信功能有关的数据结构 227

14.2.3 其他参数 227

第15章 设计示例 228

15.1 示例简介 228

15.2 硬件系统 232

15.3 任务分析 232

15.4 程序设计详解 233

15.4.1 智能终端任务 233

15.4.2 监控任务 236

15.4.3 采样任务 239

15.4.4 上传任务 242

15.4.5 数据处理 243

15.5 工程模板的修改 244

15.5.1 端口配置文件的修改 244

15.5.2 中断服务函数(ISR)句柄文件的修改 244

15.5.3 中断服务函数(ISR)原型声明文件的修改 245

15.5.4 操作系统的裁剪 245

15.6 完整的main.c文件 245

后记 266

参考文献 267

相关图书
作者其它书籍
返回顶部