搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
FreeRTOS源码详解与应用开发--基于STM32(第2版)/正点原子教你学嵌入式系统丛书
0.00     定价 ¥ 89.00
图书来源: 浙江图书馆(由浙江新华配书)
此书还可采购25本,持证读者免费借回家
  • 配送范围:
    浙江省内
  • ISBN:
    9787512441002
  • 作      者:
    编者:许颖劲//左忠凯//刘军|责编:董立娟
  • 出 版 社 :
    北京航空航天大学出版社
  • 出版日期:
    2023-09-01
收藏
编辑推荐

本书非常适合于应用型本科生的教学,此外,对于嵌入式操作系统入门工程师来说,这本书也能满足他们的需要。


展开
内容介绍
本书辅以大量的例程,全面讲解了FreeRTOS的原理以及源码,主要内容包括任务管理和任务调度、系统裁减和配置、时间管理、队列、信号量、软件定时器、事件标志组、任务通知、低功耗Tickless模式、空闲任务以及内存管理等。同时,本书配有大量的图例,对于想要深入学习RTOS类系统原理的人来说是一个不错的选择。本书是再版书,相比旧版,使用了更新的FreeRTOS内核版本作为解析对象,并针对FreeRTOS在多种ARM Cortex-M架构下的运行进行了介绍;同时,本书对知识点的介绍更加详细、讲解的先后顺序更加合理。 本书配套资料包括视频教程、文档教程、各个例程的源码及相关参考资料,所有资料均可在开源电子网免费下载(网址为www.openedv.com)。 本书适合那些想要学习FreeRTOS的初学者,也可作为高等院校计算机、电子技术、自动化、嵌入式等相关专业的教材。
展开
目录

第1章 FreeRTOS简介  1

1.1 初识FreeRTOS  1

1.1.1 什么是FreeRTOS  1

1.1.2 为什么选择FreeRTOS  2

1.1.3 FreeRTOS的特点  2

1.1.4 商业许可  2

1.2 磨刀不误砍柴工  3

1.2.1 查找资料  3

1.2.2 FreeRTOS官方文档  5

1.2.3 Cortex M 架构资料  7

1.3 FreeRTOS源码初探  7

1.3.1 FreeRTOS源码下载  7

1.3.2 FreeRTOS文件预览  9

第2章 FreeRTOS移植  11

2.1 FreeRTOS移植 11

2.1.1 移植前准备 11

2.1.2 添加FreeRTOS文件  12

2.1.3 修改SYSTEM 文件  15

2.1.4 修改中断相关文件 22

2.1.5 可选步骤(建议完成) 24

2.1.6 添加应用程序 25

2.1.7 使用AC6编译工程(扩展) 32

2.2 FreeRTOS移植实验 33

2.2.1 功能设计 33

2.2.2 软件设计 34

2.2.3 下载验证 35

第3章 FreeRTOS系统配置  37

3.1 FreeRTOSConfig.h文件  37

3.2 config配置项 37

3.2.1 基础配置项 矯p扷CRS翪38

3.2.2 内存分配相关定义 40

3.2.3 钩子函数相关定义 41

3.2.4 运行时间和任务状态统计相关定义 42

3.2.5 协程相关定义 43

3.2.6 软件定时器相关定义 43

3.2.7 中断嵌套行为配置 43

3.2.8 断 言 44

3.2.9 FreeRTOS MPU特殊定义  44

3.3 INCLUDE配置项  45

3.4 其他配置项 46

第4章 FreeRTOS中断管理  47

4.1 ARM Cortex M 中断  47

4.1.1 简 介 47

4.1.2 中断优先级管理 47

4.1.3 3个系统中断优先级配置寄存器  49

4.1.4 3个中断屏蔽寄存器  50

4.1.5 中断控制状态寄存器 52

4.2 FreeRTOS中断配置项 52

4.3 FreeRTOS中断管理详解 54

4.3.1 PendSV和SysTick中断优先级  54

4.3.2 FreeRTOS开关中断 55

4.3.3 FreeRTOS进出临界区 56

4.4 FreeRTOS中断测试实验 59

4.4.1 功能设计 59

4.4.2 软件设计 59

4.4.3 下载验证 62

第5章 FreeRTOS任务基础知识  63

5.1 单任务和多任务系统 63

5.1.1 单任务系统 63

5.1.2 多任务系统 64

5.2 FreeRTOS任_____羅_务状态 65

5.3 FreeRTOS任务优先级 66

5.4 FreeRTOS任务调度方式 67

5.5 FreeRTOS任务控制块 68

5.6 FreeRTOS任务栈 69

第6章 FreeRTOS任务相关API函数  71

