《嵌入式微控制器技术及应用》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:马维华编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2015
  • ISBN:9787512416154
  • 页数:390 页
图书介绍:教材主要介绍以当今流行的嵌入式微控制器为核心,以物联网感知及控制为背景,详细介绍嵌入式微控制器基本知识及相关概念,典型结构、构成及工作原理,从发展的角度,以内核为主线,嵌入式微控制器的结构及功能变化及特点。以通用片内硬件组件为共性特点,介绍典型嵌入式微控制器共同的典型硬件组件技术包括中断、GPIO、定时组件(如通用定时器、看门狗定时器、实时钟RTC、脉冲宽度调制PWM等)、模块组件ADC和DAC、以及通信互联组件(UART、I2C、SPI、USB、Enternet)的组成及工作原理,最后介绍基于嵌入式微控制器的嵌入式系统设计与开发方式,并出典型实例。

第1章 嵌入式微控制器概论 1

1.1 嵌入式微控制器及嵌入式系统 1

1.1.1 嵌入式系统的概念 1

1.1.2 嵌入式系统硬件的基本组成 2

1.1.3 嵌入式微控制器 4

1.2 嵌入式微控制器分类 5

1.2.1 CISC结构与RISC结构 5

1.2.2 冯·诺依曼结构与哈佛结构 6

1 2.3 51系列微控制器 7

1.2.4 AVR系列微控制器 9

1.2.5 PIC系列微控制器 12

1.2.6 MSP430系列微控制器 13

1.2.7 MC68HC系列微控制器 14

1.2.8 ARM系列微控制器 15

1.3 嵌入式微控制器的发展及应用领域 18

1.3.1 嵌入式微控制器的发展 18

1.3.2 嵌入式微控制器的应用领域 21

本章习题 23

第2章 ARM嵌入式微控制器 25

2.1 ARM处理器体系结构 25

2.1.1 ARM处理器的主要特点 25

2.1.2 ARM处理器内核版本 25

2.1.3 ARM处理器内核分类 26

2.1.4 ARM的工作状态及工作模式 28

2.1.5 ARM处理器寄存器组织 31

2.1.6 ARM的存储器格式及数据类型 33

2.1.7 ARM处理器中的MMU和MPU 35

2.2 ARM指令流水线技术 36

2.2.1 指令流水线处理 36

2.2.2 ARM的3级指令流水线 37

2.2.3 ARM的5级指令流水线 38

2.2.4 ARM的6级指令流水线 39

2.2.5 ARM的7级指令流水线 39

2.2.6 ARM的8级指令流水线 40

2.3 典型ARM微控制器内核 40

2.3.1 ARM内核命名 40

2.3.2 ARM7典型内核ARM7TDMI 41

2.3.3 ARM9典型内核ARM9TDMI 42

2.3.4 Cortex-M典型内核Cortex-M0/M1/M3/M4 43

2.3.5 Cortex典型内核Cortex-R 50

2.4 ARM微控制器的AMBA总线 53

2.4.1 AMBA总线的发展及版本 54

2.4.2 基于AMBA总线的典型ARM微控制器或片上系统 55

2.5 基于ARM内核的嵌入式微控制器硬件组成 56

2.6 常用ARM嵌入式微控制器厂家及典型芯片 59

2.6.1 NXP公司的典型ARM芯片 61

2.6.2 TI公司的典型ARM芯片 63

2.6.3 Samsung公司的典型ARM芯片 64

2.6.4 Atmel公司的典型ARM芯片 65

2.6.5 ST公司的典型ARM芯片 66

2.6.6 Freescale公司的典型ARM芯片 67

2.6.7 Nuvoton公司的典型ARM芯片 68

2.6.8 其他厂家的典型ARM芯片 69

2.7 嵌入式微控制器选型 69

2.7.1 功能性参数的选择原则 70

2.7.2 非功能性参数的选择原则 71

本章习题 74

第3章 嵌入式微控制器中断系统 76

3.1 ARM处理器异常中断处理概述 76

3.1.1 中断的概念 76

