《嵌入式单片机STM32设计及应用技术》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:张淑清,张立国,金海龙等编著
  • 出 版 社:北京:国防工业出版社
  • 出版年份:2015
  • ISBN:9787118101607
  • 页数:341 页
图书介绍:本书在介绍嵌入式系统Cortex-M3处理器及STM32处理器开发工具的基础上,重点介绍STM32系统总线构架、存储器的组织与映射、时钟系统、DMA控制器、看门狗、STM32单片机定时器/计数器、串行通信技术、中断系统、STM32单片机A/D转换器。由于单片机系统设计是一个实践性比较强的技术,因此书中最后两章介绍了单片机的实验用仿真器及实验实例,以几个工程实例分析了应用系统设计要点及设计过程。

第1章 ARM嵌入式系统概述 1

1.1 嵌入式系统简介 1

1.1.1 嵌入式系统定义及特征 1

1.1.2 嵌入式系统发展 1

1.1.3 嵌入式系统应用 2

1.2 ARM处理器 3

1.2.1 ARM处理器分类 3

1.2.2 ARM Cortex处理器 4

1.2.3 ARM Cortex-M3处理器 5

1.3 STM32F10x系列微控制器 6

1.3.1 STM32微控制器分类 6

1.3.2 STM32F10x处理器内部结构 7

1.3.3 STM32系列处理器的优点 8

1.3.4 STM32处理器开发工具 9

思考与练习 9

第2章 STM32单片机结构和最小系统 11

2.1 STM32F103微控制器外部结构 11

2.2 STM32F103总线和存储器结构 13

2.2.1 总线结构 13

2.2.2 存储器结构和映射 14

2.2.3 位带 17

2.3 时钟电路、复位电路、启动配置 20

2.3.1 时钟控制 20

2.3.2 复位 22

2.3.3 启动配置 23

2.4 最小系统设计 23

思考与练习 27

第3章 基于标准外设库的C语言程序设计基础 28

3.1 嵌入式C语言基础 28

3.1.1 文件结构 28

3.1.2 程序版式 29

3.1.3 C语言知识精编 30

3.2 CMSIS——Cortex-M3微控制器软件接口标准 42

3.2.1 CMSIS概述 42

3.2.2 STM32F10x标准外设库 43

3.3 基于MDK的STM32开发 47

3.3.1 Keil MDK概述 47

3.3.2 开发过程 47

思考与练习 52

第4章 STM32单片机通用输入输出GPIO 53

4.1 STM32F10x的输入输出基本结构 53

4.2 GPIO相关功能寄存器 54

4.3 STM32F10x的IO口功能特点 57

4.3.1 通用功能输入输出GPIO 58

4.3.2 复用功能输入输出AFIO 58

4.3.3 外部中断/唤醒线 58

4.4 STM32F10x的输入输出配置 59

4.4.1 GPIO输入配置 59

4.4.2 GPIO输出配置 60

4.4.3 复用功能配置 61

4.4.4 模拟输入配置 61

4.4.5 外设的GPIO配置 62

4.5 GPIO应用设计 64

4.5.1 GPIO常用库函数 64

4.5.2 GPIO使用流程 75

4.5.3 GPIO应用实例 75

思考与练习 78

第5章 STM32单片机外部中断 79

5.1 中断的相关概念 79

5.2 STM32F103中断系统组成 80

5.2.1 中断源 80

5.2.2 中断向量 80

5.2.3 中断控制器 83

5.2.4 相关功能寄存器 85

5.3 中断控制 88

5.3.1 中断屏蔽控制 88

5.3.2 中断优先级控制 88

5.4 中断执行过程和中断嵌套 89

5.5 STM32外部中断应用设计 90

5.5.1 STM32外部中断常用的库函数 90

5.5.2 STM32中断的设计 100

5.5.3 外部中断应用实例 105

思考与练习 108

第6章 STM32通用定时器 110

6.1 STM32定时器的组成结构 110

6.1.1 STM32定时器概述 110

6.1.2 STM32通用定时器的结构特性 112

6.2 通用定时器相关寄存器 114

6.3 通用定时器的功能及工作方式 127

6.3.1 时钟的选择 127

6.3.2 时基单元 130

6.3.3 计数模式 131

6.4 通用定时器应用设计 133

