图书介绍

嵌入式实时操作系统Small RTOS51原理及应用2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

嵌入式实时操作系统Small RTOS51原理及应用
  • 陈明计,周立功等编著 著
  • 出版社: 北京:北京航空航天大学出版社
  • ISBN:7810774093
  • 出版时间:2004
  • 标注页数:343页
  • 文件大小:97MB
  • 文件页数:361页
  • 主题词:实时操作系统,Small RToS51

PDF下载


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

下载说明

嵌入式实时操作系统Small RTOS51原理及应用PDF格式电子书版下载

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

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

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

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

图书目录

目录3

第一部分 原理篇3

第0章 绪 论3

第1章Small RTOS51简介9

1.1 Small RTOS51的特点9

1.2 Small RTOS51的运行条件9

1.3 Small RTOS51的存储器需求9

1.4 Small RTOS51的任务堆栈的计算10

1.5关于可重入功能10

1.6关于C51的库函数10

1.7关于51系列单片机派生类型的多数据指针和数学单元10

1.8关于51系列单片机的寄存器段11

1.9关于局部变量11

2.2 实时系统12

2.1嵌入式系统12

第2章基本概念12

2.3前、后台系统13

2.4操作系统13

2.5实时操作系统14

2.6代码的临界区15

2.7 资 源15

2.8共享资源15

2.9任 务15

2.10任务切换15

2.11 内 核16

2.12 调 度16

2.13非占先式内核16

2.14 占先式内核17

2.15可重入性17

2.16任务优先级19

2.18死锁20

2.17 信号量20

2.19 消息队列21

2.20 中 断21

2.21 时钟节拍22

第3章一个简单的例子23

3.1 Small RTOS51的安装及目录结构23

3.2 例子简介23

3.3 Config.h、Os_cfg.h和Os_cpu.h24

3.4与编译器无关的数据类型24

3.5 OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL()25

3.6 main()函数25

3.7建立任务26

3.8 删除任务26

3.9 用户任务26

3.10软非屏蔽中断27

3.12 Os_cpu.h可改变的其他内容28

3.11 中断服务程序的编写28

3.13 Small RTOS51的其他注意事项29

第4章任务管理——核心的核心30

4.1 临界区30

4.2 任 务30

4.3任务状态31

4.4与任务相关的数据结构32

4.5 任务调度36

4.6 Small RTOS51中的中断处理39

4.7 时钟节拍43

4.8 Small RTOS51初始化和启动45

4.9 建立任务46

4.10任务堆栈47

4.11删除任务47

4.12时间服务及任务的挂起和恢复47

4.14OSInt…()函数52

4.13 获取当前Small RTOS51的版本号52

第5章如何切换任务53

5.1 CPU可以执行多个任务的原因53

5.2 CPU怎样运行才能执行多个任务53

5.3何时进行任务切换54

5.4 Small RTOS51任务切换时的程序框图54

5.5 数组OSTsakStackBotton[]和Small RTOS51的堆栈结构55

5.6变量OSFastSwap57

5.7常量数组OSMapTbl[]58

5.8软非屏蔽中断的堆栈SP2[]58

5.9 中断切换函数OSIntCtxSw()58

5.10 任务主动放弃CPU——OS_TASK_SW()60

5.11 堆栈变换函数C_OSCtxSw()62

5.12恢复新任务环境LoadCtx()69

5.14 Small RTOS51初始化函数OSStart()72

5.13优先级最低的任务OSIdle()72

5.15 系统时钟节拍中断OSTickISR()74

第6章任务之间的通信和同步之信号量78

6.1 概 述78

6.2使Keil C51函数具有重入性的特殊方法78

6.3数据结构79

6.4 EN_OS_SEM_CHK宏及相关代码80

6.5初始化一个信号量80

6.6等待一个信号量82

6.7发送一个信号量86

6.8无等待地请求一个信号量89

6.9查询信号量90

第7章 任务之间的通信和同步之消息队列92

7.1 概 述92

7.2数据结构及存储空间的分配92

7.3 消息队列发送消息和取得消息的操作93

7.4 EN_OS_Q_CHK及相关代码95

7.5建立一个消息队列96

7.6等待一个消息队列中的消息98

7.7 向消息队列发送一个消息(FIFO)102

7.8 向消息队列发送一个消息(LIFO)106

7.9 同时发送多个消息111

7.10无等待地从消息队列中取得消息111

7.11 清空一个消息队列113

7.12查询一个消息队列的状态114

第8章Small RTOS51的移植116

8.1 系统相关的宏116

8.2与编译器无关的变量类型117

8.3OSStart()117

8.5 OS_TASK_SW()118

8.6 OSTickISR()118

8.4OSIntCtxSw()118

8.7OSIdle()120

第9章函数参考手册121

9.1 OS_INT_ENTER()函数121

9.2 OSClearSignal()函数121

9.3OSIntExit()函数123

9.4OSIntSendSignal()函数124

9.5 OSQAccept()函数124

9.6 OSQCreate()函数125

9.7 OSQFlush()函数126

9.8 OSQIntPost()函数127