3.1.2 ARM Cortex-M微控制器的异常中断 78

3.2 嵌套向量中断控制器NVIC 82

3.2.1 NVIC概述 82

3.2.2 ARM Cortex-M微控制器NVIC寄存器 84

3.2.3 用CMSIS访问NVIC寄存器 85

3.3 典型Cortex-M微控制器片上外设中断源及中断向量表 86

3.3.1 Nuvoton公司的Cortex-M0微控制器中断源及中断向量表 86

3.3.2 NXP公司的Cortex-M微控制器中断源及中断向量表 88

3.3.3 TI公司的Cortex-M3微控制器中断源及中断向量表 90

3.3.4 Freescale公司的Cortex-M0+微控制器中断源及中断向量表 92

3.4 ARM Cortex-M微控制器芯片功率控制及外部中断 93

3.4.1 功率控制 93

3.4.2 外部中断相关寄存器描述 99

本章习题 99

第4章 基于ARM微控制器的嵌入式程序设计 102

4.1 Thumb/Thumb-2指令系统 102

4.1.1 ARM Cortex-M0支持的Thumb指令集 104

4.1.2 ARM Cortex-M3支持的Thumb-2指令集 108

4.1.3 ARM处理器支持的伪指令 112

4.2 ARM汇编语言程序设计 113

4.2.1 ARM汇编器所支持的伪指令 113

4.2.2 ARM汇编语言的语句格式及程序结构 117

4.2.3 汇编语言程序设计 118

4.2.4 嵌入式C语言与汇编语言混合程序设计 123

4.3 存储器映射及外设寻址 126

4.3.1 存储器映射 126

4.3.2 外设寻址 127

4.4 CMSIS及其规范 128

4.4.1 CMSIS软件结构及层次 128

4.4.2 CMSIS代码规范 130

4.4.3 CMSIS文件结构 131

4.5 嵌入式C程序设计 135

4.5.1 嵌入式程序设计过程 135

4.5.2 嵌入式应用程序的处理流程 136

4.5.3 嵌入式C语言支持的数据类型及运算符 138

4.5.4 嵌入式系统的程序映像 141

4.5.5 基于CMSIS规范的启动文件编程示例 144

4.5.6 用C语言操作片上外设 152

本章习题 157

第5章 嵌入式微控制器GPIO及应用 160

5.1 GPIO概述 160

5.2 GPIO基本工作模式 160

5.2.1 GPIO的高阻输入模式 160

5.2.2 GPIO的输出模式 161

5.2.3 GPIO的准双向I/O模式 163

5.2.4 GPIO的上拉和下拉 164

5.3 GPIO端口保护措施 165

5.4 GPIO端口的中断 165

5.4.1 GPIO端口中断触发方式 165

5.4.2 典型ARM Cortex-M3微控制器GPIO中断 166

5.5 GPIO的典型应用 168

5.5.1 数字信号的逻辑电平 168

5.5.2 逻辑电平的转换 169

5.5.3 GPIO端口引脚功能选择 172

5.5.4 GPIO端口操作C语言函数设计 177

5.5.5 GPIO端口LED显示电路示例 182

5.5.6 GPIO端口的隔离输出 184

5.5.7 GPIO端口的隔离输入 187

5.5.8 GPIO的非接触式按键输入 189

本章习题 193

第6章 定时/计数组件及应用 195

6.1 通用定时/计数器 195

6.1.1 内部定时功能 195

6.1.2 外部计数功能 196

6.1.3 捕获功能 196

6.1.4 匹配功能 197

6.1.5 典型嵌入式微控制器的定时/计数器及应用 197

6.2 看门狗定时器WDT 204

6.2.1 WDT的硬件组成 205

6.2.2 WDT相关寄存器 206

6.2.3 WDT的应用 207

6.3 实时时钟定时器RTC 209

6.3.1 RTC的硬件组成 209

6.3.2 RTC相关寄存器 211

6.3.3 RTC的应用 216

6.4 PWM定时器 218

6.4.1 PWM概述 218

