-
内容大纲
本书采用GD32F303ZET6芯片的GD32F3苹果派开发板,重点介绍FreeRTOS操作系统的原理与应用开发。全书共19章,前两章简要介绍了嵌入式操作系统和GD32F3苹果派开发板;第3~19章分别介绍基准工程的创建、简易操作系统的实现,以及FreeRTOS的移植、任务管理、时间管理、消息队列、二值信号量与计数信号量、互斥信号量、事件标志组、任务通知、软件定时器、内存管理、中断管理、CPU利用率、流缓冲区、消息缓冲区和协程。全书程序代码的编写均遵循统一规范,且各章的工程均采用模块化设计,以便于将各模块应用在实际项目和产品中。
本书既可以作为高等院校电子信息、自动化等专业微控制器相关课程的教材,也可以作为微控制器系统设计及相关行业工程技术人员的入门培训用书。 -
作者介绍
-
目录
第1章 嵌入式操作系统简介
1.1 裸机系统与嵌入式操作系统
1.1.1 简单裸机系统
1.1.2 基于定时器计时的裸机系统
1.1.3 嵌入式操作系统
1.2 操作系统的分类
1.2.1 分时操作系统
1.2.2 实时操作系统
1.3 FreeRTOS简介
1.3.1 为什么选择FreeRTOS
1.3.2 FreeRTOS的特点
1.3.3 商业许可
1.3.4 如何获取相关资料
本章任务
本章习题
第2章 GD32F3苹果派开发板简介
2.1 为什么选择GD32
2.2 GD32F3系列微控制器简介
2.3 GD32F3苹果派开发板电路简介
2.4 基于FreeRTOS的应用实例
2.5 本书配套资料包
2.6 GD32微控制器开发工具安装与配置
2.6.1 安装Keil μVision5
2.6.2 设置Keil μVision5
2.6.3 安装CH340驱动
本章任务
本章习题
第3章 基准工程
3.1 GD32F30x系列微控制器的系统架构与存储器映射
3.1.1 系统架构
3.1.2 存储器映射
3.2 GD32工程模块名称及说明
3.3 Keil编辑和编译及程序下载过程
3.3.1 Keil编辑和编译过程
3.3.2 程序下载过程
3.4 相关参考资料
3.5 代码框架
3.6 实例与代码解析
3.6.1 新建存放工程的文件夹
3.6.2 复制并编译原始工程
3.6.3 LED文件对介绍
3.6.4 KeyOne文件对介绍
3.6.5 Delay文件对介绍
3.6.6 RCU文件对介绍
3.6.7 Timer文件对介绍
3.6.8 Main.c文件介绍
3.6.9 程序下载
3.6.10 运行结果
本章任务
本章习题
第4章 简易操作系统
4.1 裸机系统与操作系统的区别
4.2 任务切换基本原理
4.3 CPU工作寄存器和栈区
4.4 中断与异常
4.4.1 Cortex-M3/M4的中断与异常
4.4.2 中断/异常返回
4.4.3 SCV与PendSV异常
4.5 任务的特性
4.5.1 任务优先级
4.5.2 任务状态
4.5.3 不可剥夺内核和可剥夺内核
4.5.4 空闲任务
4.6 实例与代码解析
4.6.1 复制并编译原始工程
4.6.2 添加EasyOS文件对
4.6.3 完善EasyOS.h文件
4.6.4 完善EasyOS.c文件
4.6.5 完善Main.c文件
4.6.6 编译及下载验证
本章任务
本章习题
第5章 FreeRTOS的移植
5.1 FreeRTOS源码的获取
5.2 FreeRTOS源码文件简介
5.3 FreeRTOS配置宏定义简介
5.4 实例与代码解析
5.4.1 复制并编译原始工程
5.4.2 移植
5.4.3 完善Main.c文件
5.4.4 下载验证
本章任务
本章习题
第6章 任务管理
6.1 任务简介
6.1.1 任务函数
6.1.2 任务状态
6.1.3 任务优先级
6.1.4 任务句柄
6.1.5 任务栈
6.1.6 任务管理相关API函数
6.2 任务控制块(TCB)
6.3 列表和列表项
6.4 栈帧初始化
6.5 SVC异常处理
6.6 PendSV异常处理
6.7 实例与代码解析
6.7.1 复制并编译原始工程
6.7.2 编写测试程序
6.7.3 编译及下载验证
本章任务
本章习题
第7章 时间管理
7.1 相对延时
7.2 绝对延时
7.3 时间管理相关API函数
7.4 实例与代码解析
7.4.1 复制并编译原始工程
7.4.2 编写测试程序
7.4.3 编译及下载验证
本章任务
本章习题
第8章 消息队列
8.1 队列与循环队列
8.2 数据存储
8.3 多任务访问
8.4 出队阻塞
8.5 入队阻塞
8.6 消息队列集
8.7 消息队列相关API函数
8.8 消息队列集相关API函数
8.9 实例与代码解析
8.9.1 复制并编译原始工程
8.9.2 编写测试程序
8.9.3 编译及下载验证
本章任务
本章习题
第9章 二值信号量与计数信号量
9.1 中断延迟
9.2 二值信号量
9.3 计数信号量
9.4 相关API函数
9.5 实例与代码解析
9.5.1 复制并编译原始工程
9.5.2 编写测试程序
9.5.3 编译及下载验证
本章任务
本章习题
第10章 互斥信号量
10.1 共享资源与互斥访问
10.1.1 共享资源
10.1.2 通过临界段实现资源管理
10.1.3 通过调度器实现资源管理
10.1.4 通过互斥信号量实现资源管理
10.2 优先级翻转与继承
10.2.1 优先级翻转
10.2.2 优先级继承
10.3 递归互斥信号量
10.4 死锁
10.5 互斥信号量与调度器
10.6 守护任务
10.7 互斥信号量相关API函数
10.8 实例与代码解析
10.8.1 复制并编译原始工程
10.8.2 编写测试程序
10.8.3 编译及下载验证
本章任务
本章习题
第11章 事件标志组
11.1 事件标志组特性
11.2 事件标志组原理
11.3 事件标志组相关API函数
11.4 实例与代码解析
11.4.1 复制并编译原始工程
11.4.2 编写测试程序
11.4.3 编译及下载验证
本章任务
本章习题
第12章 任务通知
12.1 任务通知原理
12.2 任务通知相关API函数
12.3 任务通知的应用
12.4 实例与代码解析
12.4.1 复制并编译原始工程
12.4.2 编写测试程序
12.4.3 编译及下载验证
本章任务
本章习题
第13章 软件定时器
13.1 软件定时器简介
13.1.1 软件定时器的回调函数
13.1.2 软件定时器的模式
13.1.3 软件定时器的状态
13.2 软件定时器服务
13.2.1 软件定时器的命令队列
13.2.2 软件定时器服务调度
13.3 软件定时器ID
13.4 复位软件定时器
13.5 软件定时器相关API函数
13.6 实例与代码解析
13.6.1 复制并编译原始工程
13.6.2 编写测试程序
13.6.3 编译及下载验证
本章任务
本章习题
第14章 内存管理
14.1 内存管理简介
14.2 内存管理的应用场景
14.3 内存碎片
14.4 FreeRTOS内存管理机制
14.5 内存管理相关API函数
14.6 实例与代码解析
14.6.1 复制并编译原始工程
14.6.2 编写测试程序
14.6.3 编译及下载验证
本章任务
本章习题
第15章 中断管理
15.1 中断简介
15.2 中断优先级
15.3 用于屏蔽中断的特殊寄存器
15.4 FreeRTOS中断宏
15.5 中断开关
15.6 临界段代码
15.7 实例与代码解析
15.7.1 复制并编译原始工程
15.7.2 完善Timer.c文件
15.7.3 编写测试程序
15.7.4 编译及下载验证
本章任务
本章习题
第16章 CPU利用率
16.1 CPU利用率简介
16.2 CPU利用率统计
16.3 CPU利用率相关API函数
16.4 实例与代码解析
16.4.1 复制并编译原始工程
16.4.2 完善FreeRTOSConfig.h文件
16.4.3 完善Timer文件对
16.4.4 编写测试程序
16.4.5 编译及下载验证
本章任务
本章习题
第17章 流缓冲区
17.1 流缓冲区简介
17.2 流缓冲区相关API函数
17.3 实例与代码解析
17.3.1 复制并编译原始工程
17.3.2 完善UART0.c文件
17.3.3 编写测试程序
17.3.4 编译及下载验证
本章任务
本章习题
第18章 消息缓冲区
18.1 消息缓冲区简介
18.2 消息缓冲区相关API函数
18.3 实例与代码解析
18.3.1 复制并编译原始工程
18.3.2 编写测试程序
18.3.3 编译及下载验证
本章任务
本章习题
第19章 协程
19.1 协程的基本原理
19.2 FreeRTOS协程
19.2.1 FreeRTOS中协程的状态
19.2.2 FreeRTOS中协程的优先级
19.2.3 FreeRTOS中的协程函数
19.2.4 FreeRTOS中协程的调度
19.2.5 FreeRTOS协程的使用限制
19.3 协程相关API函数
19.4 实例与代码解析
19.4.1 复制并编译原始工程
19.4.2 完善FreeRTOSConfig.h文件
19.4.3 编写测试程序
19.4.4 编译及下载验证
本章任务
本章习题
参考文献
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...