图书介绍

安徽省“十一五”规划教材 嵌入式实时操作系统μC/OS-Ⅱ教程PDF|Epub|txt|kindle电子书版本网盘下载

安徽省“十一五”规划教材 嵌入式实时操作系统μC/OS-Ⅱ教程
  • 吴永忠,程文娟,郑淑丽,徐海卫编著 著
  • 出版社: 西安:西安电子科技大学出版社
  • ISBN:9787560620053
  • 出版时间:2007
  • 标注页数:283页
  • 文件大小:14MB
  • 文件页数:292页
  • 主题词:实时操作系统-高等学校-教材

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

安徽省“十一五”规划教材 嵌入式实时操作系统μC/OS-Ⅱ教程PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 嵌入式系统导论1

1.1 嵌入式系统概述1

1.1.1 嵌入式系统的发展概况1

1.1.2 嵌入式系统的定义3

1.1.3 嵌入式系统的特点4

1.2 嵌入式系统的组成结构5

1.2.1 硬件层5

1.2.2 软件结构8

1.2.3 硬件抽象层9

1.3 嵌入式系统的基本设计方法10

1.3.1 总体设计10

1.3.2 软/硬件详细设计13

1.3.3 系统集成13

1.3.4 系统测试13

1.4 嵌入式操作系统概述13

1.4.1 嵌入式操作系统的发展历程13

1.4.2 嵌入式实时操作系统的定义14

1.4.3 评价嵌入式操作系统的几个重要指标16

1.4.4 嵌入式实时操作系统的特点17

1.4.5 嵌入式操作系统的分类19

1.4.6 通用操作系统与嵌入式操作系统的区别19

1.5 μC/OS-Ⅱ操作系统概述21

1.5.1 μC/OS-Ⅱ的特点21

1.5.2 μC/OS-Ⅱ内核文件组成22

1.5.3 如何学好μC/OS-Ⅱ23

1.5.4 实例23

习题25

第2章 嵌入式操作系统中的基本概念26

2.1 前后台系统26

2.2 调度27

2.3 临界区27

2.4 进程与线程27

2.4.1 进程的概念27

2.4.2 线程的概念28

2.5 任务与多任务28

2.6 任务切换29

2.7 死锁30

2.8 不可剥夺型内核30

2.9 可剥夺型内核31

2.10 可重入性32

2.11 优先级反转33

2.12 事件35

2.12.1 信号量35

2.12.2 消息邮箱36

2.12.3 消息队列36

2.12.4 事件标志组37

2.13 互斥38

2.13.1 禁止中断38

2.13.2 禁止抢占39

2.13.3 信号量39

2.13.4 测试并置位40

2.14 同步40

2.15 通信41

2.16 对存储器的要求41

2.16.1 代码存储器的需求41

2.16.2 数据存储器的需求41

习题42

第3章 任务管理43

3.1 核心函数43

3.1.1 临界区的处理43

3.1.2 任务的形式44

3.1.3 任务的状态46

3.1.4 任务控制块46

3.1.5 就绪表49

3.1.6 任务的调度52

3.1.7 任务级的任务切换53

3.1.8 调度器上锁和开锁56

3.1.9 空闲任务57

3.1.10 统计任务58

3.1.11 μC/OS-Ⅱ的初始化60

3.1.12 μC/OS-Ⅱ的启动62

3.2 任务管理函数64

3.2.1 任务栈65

3.2.2 建立任务——OSTaskCreate()67

3.2.3 建立任务——OSTaskCreateExt()70

3.2.4 优先级变更——OSTaskChangePrio()73

3.2.5 删除任务——OSTaskDel()76

3.2.6 请求删除任务——OSTaskDelReq()79

3.2.7 堆栈检验——OSTaskStkChk()81

3.2.8 任务挂起——OSTaskSuspend()85

3.2.9 任务恢复——OSTaskResume()87

