《嵌入式实时多任务软件开发基础》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:晨风编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2004
  • ISBN:7302091889
  • 页数:178 页
图书介绍:本书可以帮助从事嵌入式系统开发工作时间不长的新手入门尽快掌握嵌入式系统开发的基本方法,理解嵌入式软件开发的基本概念,掌握编写稳定,高效的嵌入式系统的基本能力。

第1章嵌入式系统的简介 1

1.1 嵌入式软件开发实例的规格 1

目录 1

1.1.1 自动售茶机功能描述 2

1.1.2自动售茶机配置 3

1.1.3 自动售茶机操作流程 5

1.2嵌入式软件开发和其他软件开发的区别 8

1.3嵌入式软件开发的应用范围 12

1.4嵌入式多任务软件开发常见错误归类及介绍 15

第2章嵌入式系统的架构 18

2.1 嵌入式系统开发实例(自动售茶机)的系统架构 18

2.1.1软件系统 18

2.1.2硬件系统 19

2.1.3微处理器(IBM PowerPC 405EP) 20

2.2.1嵌入式系统的软件 22

2.2嵌入式系统的常见架构 22

2.2.2嵌入式系统的硬件 25

2.3嵌入式微处理器 25

2.3.1 PowerPC系列 25

2.3.2 MIPS系列 26

2.3.3 ARM系列 28

2.3.4DSP简介 31

2.3.5 TI DSP系列 31

2.4嵌入式软件的开发环境简介 33

第3章嵌入式系统的概念详解 37

3.1嵌入式实时操作系统 37

3.1.1 引言 37

3.1.2与通用操作系统的区别 37

3.1.3 VxWorks简介 39

3.1.4 Nucleus嵌入式操作系统简介 42

3.1.5嵌入式Linux简介 44

3.1.6嵌入式操作系统功能 48

3.1.7嵌入式操作系统中重要多任务相关函数介绍 50

3.2系统初始化 53

3.2.1系统初始化的目的 53

3.2.2系统初始化的范例 56

3.2.3 自动售茶机的初始化 57

3.3任务 57

3.3.1什么是任务 57

3.3.2任务与函数的区别及任务的例子 58

3.3.3一个CPU如何同时处理多个任务 59

3.3.4多任务执行顺序优先级裁决 59

3.3.5任务的状态 60

3.4.1什么是中断 64

3.4中断 64

3.3.6任务的划分 64

3.4.2中断向量表 65

3.4.3中断处理过程 65

3.4.4中断优先级 65

3.4.5 中断操作 67

3.4.6中断和任务的区别 69

3.5消息队列 69

3.5.1什么是消息队列 69

3.5.2消息队列的状态 70

3.5.3消息队列的工作方式 71

3.6信号灯 77

3.6.1什么是信号灯 77

3.6.2信号灯的用途 78

3.6.3信号灯的基本操作实例 78

3.6.4其他信号灯类型(VxWorks) 79

3.6.5使用信号灯需要注意的问题 80

3.6.6信号灯的实现 80

3.7高速缓存(cache)介绍 82

3.7.1高速缓存的模式(write-back模式和write-through模式) 83

3.7.2缓存的操作(Flush和Invalidate) 84

第4章嵌入式软件开发的编程风格 85

4.1嵌入式系统编程语言 85

4.2模块和文件的组织 87

4.3 C源文件和H头文件的组织 88

4.4命名规则 91

4.5程序的书写格式 .. 93

4.6可移植性编程 98

5.1.2 自动售茶机系统任务和中断的划分 102

5.1.1嵌入式系统的设计 102

5.1嵌入式多任务系统实例——自动售茶机 102

第5章嵌入式软件实例开发详解 102

5.1.3 自动售茶机系统任务和中断的优先级设定 103

5.1.4 自动售茶机系统任务和中断之间的信息交换设计 103

5.1.5 自动售茶机系统初始化代码 104

5.1.6 自动售茶机系统中断代码 106

5.1.7 自动售茶机系统任务代码 106

5.2任务的优先级设计 109

5.2.1任务优先级设定原则 109

5.2.2如何设计高优先级的任务 113

5.3 多任务之间的同步/互斥 115

5.3.1 信号灯和任务间同步 115

5.3.2消息队列和任务间同步 116

5.3.3信号灯和任务间互斥 116

5.3.4信号灯操作的异常处理 118

5.3.5用消息队列实现任务间互斥 120

5.4多任务间的信息传递 121

5.4.1在中断与任务之间传递消息 121

5.4.2任务与任务之间传递消息 125

5.4.3用信号灯来传递信息 127

5.5中断处理程序设计 129

5.5.1 中断处理程序的时效性 129

5.5.2中断处理程序中调用其他函数的限制 130

5.5.3 中断处理程序中屏蔽/允许同类中断 132

5.6处理速度的提升(任务并行) 133

5.7 多任务环境下全局变量的保护——原子操作 136

5.7.1错误现象 137

5.7.2错误原因 138

5.7.3如何解决原子操作的问题 139

5.8多任务环境下全局变量的保护(volatile) 144

5.9多任务环境下公共库函数的编写 147

5.10出错处理及恢复 152

5.11 设备控制模块 160

5.11.1 引言 160

5.11.2外部设备寄存器的访问 160

5.11.3外部设备的寄存器分类 161

5.11.4 CPU与外部设备之间的通信 162

5.11.5设备的错误处理 163

5.11.6设备控制模块的分层设计 164

5.12实时响应的实现 165

5.12.1实时系统示例 165

5.12.2实时时钟 167

5.12.3实时时钟设备驱动程序的实现示例 167

5.12.4实时应用系统的实现示例 173

参考文献 177