| ISBN | 出版时间 | 包装 | 开本 | 页数 | 字数 |
|---|---|---|---|---|---|
| 未知 | 暂无 | 暂无 | 未知 | 0 | 暂无 |
《STM32Cube高效开发教程(基础篇)》
第一部分 软硬件基础
第1章 概述 2
1.1 STM32系列单片机 2
1.2 STM32的器件驱动库 3
1.3 STM32Cube生态系统 4
1.4 STM32Cube开发方式 8
第2章 STM32F407和开发板 10
2.1 STM32F407简介 10
2.2 STM32F407开发板 17
2.3 仿真器 23
第3章 STM32CubeMX的使用 24
3.1 安装STM32CubeMX 24
3.2 安装MCU固件包 25
3.3 软件功能和基本使用 29
3.4 项目示例:LED初始输出 49
第4章 STM32CubeIDE的使用 51
4.1 安装STM32CubeIDE 51
4.2 基本概念和MCU固件库设置 52
4.3 C/C++场景的界面功能和操作 58
4.4 CubeMX生成项目的文件组成 63
4.5 项目管理、构建和下载调试 72
4.6 使用内置的CubeMX 79
4.7 CubeIDE使用偏好设置 81
4.8 HAL库的一些基本问题 83
第5章 STM32CubeMonitor的使用 85
5.1 STM32CubeMonitor功能简介 85
5.2 CubeMonitor基本操作 87
5.3 CubeMonitor基本功能使用示例 92
5.4 CubeMonitor的使用小结 113
第二部分 系统功能和常用外设的使用
第6章 GPIO输入/输出 116
6.1 GPIO功能概述 116
6.2 GPIO的HAL驱动程序 117
6.3 GPIO使用示例 120
6.4 作为公共驱动程序 130
第7章 中断系统和外部中断 131
7.1 STM32F407的中断 131
7.1.1 中断向量表 131
7.1.2 中断优先级 134
7.1.3 中断设置相关HAL驱动程序 135
7.2 外部中断EXTI 136
7.2.1 外部中断功能和外部中断线 136
7.2.2 外部中断相关HAL函数 138
7.3 外部中断使用示例 141
7.3.1 示例功能和CubeMX项目设置 141
7.3.2 项目初始代码分析 142
7.3.3 编写用户功能代码 145
7.3.4 中断优先级的测试 146
第8章 FSMC连接TFT LCD 148
8.1 FSMC连接TFT LCD的原理 148
8.2 FSMC连接LCD的电路和接口初始化 151
8.3 使用LCD驱动程序 159
8.4 作为公共驱动程序 172
第9章 基础定时器 174
9.1 定时器概述 174
9.2 基础定时器内部结构和功能 175
9.3 基础定时器HAL驱动程序 177
9.4 外设的中断处理概念小结 182
9.5 基础定时器使用示例 185
第10章 通用定时器 192
10.1 通用定时器功能概述 192
10.2 典型功能原理和HAL驱动 196
10.3 示例1:生成PWM波 204
10.4 示例2:输出比较 210
10.5 示例3:输入PWM 213
第11章 实时时钟 220
11.1 RTC功能概述 220
11.2 周期唤醒和闹钟 227
11.3 备份寄存器 239
11.4 入侵检测和时间戳 246
第12章 USART/UART通信 255
12.1 USART/UART接口概述 255
12.2 串口的HAL驱动程序 259
12.3 串口通信示例 264
第13章 DMA 276
13.1 DMA功能概述 276
13.2 DMA的HAL驱动程序 280
13.3 串口的DMA传输示例 284
第14章 ADC 295
14.1 ADC功能概述 295
14.2 ADC的HAL驱动程序 299
14.3 示例1:软件启动ADC转换 303
14.4 示例2:定时器触发ADC转换 308
14.5 示例3:多通道和DMA传输 313
14.6 示例4:双ADC同步转换 319
第15章 DAC 325
15.1 DAC功能概述 325
15.2 DAC的HAL驱动程序 328
15.3 示例1:软件触发DAC转换 332
15.4 示例2:输出三角波 335
15.5 示例3:使用DMA输出自定义波形 339
第16章 SPI通信 343
第17章 I2C通信 377
第18章 CAN总线通信 392
第19章 FSMC连接外部SRAM 422
第20章 独立看门狗 442
第21章 窗口看门狗 448
第22章 电源管理和低功耗模式 456
附录A CubeMX模板项目和公共驱动程序的使用 477
附录B 复制一个项目 482
附录C 本书示例项目列表 483
附录D 缩略词 485
附参考文献 488
《STM32Cube高效开发教程(高级篇)》
第 一部分 嵌入式操作系统FreeRTOS
第 1章 FreeRTOS基础 2
1.1 FreeRTOS概述 2
1.2 FreeRTOS入门示例 4
1.3 FreeRTOS的文件组成和基本原理 15
第 2章 FreeRTOS的任务管理 29
2.1 任务相关的一些概念 29
2.2 FreeRTOS的任务调度 32
2.3 任务管理相关函数 36
2.4 多任务编程示例一 40
2.5 任务管理工具函数 49
2.6 多任务编程示例二 55
第3章 FreeRTOS的中断管理 62
3.1 FreeRTOS与中断 62
3.2 任务与中断服务例程 64
3.3 任务和中断程序设计示例 67
第4章 进程间通信与消息队列 74
4.1 进程间通信 74
4.2 队列的特点和基本操作 75
4.3 队列使用示例 79
第5章 信号量 86
5.1 信号量和互斥量概述 86
5.2 二值信号量使用示例 90
5.3 计数信号量使用示例 98
第6章 互斥量 104
6.1 优先级翻转问题 104
6.2 互斥量的工作原理 105
6.3 优先级翻转示例 106
6.4 互斥量使用示例 111
第7章 事件组 115
7.1 事件组的原理和功能 115
7.2 事件组相关函数 116
7.3 事件组使用示例 120
7.4 通过事件组进行多任务同步 125
第8章 任务通知 132
8.1 任务通知的原理和功能 132
8.2 任务通知的相关函数 133
8.3 示例一:使用任务通知传递数据 137
8.4 示例二:将任务通知用作计数信号量 141
第9章 流缓冲区和消息缓冲区 145
9.1 流缓冲区功能概述 145
9.2 流缓冲区操作的相关函数 146
9.3 流缓冲区使用示例 149
9.4 消息缓冲区功能概述 154
9.5 消息缓冲区操作相关函数 154
9.6 消息缓冲区使用示例 157
第 10章 软件定时器 162
10.1 软件定时器概述 162
10.2 软件定时器的相关函数 164
10.3 软件定时器使用示例 169
第 11章 空闲任务与低功耗 174
11.1 HAL和FreeRTOS的基础时钟 174
11.2 空闲任务与低功耗处理 182
11.3 Tickless低功耗模式 186
第二部分 FatFS管理文件系统
第 12章 FatFS和文件系统 192
12.1 FatFS概述 192
12.2 FatFS的应用程序接口函数 197
12.3 FatFS的存储介质访问函数 208
12.4 针对SPI-Flash芯片移植FatFS 209
12.5 在SPI-Flash芯片上使用文件系统 231
第 13章 直接访问SD卡 245
13.1 SD卡简介 245
13.2 SDIO接口硬件电路 247
13.3 SDIO接口和SD卡的HAL驱动程序 249
13.4 示例一:以轮询方式读写SD卡 257
13.5 示例二:以DMA方式读写SD卡 264
第 14章 用FatFS管理SD卡文件系统 272
第 15章 用FatFS管理U盘文件系统 295
第 16章 USB-OTG用作USB MSC外设 324
第 17章 在FreeRTOS中使用FatFS 341
第三部分 图片的获取与显示
第 18章 BMP图片 360
第 19章 JPG图片 387
第 20章 电阻式触摸屏 405
第 21章 电容式触摸屏 431
第 22章 DCMI接口和数字摄像头 455
附录A CubeMX模板项目和公共驱动程序的使用 487
附录B 复制一个项目 493
附录C 开发板功能模块 494
附录D 本书示例列表 498
附录E 缩略词 501
参考文献 503