6.1 FreeRTOS创建和删除任务相关 API函数  71

6.2 FreeRTOS任务创建与删除实验(动态方法) 75

6.2.1 功能设计 75

6.2.2 软件设计 75

6.2.3 下载验证 78

6.3 FreeRTOS任务创建与删除实验(静态方法) 79

6.3.1 功能设计 79

6.3.2 软件设计 79

6.3.3 下载验证 83

6.4 FreeRTOS挂起和恢复任务相关 API函数  84

6.5 FreeRTOS任务挂起与恢复实验 85

6.5.1 功能设计 85

6.5.2 软件设计 86

6.5.3 下载验证 89

第7章 FreeRTOS列表和列表项  90

7.1 FreeRTOS列表和列表项简介 90

7.1.1 列 表 90

7.1.2 列表项 91

7.1.3 迷你列表项 92

7.2 FreeRTOS列表和列表项相关 API函数  92

7.3 FreeRTOS操作列表和列表项的宏 98

7.4 FreeRTOS列表项的插入与删除实验 99

7.4.1 功能设计 99

7.4.2 软件设计 99

7.4.3 下载验证  102

第8章 FreeRTOS系统启动流程及任务相关函数解析  107

8.1 FreeRTOS开启任务调度器  107

8.1.1 函数vTaskStartScheduler() 107

8.1.2 函数xPortStartScheduler() 110

8.2 FreeRTOS启动第一个任务  112

8.2.1 函数prvStartFirstTask() 112

8.2.2 函数vPortSVCHandler() 113

8.3 FreeRTOS任务状态列表  115

8.4 FreeRTOS创建任务函数解析  116

8.5 FreeRTOS删除任务函数解析  127

FreeRTOS源码详解与应用开发———基于STM32(第2版)

•4 •

8.6 FreeRTOS挂起任务函数解析  130

8.7 FreeRTOS恢复任务函数解析  134

8.8 FreeRTOS空闲任务  135

第9章 FreeRTOS任务切换  137

9.1 PendSV异常  137

9.2 PendSV中断服务函数  139

9.3 FreeRTOS确定下一个要运行的任务  143

9.4 PendSV异常何时触发  145

9.5 FreeRTOS时间片调度实验  146

9.5.1 功能设计  146

9.5.2 软件设计  147

9.5.3 下载验证  149

第10章 FreeRTOS内核控制函数  150

10.1 FreeRTOS内核控制函数预览 150

10.2 FreeRTOS内核控制函数详解 151

第11章 FreeRTOS其他任务API函数  156

11.1 FreeRTOS任务相关API函数  156

11.1.1 FreeRTOS任务相关API函数预览  156

11.1.2 FreeRTOS任务相关API函数详解  157

11.2 FreeRTOS任务状态与信息查询实验 166

11.2.1 功能设计 166

11.2.2 软件设计 166

11.2.3 下载验证 170

11.3 FreeRTOS任务运行时间统计实验 172

11.3.1 功能设计 172

11.3.2 软件设计 172

11.3.3 下载验证 176

第12章 FreeRTOS时间管理  178

12.1 FreeRTOS系统时钟节拍 178

12.1.1 FreeRTOS系统时钟节拍简介 178

12.1.2 FreeRTOS系统时钟节拍来源 178

12.1.3 FreeRTOS系统时钟节拍处理 180

12.2 FreeRTOS任务延时函数 185

第13章 FreeRTOS队列  193

13.1 FreeRTOS队列简介 193

13.2 FreeRTOS队列相关API函数  196

13.2.1 队列结构体 196

13.2.2 创建队列 197

13.2.3 队列写入消息 205

13.2.4 队列读取消息 215

13.2.5 队列锁 217

13.3 FreeRTOS队列操作实验 220

13.3.1 功能设计 220

13.3.2 软件设计 220

13.3.3 下载验证 223

13.4 FreeRTOS队列集 223

13.5 FreeRTOS队列集相关API函数  224

13.6 FreeRTOS队列集操作实验 228

13.6.1 功能设计 228

13.6.2 软件设计 229

13.6.3 下载验证 232

13.7 FreeRTOS队列集模拟事件标志位实验 234

13.7.1 功能设计 234

13.7.2 软件设计 234

13.7.3 下载验证 237

第14章 FreeRTOS信号量  239

14.1 FreeRTOS信号量简介 239

14.2 FreeRTOS二值信号量 240

14.2.1 FreeRTOS二值信号量简介 240

14.2.2 FreeRTOS二值信号量相关 API函数  240

14.3 FreeRTOS二值信号量操作实验 249

14.3.1 功能设计 249

14.3.2 软件设计 249

14.3.3 下载验证 252