3.2.10 任务信息的获取——OSTaskQuery()89

3.3 部分其它系统服务功能91

习题91

第4章 中断处理与时间管理92

4.1 中断处理的基本概念92

4.1.1 中断92

4.1.2 中断延迟92

4.1.3 中断响应93

4.1.4 中断恢复时间93

4.1.5 中断延迟、响应和恢复时间的比较94

4.1.6 非屏蔽中断94

4.2 μC/OS-Ⅱ的中断处理95

4.2.1 中断处理程序95

4.2.2 中断处理过程97

4.3 μC/OS-Ⅱ的时钟节拍98

4.3.1 时钟节拍98

4.3.2 时钟节拍程序101

4.3.3 时钟节拍器的正确用法102

4.4 μC/OS-Ⅱ的时间管理103

4.4.1 任务延时函数——OSTimeDly()103

4.4.2 按时、分、秒、毫秒延时函数——OSTimeDlyHMSM()105

4.4.3 让处在延时期的任务结束延时函数——OSTimeDlyResume()107

4.4.4 系统时间函数——OSTimeGet()和OSTimeSet()108

习题109

第5章 事件控制块110

5.1 基本概念110

5.2 将任务置于等待事件的任务列表中112

5.3 从等待事件的任务列表中使任务脱离等待状态113

5.4 在等待事件的任务列表中查找优先级最高的任务113

5.5 空余事件控制块链表115

5.5.1 基本概念115

5.5.2 对事件控制块的基本操作115

5.6 初始化事件控制块——OSEventWaitListInit()116

5.6.1 函数原型116

5.6.2 源代码116

5.7 使任务进入就绪态——OSEventTaskRdy()117

5.7.1 函数原型117

5.7.2 实现算法117

5.7.3 源代码118

5.8 使任务进入等待某事件发生状态——OSEventTaskWait()119

5.8.1 函数原型119

5.8.2 算法及源代码119

5.9 由于等待超时而将任务置为就绪态——OSEventTO()119

5.9.1 函数原型119

5.9.2 源代码120

习题120

第6章 消息121

6.1 消息邮箱管理121

6.1.1 概述121

6.1.2 建立消息邮箱——OSMboxCreate()123

6.1.3 删除消息邮箱——OSMboxDel()125

6.1.4 等待消息邮箱中的消息——OSMboxPend()127

6.1.5 发送消息到消息邮箱中——OSMboxPost()130

6.1.6 发送消息到消息邮箱中——OSMboxPostOpt()133

6.1.7 无等待地从消息邮箱中得到消息——OSMboxAccept()135

6.1.8 查询消息邮箱的状态——OSMboxQuery()137

6.2 消息队列管理139

6.2.1 概述139

6.2.2 实现消息队列所需要的各种数据结构141

6.2.3 建立消息队列——OSQCreate()143

6.2.4 删除消息队列——OSQDel()145

6.2.5 等待消息队列中的消息——OSQPend()148

6.2.6 向消息队列发送(FIFO)消息——OSQPost()151

6.2.7 向消息队列发送(LIFO)消息——OSQPostFront()153

6.2.8 以可选方式(FIFO或LIFO)向消息队列发送消息——OSQPostOpt()155

6.2.9 无等待地从消息队列中取得消息——OSQAccept()158

6.2.10 清空消息队列——OSQFlush()159

6.2.11 查询消息队列的状态——OSQQuery()160

习题162

第7章 信号量与互斥信号量163

7.1 信号量163

7.1.1 概述163

7.1.2 建立信号量——OSSemCreate()165

7.1.3 删除信号量——OSSemDel()167

7.1.4 等待信号量——OSSemPend()169

7.1.5 发送信号量——OSSemPost()171

7.1.6 无等待地请求信号量——OSSemAccept()173

7.1.7 查询信号量的当前状态——OSSemQuery()174

7.2 互斥信号量177

7.2.1 概述177

