本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
书名:STM32Cube高效开发教程 高篇
定价:129.90
出版社:人民邮电出版色
出版时间:2022年02月
作者:王维波,鄢志丹,王钊 著
ISBN编码:9787115552518
本书介绍 STM32 开发的*些*级内容。**分详细介绍嵌入式作系统 FreeRTOS 的使用;二*分介绍使用 FatFS 管理 SPI-Flash 芯片、SD 卡和 U 盘上的文件系统;三*分介绍 BMP 和 JPG 图片的获取与显示,触摸屏的使用,DCMI 接口和数字摄像头等。*书使用 STM32CubeMX 和 STM32CubeIDE软件开发例程,讲解 FreeRTOS、FatFS、LibJPEG、USB_Host、USB_Device 等中间件以及 SDIO、USB-OTG、 DCMI 等外设的原理和使用方法,并针对*个 STM32F407 开发板编写了完整示例项目。通过阅读本书,读者可以掌握 STM32 开发中的嵌入式作系统、文件系统、触摸屏等*级软硬件的开发方法。 本书适合已经掌握 STM32CubeMX 和 STM32CubeIDE 软件的使用以及 STM32 常用外设的 STM32Cube开发等相关基础内容的读者阅读,可以作为*等院校电子、自动化、计算机类*业的教学用书,也可作为STM32 嵌入式系统开发的参考书。
**分 嵌入式作系统FreeRTOS
*章 FreeRTOS基础 2
*.* FreeRTOS概述 2
*.*.* FreeRTOS的发展历史 2
*.*.2 FreeRTOS的*点和许可方式 2
*.*.3 FreeRTOS的*些概念和术语 3
*.*.4 为什么要使用RTOS 4
*.2 FreeRTOS入门示例 4
*.2.* CubeMX项目配置 5
*.2.2 含FreeRTOS的项目的文件组成 8
*.2.3 程序分析和功能实现 9
*.3 FreeRTOS的文件组成和基本原理 *5
*.3.* FreeRTOS的文件组成 *5
*.3.2 FreeRTOS的编码规则 20
*.3.3 FreeRTOS的配置和功能裁剪 2*
2章 FreeRTOS的任务管理 29
2.* 任务相关的*些概念 29
2.*.* 多任务运行基本机制 29
2.*.2 任务的状态 30
2.*.3 任务的*先级 3*
2.*.4 空闲任务 32
2.*.5 基础时钟与嘀嗒信号 32
2.2 FreeRTOS的任务调度 32
2.2.* 任务调度方法概述 32
2.2.2 使用时间片的*占式调度方法 33
2.2.3 *使用时间片的*占式调度方法 34
2.2.4 合作式任务调度方法 35
2.3 任务管理相关函数 36
2.3.* 相关函数概述 36
2.3.2 主要函数功能说明 38
2.4 多任务编程示例* 40
2.4.* 示例功能与CubeMX项目设置 40
2.4.2 初始程序分析 42
2.4.3 编写用户功能代码 44
2.5 任务管理工具函数 49
2.5.* 相关函数概述 49
2.5.2 获取任务句柄 50
2.5.3 单个任务的作 5*
2.5.4 内核信息统计 53
2.6 多任务编程示例二 55
2.6.* 示例功能与CubeMX项目设置 55
2.6.2 程序功能实现 56
3章 FreeRTOS的中断管理 62
3.* FreeRTOS与中断 62
3.2 任务与中断服务例程 64
3.2.* 任务与中断服务例程的关系 64
3.2.2 中断屏蔽和临界代码段 65
3.2.3 在ISR中使用FreeRTOS API函数 66
3.2.4 中断及其ISR设计原则 67
3.3 任务和中断程序设计示例 67
3.3.* 示例功能和CubeMX项目设置 67
3.3.2 基本功能代码 69
3.3.3 各种*性的测试 7*
4章 进程间通信与消息队列 74
4.* 进程间通信 74
4.2 队列的*点和基本作 75
4.2.* 队列的*建和存储 75
4.2.2 向队列写入数据 76
4.2.3 从队列读取数据 77
4.2.4 队列作相关函数 78
4.3 队列使用示例 79
4.3.* 示例功能和CubeMX项目设置 79
4.3.2 初始代码分析 80
4.3.3 实现用户功能 82
5章 信号量 86
5.* 信号量和互斥量概述 86
5.*.* 二值信号量 86
5.*.2 计数信号量 87
5.*.3 互斥量 87
5.*.4 递归互斥量 88
5.*.5 相关函数概述 88
5.2 二值信号量使用示例 90
5.2.* 二值信号量作相关函数详解 90
5.2.2 示例功能和CubeMX项目设置 92
5.2.3 程序功能实现 94
5.3 计数信号量使用示例 98
5.3.* 计数信号量作相关函数详解 98
5.3.2 示例功能和CubeMX项目设置 99
5.3.3 程序功能实现 *00
6章 互斥量 *04
6.* *先级翻转问题 *04
6.2 互斥量的工作原理 *05
6.2.* *先级继承 *05
6.2.2 互斥量相关函数详解 *05
6.3 *先级翻转示例 *06
6.3.* 示例功能和CubeMX项目设置 *06
6.3.2 程序功能实现 *07
6.4 互斥量使用示例 ***
6.4.* 示例功能和CubeMX项目设置 ***
6.4.2 程序功能实现 ***
7章 事件组 **5
7.* 事件组的原理和功能 **5
7.*.* 事件组的功能*点 **5
7.*.2 事件组的工作原理 **5
7.2 事件组相关函数 **6
7.2.* 相关函数概述 **6
7.2.2 *分函数详解 **7
7.3 事件组使用示例 *20
7.3.* 示例功能和CubeMX项目设置 *20
7.3.2 程序功能实现 *20
7.4 通过事件组进行多任务同步 *25
7.4.* 多任务同步原理 *25
7.4.2 示例功能和CubeMX项目设置 *26
7.4.3 程序功能实现 *27
8章 任务通知 *32
8.* 任务通知的原理和功能 *32
8.2 任务通知的相关函数 *33
8.2.* 相关函数概述 *33
8.2.2 函数详解 *34
8.3 示例*:使用任务通知传递数据 *37
8.3.* 示例功能与CubeMX项目设置 *37
8.3.2 程序功能实现 *38
8.4 示例二:将任务通知用作计数信号量 *4*
8.4.* 示例功能 *4*
8.4.2 CubeMX项目设置 *4*
8.4.3 程序功能实现 *42
9章 流缓冲区和消息缓冲区 *45