9.9 OSQIntPostFront()函数128

9.10 OSQNMsgs()函数129

9.11 OSQPend()函数129

9.12 OSQPost()函数130

9.13 OSQPostFront()函数131

9.14 OSQSize()函数132

9.16OSSemAccept()函数133

9.15OSRunningTaskID()函数133

9.17OSSemCreate()函数134

9.18OSSemIntPost()函数135

9.19OSSemPend()函数136

9.20OSSemPost()函数136

9.21OSSemQuery()函数137

9.22OSSendSignal()函数138

9.23OSStart()函数138

9.24 OSTimeTick()函数139

9.25OSVersion()函数140

9.26OSWait()函数141

第10章 系统配置手册142

10.1基本配置142

10.2消息队列的配置143

10.4 Small RTOS51的特殊配置144

10.3信号量的配置144

第二部分 应用篇149

第11章DP-51单片机仿真实验仪简介149

11.1 概述149

11.2产品实物149

11.3功能特点150

11.4 主控CPU简介150

11.5 DP-51单片机仿真实验仪的应用领域152

第12章DP-51单片机仿真实验仪硬件结构153

12.1 主要器件153

12.2 电路外观153

12.3应用接口155

12.4 I/O地址分配159

12.5跳线选择器160

13.1 Keil C51简介163

第13章如何为Small RTOS51编写驱动程序163

13.2 Keil C51的特殊性164

13.3判断Keil C51是否可重入的方法165

13.4使用任务编写驱动程序165

13.5使用消息队列编写驱动程序165

13.6使用信号量编写驱动程序165

13.7复合方法166

第14章LED扫描程序的实现167

14.1 LED简介167

14.2 LED数码显示器简介169

14.3 LED驱动程序的实现172

第15章LCD显示驱动的实现177

15.1 点阵字符型LCD-TC1602A简介177

15.2 TC1602A液晶显示器与DP-51单片机仿真实验仪的连接181

15.3驱动程序的使用181

15.4 对TC1602A操作的基本函数183

15.5 初始化TC1602A液晶显示器184

15.6清除指定行185

15.7在指定位置显示字符串186

15.8在指定地址向液晶模块写多个字符188

15.9 驱动程序在DP-51单片机仿真实验仪上使用的例子189

第16章软定时器的实现192

16.1软定时器简介192

16.2软定时器模块的使用192

16.3软定时器的数据结构193

16.4软定时器模块的接口函数193

16.5软定时器模块的管理196

16.6软定时器模块在DP-51运用的例子200

第17章键盘扫描程序的实现203

17.1 键盘简介203

17.4复合键204

17.3连击的处理204

17.2软件去抖动处理204

17.5 串 键205

17.6键盘驱动的实现205

17.7键盘驱动在DP-51上运用的例子211

第18章 串行通信程序的实现216

18.1概述216

18.2 串行通信硬件电路216

18.3通信协议217

18.4本例使用的串行通信协议217

18.5本例执行的效果217

18.6 串行通信驱动程序的发送部分217

18.7 串行通信驱动程序的接收部分220

18.8例子中其他未介绍部分代码222

19.2位传输224

19.1 标准模式I2C总线规范简介224

第19章I2C总线驱动程序的实现224

19.3数据传输225

19.4仲裁与时钟发生226

19.5传输协议226

19.6 I2C总线驱动程序的实现228

第20章 串行E2PROM芯片Cat24WCxx驱动程序的实现238

20.1 概述238

20.2引脚描述238

20.3 串行E2PROM芯片的寻址239

20.4写操作方式241

20.5读操作方式242

20.6 Cat24WC02在DP-51 中的连接244

20.7 Cat24WCxx驱动程序的使用244

20.8 Cat24WCxx的写操作245

20.9 Cat24W(xx的读操作246

20.10 DP-51上对Cat24WC02读/写操作的例子247

第21章 实时时钟芯片PCF8563驱动程序的实现250

21.1 实时时钟PCF8563简介250

21.2 PCF8563的基本原理251

21.3 PCF8563在DP-51中的连接257

21.4 PCF8563驱动程序的使用257

21.5 PCF8563的写操作258

21.6 PCF8563的读操作259

21.7 DP-51上对PCF8563读/写操作的例子259

第22章CAN总线驱动程序的实现262

22.1 CAN简介262

22.2 CAN控制器SJA1000简介262

22.3 SJA1000的硬件连接264

22.4对SJA1000的软件控制265

22.5 SJA1000的BasicCAN方式265

22.6寄存器位功能介绍268

22.7 SJA1000的编程流程278

22.8驱动程序的使用279

22.9对SJA1000操作的基本函数281

22.10用户可修改、可调整的应用层函数290

22.11 CAN 通信在DP-51上运用的例子295

第23章PDIUSBD12 USB驱动程序的实现299

23.1 简介299

23.2 USB设备的枚举过程299

23.3 USB标准设备请求300

23.4程序实现方法303

第24章 完整的程序——闹钟的实现314

24.1简介314

24.2关键代码314

附录A使用许可证341

附录B本书配套光盘说明342

参考文献343

热门推荐