图书目录

目录

第1章微型计算机与嵌入式系统概论1

1.1微型计算机概述1

1.1.1微型计算机系统的组成1

1.1.2微处理器的发展3

1.2微型计算机的基本原理7

1.2.1冯·诺依曼体系结构7

1.2.2微机的总线8

1.2.3哈佛体系结构14

1.2.4微处理器的内部结构15

1.2.5I/O接口技术19

1.2.6存储器20

1.2.7程序的执行过程24

1.3嵌入式系统概述25

1.4嵌入式系统架构27

1.5嵌入式系统的典型应用28

1.6典型嵌入式开源硬件和软件系统31

1.6.1开源硬件平台31

1.6.2嵌入式开源操作系统33

第2章CortexM3微处理器的体系结构35

2.1ARM微处理器系列介绍35

2.2ARM CortexM3体系结构37

2.2.1总体架构37

2.2.2操作模式39

2.2.3寄存器40

2.2.4总线44

2.2.5存储器45

2.2.6中断50

2.3STM32L152RET6微处理器介绍50

2.4STM32L152RET6微处理器的系统结构51

2.5STM32L152RET6微处理器的引脚说明54

2.6STM32L152RET6微处理器的复位和时钟控制57

2.7STM32L152RET6微处理器的存储映射59

〖1〗微机原理与接口技术——嵌入式系统描述 〖1〗目录 第3章CortexM3处理器的指令系统63

3.1CortexM3处理器的指令系统概述63

3.1.1指令系统基本概念63

3.1.2指令格式65

3.1.3寻址方式67

3.1.4数据传送指令68

3.1.5存储器访问指令69

3.1.6算术运算指令74

3.1.7逻辑运算指令77

3.1.8移位和循环指令78

3.1.9比较指令79

3.1.10分支控制指令80

3.1.11其他指令81

3.2ARM汇编器中的伪指令83

3.2.1Thumb伪指令83

3.2.2符号定义伪指令84

3.2.3数据定义伪指令85

3.2.4汇编控制伪指令86

3.2.5其他常用的伪指令87

3.3汇编语言的程序结构88

第4章开发板硬件系统及开发环境92

4.1最小系统设计92

4.2开发板电路原理图93

4.2.1电源93

4.2.2复位和启动电路95

4.2.3时钟95

4.2.4调试接口96

4.2.5按键97

4.2.6LED灯97

4.2.7显示屏98

4.2.8扩展I/O口98

4.3软件开发环境99

4.3.1嵌入式软件开发流程99

4.3.2程序开发库CMSIS101

4.3.3STM32L52嵌入式程序开发预备知识103

第5章通用输入输出112

5.1GPIO原理112

5.1.1GPIO功能112

5.1.2I/O模式配置113

5.2GPIO寄存器115

5.3GPIO操作函数库120

5.4GPIO实例128

5.4.1GPIO寄存器基本操作128

5.4.2GPIO LED灯控制130

5.4.3GPIO按键输入131

第6章异常和中断处理技术133

6.1中断的基本概念133

6.2中断向量表134

6.3中断的执行过程138

6.3.1中断响应基本流程138

6.3.2中断优化技术141

6.3.3系统异常142

6.4嵌套向量中断控制器NVIC144

6.4.1STM32L152 NVIC144

6.4.2NVIC寄存器144

6.4.3系统异常处理149

6.4.4全局中断管理150

6.4.5NVIC库函数151

6.5外部中断/事件控制器EXTI157

6.6寄存器说明158

6.7EXTI函数库162

6.8中断案例164

第7章定时器168

7.1定时器原理概述168

7.2内部定时器SysTick170

7.2.1SysTick寄存器170

7.2.2SysTick定时器库函数172

7.2.3SysTick定时器应用例程174

7.3外围定时器基本概念175

7.4基本定时器TIM6、TIM7179

7.5通用定时器TIM2~TIM4、TIM9~TIM11181

7.5.1通用定时器时基单元182

7.5.2通用定时器输入捕获和输出比较单元185

7.5.3TIMx的外部触发同步模式189

7.6定时器寄存器191

7.7外围定时器库函数197

7.8定时器应用例程205

7.8.1定时器寄存器操作案例205

7.8.2基本计时中断示例206

7.8.3比较输出示例208

7.8.4输入捕获示例212

7.8.5PWM输出和输入示例215

第8章USART串口控制器218

8.1串行输入输出接口的基本概念218

8.2串行通信协议219

8.2.1异步串行通信协议219

8.2.2同步串行通信协议220

8.2.3串行通信基本概念221

8.3STM32L152 USART内部结构与原理224

8.3.1发送器226

8.3.2接收器228

8.3.3校验控制232

8.3.4硬件流控制232

8.3.5USART中断请求233

8.4USART寄存器234

8.5USART 数据传输配置240

8.5.1波特率计算240

8.5.2异步双向通信模式配置241

8.6USART 帧传输协议242

8.6.1串行链路帧格式设计242

8.6.2MODBUS帧格式246

8.7USART 函数库247

8.7.1寄存器定义247

8.7.2USART库函数250

8.8USART 案例257

8.8.1串口寄存器操作案例257

8.8.2串口配置基本流程258

8.8.3PC串口通信案例259

8.8.4状态机多字节数据帧发送和接收案例261

第9章IIC总线267

9.1IIC总线概述267

9.2I2C总线的基本操作268

9.3STM32L152 I2C总线控制器273

9.4I2C寄存器描述275

9.5I2C数据通信流程281

9.5.1I2C从模式通信281

9.5.2I2C主模式通信283

9.5.3总线通信错误285

9.5.4中断请求285

9.6函数库287

9.6.1I2C寄存器结构 287

9.6.2I2C库函数288

9.7I2C案例298

9.7.1I2C寄存器操作案例298

9.7.2I2C基本配置299

9.7.3模拟I2C实现301

9.7.4串行Flash通信304

9.7.5ADT7420温度传感器通信306

第10章SPI309

10.1SPI总线概述309

10.2SPI总线控制器架构310

10.2.1接口信号和连接方式310

10.2.2传输模式和时序313

10.2.3STM32L15x SPI总线控制器315

10.3SPI寄存器说明317

10.4SPI通信流程320

10.4.1SPI双工通信模式配置321

10.4.2SPI单工/半双工通信323

10.5函数库326

10.5.1SPI寄存器结构326

10.5.2SPI库函数328

10.6SPI案例333

10.6.1SPI寄存器操作案例333

10.6.2SPI函数库案例334

10.6.3温度传感器ADT7320案例335

第11章模拟/数字转换339

11.1ADC简介339

11.2STM32L152 ADC344

11.2.1STM32L152 ADC功能346

11.2.2温度和电压转换357

11.3ADC寄存器358

11.4ADC寄存器结构及ADC库函数365

11.4.1ADC寄存器结构366

11.4.2ADC库函数368

11.5ADC案例377

11.5.1ADC寄存器操作案例377

11.5.2ADC库函数操作案例378

第12章低功耗技术380

12.1处理器功耗的构成/类型380

12.1.1动态功耗380

12.1.2静态功耗381

12.2STM32L1系列处理器低功耗设计382

12.2.1STM32的电源系统382

12.2.2动态电压调节管理383

12.2.3电源检测385

12.2.4低功耗模式386

12.3功耗控制寄存器389

12.4PWR寄存器结构及库函数391

12.4.1PWR寄存器结构391

12.4.2PWR库函数391

12.5PWR案例394

参考文献397