7.2.2 建立互斥信号量——OSMutexCreate()178

7.2.3 删除互斥信号量——OSMutexDel()181

7.2.4 等待互斥信号量——OSMutexPend()183

7.2.5 释放互斥信号量——OSMutexPost()186

7.2.6 无等待地获取互斥信号量——OSMutexAccept()190

7.2.7 获取当前互斥信号量的状态——OSMutexQuery()192

习题194

第8章 事件标志组195

8.1 概述195

8.1.1 事件标志组的组成及管理函数195

8.1.2 事件标志组管理函数的配置常量195

8.1.3 实现事件标志组所需要的数据结构196

8.2 建立事件标志组——OSFlagCreate()197

8.2.1 函数原型197

8.2.2 返回值198

8.2.3 源代码198

8.3 等待事件标志组中的事件标志位——OSFlagPend()199

8.3.1 函数原型199

8.3.2 返回值199

8.3.3 源代码199

8.4 置位或者清零事件标志组中的事件标志——OSFlagPost()203

8.4.1 函数原型203

8.4.2 返回值204

8.4.3 源代码204

8.4.4 范例206

8.5 删除事件标志组——OSFlagDel()207

8.5.1 函数原型207

8.5.2 返回值208

8.5.3 源代码208

8.5.4 范例210

8.6 无等待地获得事件标志组中的事件标志——OSFlagAccept()210

8.6.1 函数原型210

8.6.2 源代码211

8.7 查询事件标志组的状态——OSFlagQuery()213

8.7.1 函数原型213

8.7.2 返回值213

8.7.3 源代码213

8.7.4 范例214

习题214

第9章 内存管理215

9.1 概述215

9.1.1 基本原理215

9.1.2 内存管理函数216

9.1.3 内存管理函数的配置常量216

9.1.4 内存控制块216

9.2 建立内存分区——OSMemCreate()217

9.2.1 函数原型217

9.2.2 源代码218

9.2.3 范例220

9.3 分配内存块——OSMemGet()220

9.3.1 函数原型220

9.3.2 注意事项221

9.3.3 源代码221

9.3.4 范例222

9.4 释放内存块——OSMemPut()222

9.4.1 函数原型222

9.4.2 返回值222

9.4.3 注意事项223

9.4.4 源代码223

9.4.5 范例224

9.5 查询内存分区的状态——OSMemQuery()224

9.5.1 函数原型224

9.5.2 返回值225

9.5.3 源代码225

9.5.4 范例226

习题226

第10章 μC/OS-Ⅱ的移植与应用227

10.1 移植的基本方法227

10.1.1 移植的概念与一般要求227

10.1.2 OS_CPU.H代码的移植229

10.1.3 OS_CPU_C.C代码的移植231

10.1.4 OS_CPU_A.ASM代码的移植234

10.1.5 移植代码的测试236

10.2 基于MCS-51单片机的移植实例237

10.2.1 OS_CPU.H代码的移植237

10.2.2 OS_CPU_C.C代码的移植238

10.2.3 OS_CPU_A.ASM代码的移植238

10.3 基于ARM处理器的移植实例245

10.3.1 移植规划245

10.3.2 OS_CPU.H代码的移植245

10.3.3 OS_CPU_C.C代码的移植246

10.3.4 OS_CPU_A.ASM代码的移植248

10.4 基于MCS-51单片机的应用实例261

10.4.1 设计目标261

10.4.2 总体设计261

10.4.3 程序详细设计263

10.5 基于ARM处理器的应用实例272

习题276

第11章 μC/OS-Ⅱ几个版本的区别277

11.1 μC/OS-Ⅱ V2.52与V2.62的区别277

11.2 μC/OS-Ⅱ V2.62与V2.76的区别278

11.3 μC/OS-Ⅱ V2.76与V2.83的区别279

附录 函数与配置常量一览表280

参考文献283

热门推荐