14.4 FreeRTOS计数型信号量 253

14.4.1 FreeRTOS计数型信号量简介 253

14.4.2 FreeRTOS计数型信号量相关API函数  253

14.5 FreeRTOS计数型信号量操作实验 255

14.5.1 功能设计 255

14.5.2 软件设计 255

14.5.3 下载验证 258

14.6 优先级翻转 258

14.7 优先级翻转实验 260

14.7.1 功能设计 260

14.7.2 软件设计 260

14.7.3 下载验证 263

14.8 FreeRTOS互斥信号量 264

14.8.1 FreeRTOS互斥信号量简介 264

14.8.2 FreeRTOS互斥信号量相关 API函数  264

14.9 FreeRTOS互斥信号量操作实验 266

14.9.1 功能设计 266

14.9.2 软件设计 267

14.9.3 下载验证 269

14.10 FreeRTOS递归互斥信号量  270

14.10.1 FreeRTOS递归互斥信号量简介  270

14.10.2 FreeRTOS递归互斥信号量相关API函数  271

14.10.3 FreeRTOS递归互斥信号量的使用示例  273

第15章 FreeRTOS软件定时器  275

15.1 FreeRTOS软件定时器简介 275

15.1.1 FreeRTOS软件定时器服务任务简介 276

15.1.2 软件定时器命令队列 276

15.1.3 软件定时器的状态 276

15.1.4 单次定时器和周期定时器 277

15.1.5 软件定时器的状态转换图 278

15.1.6 复位软件定时器 278

15.2 FreeRTOS软件定时器相关配置 279

15.3 FreeRTOS软件定时器相关API函数  279

15.4 FreeRTOS软件定时器实验 286

15.4.1 功能设计 286

15.4.2 软件设计 286

15.4.3 下载验证 289

第16章 FreeRTOS事件标志组  291

16.1 FreeRTOS事件标志组简介 291

16.2 FreeRTOS事件标志组相关API函数  292

16.3 FreeRTOS事件标志组实验 298

16.3.1 功能设计 298

16.3.2 软件设计 298

16.3.3 下载验证 301

第17章 FreeRTOS任务通知  303

17.1 FreeRTOS任务通知简介 303

17.1.1 任务通知的优势 304

17.1.2 任务通知的缺点 304

17.2 FreeRTOS任务通知相关API函数  305

17.3 FreeRTOS任务通知模拟二值信号量实验 321

17.3.1 功能设计 321

17.3.2 软件设计 321

17.3.3 下载验证 324

17.4 FreeRTOS任务通知模拟计数型信号量实验 324

17.4.1 功能设计 324

17.4.2 软件设计 324

17.4.3 下载验证 327

17.5 FreeRTOS任务通知模拟消息邮箱实验 328

17.5.1 功能设计 328

17.5.2 软件设计 328

17.5.3 下载验证 331

17.6 FreeRTOS任务通知模拟事件标志组实验 332

17.6.1 功能设计 332

17.6.2 软件设计 332

17.6.3 下载验证 335

第18章 FreeRTOS低功耗Tickless模式  337

18.1 FreeRTOS低功耗Tickless模式简介 337

18.1.1 空闲任务中的低功耗Tickless处理  337

18.1.2 函数portSUPPRESS_TICKS_AND_SLEEP() 339

18.2 FreeRTOS低功耗Tickless模式相关配置项 340

18.3 FreeRTOS低功耗Tickless实验 340

18.3.1 功能设计 340

18.3.2 软件设计 341

18.3.3 下载验证 344

第19章 FreeRTOS空闲任务  345

19.1 FreeRTOS空闲任务详解 345

19.1.1 FreeRTOS空闲任务简介 345

19.1.2 FreeRTOS空闲任务的创建 345

19.1.3 FreeRTOS空闲任务的任务函数 346

19.2 FreeRTOS空闲任务钩子函数 347

19.2.1 FreeRTOS中的钩子函数 347

19.2.2 FreeRTOS空闲任务钩子函数 347

19.3 FreeRTOS空闲任务钩子函数实验 348

19.3.1 功能设计 348

19.3.2 软件设计 348

19.3.3 下载验证 350

第20章 FreeRTOS内存管理  352

20.1 FreeRTOS内存管理简介 352

20.2 FreeRTOS内存管理算法 353

20.2.1 heap_1内存管理算法  353

20.2.2 heap_2内存管理算法  356

20.2.3 heap_3内存管理算法  363

20.2.4 heap_4内存管理算法  364

20.2.5 heap_5内存管理算法  374

20.3 FreeRTOS内存管理实验 378

20.3.1 功能设计 378

20.3.2 软件设计 378

20.3.3 下载验证 381


展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证