6.4.1 通用定时器常用库函数 133

6.4.2 通用定时器使用流程 143

6.4.3 定时器设计实例 145

思考与练习 148

第7章 STM32通用同步/异步收发器USART 150

7.1 串行通信基础 150

7.1.1 串行通信与并行通信 150

7.1.2 串行通信方式 150

7.1.3 串行通信的数据传输形式 151

7.1.4 波特率 151

7.2 STM32的USART的结构特性 151

7.3 USART相关寄存器 153

7.4 STM32串行通信的工作方式 162

7.4.1 数据发送和接收 162

7.4.2 多处理器通信 163

7.4.3 其他方式 164

7.5 USART应用设计 167

7.5.1 USART常用库函数 167

7.5.2 USART使用流程 174

7.5.3 STM32与上位机通信设计实例 175

7.6 串行通信接口抗干扰设计 178

7.6.1 TTL电平通信接口 179

7.6.2 标准串行通信接口RS-232C 179

7.6.3 RS-485双机通信接口 180

思考与练习 180

第8章 直接存储器存取DMA 181

8.1 DMA简介 181

8.2 STM32的 DMA结构 181

8.3 DMA相关寄存器 183

8.4 DMA的工作过程 187

8.5 DMA应用设计 189

8.5.1 DMA常用库函数 189

8.5.2 DMA使用流程 198

8.5.3 DMA数据传输应用实例 200

思考与练习 206

第9章 STM32的模数转换器ADC 208

9.1 STM32应用系统输入输出通道 208

9.2 ADC的性能指标 209

9.3 STM32的ADC的特性与结构 211

9.4 ADC相关寄存器 213

9.5 ADC的工作模式控制 223

9.5.1 开关、时钟及通道 223

9.5.2 模式控制 224

9.5.3 中断和DMA 225

9.5.4 其他功能 225

9.6 ADC应用设计 227

9.6.1 ADC常用库函数 227

9.6.2 ADC使用流程 238

9.6.3 STM32的ADC电压采集实例 239

思考与练习 245

第10章 STM32的集成电路总线I2C 246

10.1 I2C总线概述 246

10.1.1 I2C总线特点 246

10.1.2 I2C总线标准的发展 247

10.1.3 I2 C总线术语 247

10.2 I2C总线原理 247

10.2.1 I2 C硬件构成 247

10.2.2 位传输 248

10.2.3 数据传输格式 249

10.3 STM32的I2C的特性和结构 251

10.4 STM32的I2C相关功能寄存器 253

10.5 STM32的I2C的通信实现 263

10.5.1 I2 C主模式 263

10.5.2 I2 C从模式 265

10.5.3 中断事件和传输错误 266

10.6 I2C应用设计 268

10.6.1 I2 C常用库函数 268

10.6.2 I2C使用流程 276

10.6.3 I2C扩展EEPROM实例 277

思考与练习 291

第11章 串行外设接口SPI 292

11.1 SPI基础 292

11.1.1 SPI接口定义 292

11.1.2 单机和多机通信 292

11.2 STM32的SPI特性和结构 294

11.3 SPI相关寄存器 296

11.4 STM32的SPI工作过程 303

11.4.1 从选择(NSS)脚管理 303

11.4.2 时钟相位与极性 303

11.4.3 SPI主模式 304

11.4.4 SPI从模式 305

11.4.5 状态标志 306

11.4.6 CRC校验 306

11.4.7 利用DMA的SPI通信 307

11.4.8 错误标志 307

11.4.9 中断 307

11.5 SPI应用设计 308

11.5.1 SPI常用库函数 308

11.5.2 SPI使用流程 315

11.5.3 STM32的SPI设计实例 315

思考与练习 321

第12章 综合设计 322

12.1 STM32嵌入式系统设计总体方案 322

12.2 基于STM32和GSM的远程环境监控系统 322

12.2.1 硬件设计 323

12.2.2 软件设计 325

12.3 基于STM32的Zigbee无线通信 327

12.3.1 硬件设计 328

12.3.2 软件设计 329

12.4 基于STM32的简易数码相机 332

12.4.1 硬件设计 332

12.4.2 FAT文件系统 333

12.4.3 FAT16存储原理 335

12.4.4 软件设计 336

参考文献 341