![]()
内容推荐 本书重点讨论了FreeRTOS的堆内存管理、任务管理、队列管理、软件定时器管理、中断管理、资源管理、事件组和任务通知等实时操作系统必须具备的功能和特性,总结了软件开发过程中的故障排除和效率提升的方法。本书结构清晰,讲解循序渐进,例程丰富。为便于读者直观理解,对任务的抢占式调度、同步等抽象概念,本书采用时序图来分析程序的执行顺序。本书介绍的知识和程序设计思路与其他实时操作系统是相通的,读者在此基础上可以实现触类旁通。 本书既可以作为工程技术人员,高等院校电子类、电气类、控制类等专业本科生、研究生学习FreeRTOS的教材,也可以作为学习其他实时操作系统的参考用书。 目录 第1章 FreeRTOS发行版 1.1 本章知识点及学习目标 1.2 了解FreeRTOS发行版 1.3 演示程序 1.4 创建FreeRTOS工程 1.5 数据类型和编码风格指南 第2章 堆内存管理 2.1 本章知识点及学习目标 2.2 内存分配方案示例 2.3 与堆相关的实用函数 第3章 任务管理 3.1 本章知识点及学习目标 3.2 任务函数 3.3 顶层任务状态 3.4 创建任务 3.5 任务优先级 3.6 时间测量和滴答中断 3.7 扩展“非运行”状态 3.8 空闲任务和空闲任务钩子 3.9 更改任务的优先级 3.10 删除任务 3.11 线程本地存储 3.12 调度算法 第4章 队列管理 4.1 本章知识点及学习目标 4.2 队列的特点 4.3 使用队列 4.4 从多个来源接收数据 4.5 处理大数据或可变大小的数据 4.6 从多队列接收 4.7 使用队列创建邮箱 第5章 软件定时器管理 5.1 本章知识点及学习目标 5.2 软件定时器回调函数 5.3 软件定时器的属性和状态 5.4 软件定时器的上下文 5.5 创建和启动软件定时器 5.6 定时器ID 5.7 更改定时器的周期 5.8 重置软件定时器 第6章 中断管理 6.1 本章知识点及学习目标 6.2 在ISR中使用FreeRTOSAPI 6.3 推迟中断处理 6.4 用于同步的二进制信号量 6.5 计数信号量 6.6 推迟工作到RTOS守护任务 6.7 在中断服务程序中使用队列 6.8 中断嵌套 第7章 资源管理 7.1 本章知识点及学习目标 7.2 临界区和暂停调度器 7.3 互斥量(和二进制信号量) 7.4 守门人任务 第8章 事件组 8.1 本章知识点及学习目标 8.2 事件组的特征 8.3 使用事件组进行事件管理 8.4 使用事件组进行任务同步 第9章 任务通知 9.1 本章知识点及学习目标 9.2 任务通知:优势和局限 9.3 使用任务通知 第10章 低功耗支持 10.1 本章知识点及学习目标 10.2 节能及与节能有关的宏 10.3 ARMCortex-M微控制器的低功耗实现 第11章 开发者支持 11.1 本章知识点及学习目标 11.2 configASSERT() 11.3 FreeRTOS+Trace 11.4 与调试相关的钩子(回调)函数 11.5 查看运行时信息和任务状态信息 11.6 跟踪钩子宏 第12章 故障排除 12.1 本章知识点及学习目标 12.2 中断优先级 12.3 栈溢出 12.4 函数printf()和sprintf()的不当使用 12.5 错误的其他常见来源 附录A FreeRTOS的新版本和新特性 A.1 FreeRTOS版本9 A.2 FreeRTOS版本10 |