《从0开始教你学STM32》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:赵星寒编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2014
  • ISBN:9787512415676
  • 页数:276 页
图书介绍:本书是一本关于STM32F1xx系列微处理器的入门教材,旨在为初学这一系列微处理器的同学提供一条由浅入深、循序渐进的入门通道,对于略有单片机、微处理器经验的初学者,只要愿意学习这一类微处理器,都可以从本书中受到启发,从而了解和精通这一类微处理器。STM32F1xx系列微处理器是一种以Cortex-M3为内核的微处理器,而Cortex-M3是ARM体系结构中比较新的体系结构,因此STM32F1xx系列微处理器是一种高性能的ARM核的微处理器,如果已经对ARM内核的系列芯片有所了解,学习STM32F1xx系列是一件比较容易的事情。如果对ARM内核还不了解,可以通过学习本书进一步了解ARM内核的系列芯片。

第1章 概述 1

1.1 STM32F1xx系列概述 1

1.1.1 STM32F1xx的多个子系列 1

1.1.2 STM32F1xx系列特点 2

1.1.3 内核简介 3

1.2 封装 3

1.3 接口 4

1.4 选型指南 5

1.5 开发环境 7

第2章 STM32F103最小系统 9

2.1 最小系统设计 9

2.1.1 最小系统 9

2.1.2 电源 10

2.1.3 复位控制 11

2.1.4 系统启动模式 12

2.1.5 振荡器 12

2.2 JTAG接口 13

第3章 寄存器及存储器 14

3.1 内部通用工作寄存器 14

3.2 STM32F1xx存储器空间 19

3.2.1 存储器映像 19

3.2.2 外设管理寄存器 20

3.2.3 内嵌Flash存储器 22

3.2.4 内嵌SRAM存储器 23

3.2.5 系统存储器 23

3.3 堆栈及栈区 24

3.4 数据格式 25

3.4.1 数据的大端和小端 25

3.4.2 地址对准 26

3.5 位段(bit-banding)操作 28

3.5.1 位操作概念和位操作分区 28

3.5.2 位段操作 30

3.5.3 位段操作应用举例 32

第4章 最小系统管理 36

4.1 电源系统管理 36

4.1.1 电压监测器PVD 37

4.1.2 低功耗模式 38

4.1.3 实时时钟的自动唤醒AWU方式 40

4.1.4 电源控制寄存器组介绍 41

4.2 复位系统 42

4.2.1 系统复位 43

4.2.2 系统复位源的识别和应用 44

4.2.3 外部设备复位 46

4.3 时钟系统管理 49

4.3.1 独立看门狗(IWDG)时钟 50

4.3.2 实时时钟RTC 51

4.3.3 系统主时钟 53

4.3.4 外部设备时钟 59

4.3.5 输出时钟源 62

4.3.6 时钟管理寄存器组 63

第5章 中断和事件 66

5.1 中断和事件概述 66

5.2 中断向量表 68

5.3 内核中断 70

5.3.1 内核中断介绍 71

5.3.2 内核中断的应用 71

5.3.3 内核中断的管理 72

5.4 外部中断/事件 75

5.4.1 外部中断/事件概述 76

5.4.2 外部中断/事件管理 78

5.5 外设中断 81

5.5.1 外设中断概述 82

5.5.2 系统中断设置/使能寄存器 82

5.6 中断优先权和中断过程 84

5.6.1 中断优先权寄存器 85

5.6.2 中断过程 86

第6章 汇编语言编程方法 89

6.1 汇编语言程序组成 90

6.1.1 汇编语言程序 90

6.1.2 汇编语言程序要素 92

6.2 汇编语言书写规则 97

6.3 汇编语言中的表达式 97

6.3.1 变量 97

6.3.2 字符串表达式 98

6.3.3 数字表达式 100

6.3.4 逻辑表达式 102

6.3.5 以PC为基址和以寄存器为基址的地址表达式 104

6.3.6 编译时的运算顺序 105

6.4 第2操作数 105

6.4.1 第2操作数表达 105

6.4.2 第2操作数规范 107

6.5 地址的前缀和后缀 107

6.6 指令可选后缀 108

6.7 条件指令的应用(条件后缀) 109

6.7.1 条件标志的变化 110

6.7.2 条件标志位 110

6.7.3 条件的判断和程序的转移(条件后缀) 111

6.8 数据栈的应用 113

第7章 汇编语言工程项目 115

7.1 汇编语言启动代码 115

7.1.1 标准的启动代码 116

7.1.2 自编的启动代码 125

7.2 汇编语言工程项目 126

7.2.1 建立一个工程项目 126

7.2.2 编制主程序 129

7.2.3 建立一个中断处理文件 133

7.2.4 建立一个子文件 136

第8章 Thumb-2指令集 138

8.1 存储器访问指令 139

8.2 通用数据处理指令 147

8.3 乘法和除法指令 155

8.4 饱和运算指令SSAT和USAT 157

8.5 位段操作指令 160

8.6 分支和分支控制指令 163

8.7 其他指令 167

第9章 伪指令 171

9.1 概述 171

9.2 符号声明类伪指令 172

9.3 数据定义类伪指令 174

9.4 控制程序流向的伪指令 179

9.5 其他伪指令 185

第10章 C语言编程方法 189

10.1 C语言的两种编程方法 189

10.2 创建一个C语言工程项目 191

10.3 寄存器编程方法 194

10.3.1 寄存器定义和寄存器赋值 194

10.3.2 逻辑判断语句的应用 198

10.3.3 Contex-M3的位段操作在C语言中的应用 199

10.4 工程项目组成 200

10.4.1 创建和添加一个扩展名为h的头文件 201

10.4.2 创建和添加一个中断服务程序文件 201

第11章 混合编程方法 204

11.1 嵌入式汇编语法 204

11.2 参数传递 206

第12章 通用外部端口GPIO和复用外部端口AFIO 209

12.1 通用输入/输出端口概述 209

12.2 通用I/O端口应用 212

12.3 复用I/O端口 218

12.4 复用功能的重新映射 221

12.5 寄存器组说明 225

第13章 模拟/数字转换器ADC 227

13.1 ADC信号源 228

13.2 A/D信号源分组 228

13.2.1 概述 228

13.2.2 信号源分组 229

13.2.3 分组寄存器介绍 231

13.2.4 分组方法举例 234

13.3 使用ADC的几个概念 235

13.3.1 采样时间及采样时间寄存器 235

13.3.2 数据对齐 237

13.3.3 校准 238

13.3.4 ADC时钟 238

13.3.5 内部触发和外部触发 239

13.3.6 中断 240

13.3.7 ADC复位后状态 241

13.4 单次转换和连续转换 242

13.5 扫描模式 243

13.6 间断模式 245

13.7 ADC的其他特性 247

13.7.1 模拟看门狗 247

13.7.2 双ADC模式 248

13.7.3 不同型号产品ADC的区别 252

13.8 ADC寄存器组 253

13.9 ADC程序实例 260

第14章 通用异步同步收发器USART 264

14.1 异步通信概述 264

14.2 波特率设置 266

14.3 数据发送 267

14.4 数据接收 269

14.5 异步串行通信中的中断 270

14.6 异步串行通信应用举例 271

14.7 USART寄存器介绍 273

参考文献 276