6.4.2 PWM工作原理 219

6.4.3 PWM硬件组成及引脚 221

6.4.4 PWM相关寄存器 223

6.4.5 PWM的应用 228

6.5 电机控制PWM定时器MCPWM 231

6.5.1 MCPWM概述 231

6.5.2 MCPWM硬件组成及引脚 231

6.5.3 MCPWM相关寄存器 233

6.5.4 MCPWM的应用 239

6.6 其他定时部件 248

6.6.1 系统节拍定时器SysTick 248

6.6.2 重复中断定时器RI 248

本章习题 249

第7章 模拟通道组件及应用 253

7.1 模拟输入/输出系统 253

7.2 模/数转换器ADC 254

7.2.1 ADC的硬件组成及原理 254

7.2.2 ADC相关寄存器 255

7.2.3 ADC的应用 258

7.3 数/模转换器DAC 263

7.3.1 DAC的硬件组成及原理 263

7.3.2 DAC相关寄存器 265

7.3.3 DAC的应用 266

7.4 比较器COMP 269

本章习题 270

第8章 互连通信组件及应用 272

8.1 串行异步收发器UART 272

8.1.1 UART及其结构 272

8.1.2 UART相关寄存器 275

8.1.3 UART的应用 283

8.2 I2C总线接口 290

8.2.1 I2C总线概述 290

8.2.2 I2C串行总线模块结构 293

8.2.3 I2C总线操作模式 294

8.2.4 I2C总线模块相关寄存器 294

8.2.5 I2C总线接口中断 297

8.2.6 I2C总线接口的应用 297

8.3 SPI串行外设接口 305

8.3.1 SPI串行外设接口概述 305

8.3.2 SPI寄存器结构 307

8.3.3 SPI接口的应用 309

8.4 CAN总线接口 314

8.4.1 CAN总线接口概述 314

8.4.2 CAN控制器组成及相关寄存器 315

8.4.3 CAN总线接口的应用 321

8.5 以太网Ethernet控制器接口 325

8.5.1 Ethernet控制器简介 325

8.5.2 Ethernet控制器结构 326

8.5.3 Ethernet接口连接 328

8.6 常用无线通信接口 329

8.6.1 GPS模块 329

8.6.2 GPRS模块 330

8.6.3 北斗模块 330

8.6.4 WiFi及蓝牙 331

8.6.5 其他无线模块 331

本章习题 331

第9章 基于微控制器的嵌入式应用系统设计 335

9.1 嵌入式最小系统设计 335

9.1.1 最小系统组成 335

9.1.2 最小系统设计 335

9.2 嵌入式最低功耗系统设计 339

9.2.1 最低功耗系统 339

9.2.2 嵌入式微控制器的电源工作模式 340

9.2.3 嵌入式微控制器的功率控制 341

9.2.4 嵌入式低功耗设计步骤及主要内容 342

9.3 典型嵌入式应用系统设计 343

9.3.1 嵌入式应用系统设计方法及原则 343

9.3.2 输入通道设计 345

9.3.3 输出通道设计 348

9.3.4 人机交互通道设计 349

9.3.5 互连通信通道设计 350

9.3.6 嵌入式应用系统抗干扰设计 351

9.3.7 无操作系统的嵌入式应用系统软件设计 354

9.3.8 有操作系统的嵌入式应用系统软件设计 355

9.4 嵌入式应用系统调试与测试技术 359

9.4.1 硬件调试连接及调试工具 359

9.4.2 调试工具及硬软调试 360

9.5 嵌入式应用系统设计实例 361

9.5.1 嵌入式环境监测监控系统主要设计要求及需求分析 361

9.5.2 嵌入式环境监测监控系统体系结构设计 363

9.5.3 最小系统设计 364

9.5.4 嵌入式环境监控系统模拟通道设计 368

9.5.5 嵌入式环境监控系统数字通道设计 373

9.5.6 嵌入式环境监控系统人机交互通道设计 376

9.5.7 嵌入式环境监控系统互连通信接口设计 383

本章习题 388

参考文献 390