《ARM Cortex-M3嵌入式开发实例详解 基于NXP LPC17XX》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:张燕妮编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2013
  • ISBN:9787121215865
  • 页数:326 页
图书介绍:本书共分为三部分,第一部分包含第1、2、3章,是有关Cortex—M3及LPC17XX的软硬件基础部分。第二部分包含4~13章,是有关LPC17XX的外设功能及实例部分。第三部分包含14、15章,是根据LPC17XX设计的两个综合实例。本书采用NXP的固件库进行讲解,具有标准化、软件设计稳定的特点。本书提供了大量经过验证的硬件原理图和应用程序代码、方便读者参考设计。

第1章 Cortex-M3体系结构 1

1.1 Cortex-M3简介 1

1.1.1 ARM的历史 1

1.1.2 Cortex-M3的特征 6

1.2 内核寄存器 8

1.2.1 通用寄存器 9

1.2.2 连接寄存器 9

1.2.3 程序计数器 9

1.2.4 专用寄存器 10

1.3 操作模式和特权级别 11

1.4 存储器映射 12

1.4.1 地址空间 12

1.4.2 位带操作 15

1.4.3 端模式 19

1.5 总线接口 20

1.5.1 3级流水线 20

1.5.2 总线矩阵 20

1.6 存储器保护单元(MPU) 22

1.6.1 MPU概述 22

1.6.2 MPU的寄存器 22

1.6.3 MPU的使用 23

1.7 中断和异常 24

1.7.1 异常类型 24

1.7.2 异常优先级 25

1.7.3 异常响应过程 27

1.8 指令系统 30

1.9 小结 32

第2章 LPC17XX的硬件设计基础 33

2.1 LPC 17XX概述 33

2.1.1 简介 33

2.1.2 特性 34

2.1.3 LPC17XX的结构图 36

2.2 LPC 17XX的时钟与功率控制 38

2.2.1 振荡器 39

2.2.2 时钟源选择多路复用 41

2.2.3 PLL0 42

2.2.4 时钟分频器 47

2.2.5 功率控制 50

2.3 LPC 17XX的引脚 55

2.3.1 LPC17XX的引脚连接模块 55

2.3.2 LPC17XX的引脚配置寄存器 64

2.4 最小系统设计 67

2.5 小结 69

第3章 LPC1700程序设计基础 70

3.1 RealView MDK开发环境 70

3.1.1 RealView MDK开发环境简介 70

3.1.2 工程创建、编译 72

3.1.3 Flash编程器 79

3.1.4 简易实例 79

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

3.2.1 CMSIS概述 81

3.2.2 CMSIS编码规范 81

3.2.3 CMSIS文件结构 82

3.2.4 核内外设访问层 83

3.3 LPC 1700 CMSIS标准固件库 89

3.3.1 固件库的组织结构 90

3.3.2 固件库的驱动部分 90

3.3.3 驱动标识定义 92

3.4 小结 93

第4章 系统节拍定时器 94

4.1 系统节拍定时器概述 94

4.2 系统节拍定时器的原理 94

4.3 寄存器 95

4.3.1 系统节拍定时器的控制和状态寄存器(STCTRL) 95

4.3.2 系统节拍定时器的重载值寄存器(STRELOAD) 97

4.3.3 系统节拍定时器的当前值寄存器(STCURR) 98

4.3.4 系统节拍定时器的校准值寄存器(STCALIB) 98

4.4 使用系统节拍定时器测试程序运行时间实例 99

4.4.1 需求分析 99

4.4.2 软件设计 99

4.5 小结 100

第5章 GPIO——通用输入/输出 101

5.1 GPIO的功能 101

5.1.1 数字I/O端口功能 101

5.1.2 可产生中断的数字端口 101

5.1.3 可掉电唤醒 102

5.2 GPIO的寄存器 102

5.2.1 端口方向寄存器(FIOxDIR) 103

5.2.2 端口输出设置寄存器(FIOxSET) 104

5.2.3 端口输出清零寄存器(FIOxCLR) 104

5.2.4 端口引脚寄存器(FIOxPIN) 105

5.2.5 端口屏蔽寄存器(FIOxMASK) 105

5.3 GPIO构建小型声光报警系统实例 106

5.3.1 系统设计 106

5.3.2 硬件设计 106

5.3.3 软件设计 106

5.4 GPIO控制交流接触器实例 107

5.4.1 需求分析 107

5.4.2 硬件设计 107

5.4.3 软件设计 108

5.5 小结 109

第6章 嵌套向量中断 110

6.1 NVIC 110

6.1.1 特性 110

6.1.2 中断源 111

6.1.3 寄存器 113

6.1.4 软件中断 115

6.1.5 NVIC软件编程 116

6.2 外部中断 117

6.2.1 外部中断概述 117

6.2.2 外部中断寄存器 118

6.2.3 外部中断软件设计 120

6.3 GPIO中断 121

6.4 响应过零中断实例 124

6.4.1 需求分析 124

6.4.2 软件设计 125

6.5 小结 126

第7章 定时器 127

7.1 定时器概述 127

7.2 引脚与结构图 128

7.3 寄存器描述 129

7.4 定时器操作举例 136

7.5 软件设计 138

7.5.1 LPC 17XX的定时器固件库 138

7.5.2 定时器的用法 139

7.6 利用LPC 17XX实现频率计实例 141

7.6.1 硬件设计 141

7.6.2 软件设计 142

7.7 小结 144

第8章 通用异步接收/发送器UART 145

8.1 UART概述 145

8.1.1 UART的特点 145

8.1.2 UART的结构原理 146

8.1.3 UART的中断原理 147

8.1.4 基本配置 148

8.1.5 应用 148

8.2 引脚描述 149

8.3 寄存器 150

8.4 UART的编程基础 163

8.4.1 UART的数据处理方式 163

8.4.2 固件库 165

8.5 LPC 17XX与PC串口通信实例 168

8.5.1 硬件设计 168

8.5.2 软件设计 169

8.6 小结 175

第9章 ADC 176

9.1 ADC概述 176

9.2 引脚描述 178

9.3 寄存器 178

9.4 ADC硬件设计实例 185

9.5 LPC 17XX的ADCMSIS固件库 186

9.5.1 固件库的函数 186

9.5.2 固件库的用法 186

9.6 两路ADC通道同时采集实例 190

9.6.1 系统设计分析 190

9.6.2 软件设计 191

9.7 压力传感器A/D采集实例 196

9.7.1 需求分析 196

9.7.2 硬件设计 197

9.7.3 软件设计 197

9.8 小结 200

第10章 DAC 201

10.1 DAC概述 201

10.2 DAC寄存器 202

10.3 DAC实现波形发生器实例 204

10.4 语音报警系统实例 207

10.4.1 需求分析 207

10.4.2 硬件设计 208

10.4.3 软件设计 208

10.5 小结 213

第11章 SPI/SSP 214

11.1 SPI 215

11.1.1 LPC 17XX的SPI概述 215

11.1.2 LPC 17XX的SPI操作方式 215

11.1.3 SPI引脚 217

11.1.4 SPI的数据传输时序 219

11.1.5 SPI寄存器 220

11.2 SSP 224

11.2.1 SSP引脚 224

11.2.2 总线描述 225

11.2.3 寄存器描述 230

11.3 SPI/SSP驱动函数 235

11.4 LPC 17XX的数码管显示实例 237

11.4.1 硬件设计 238

11.4.2 软件设计 238

11.5 小结 240

第12章 I2C 241

12.1 I2C的原理 241

12.1.1 I2C的描述 241

12.1.2 I2C的特点 243

12.1.3 I2C的结构 244

12.2 I2C引脚 247

12.3 I2C操作模式 248

12.3.1 主发送模式 248

12.3.2 主接收模式 250

12.3.3 从接收模式 252

12.3.4 从发送模式 254

12.4 寄存器描述与驱动函数库 256

12.4.1 12C寄存器 256

12.4.2 驱动函数库 263

12.5 12C读写EEPROM实例 265

12.5.1 硬件电路设计 265

12.5.2 软件设计 266

12.6 小结 269

第13章 PWM 270

13.1 PWM概述 270

13.1.1 PWM描述 271

13.1.2 PWM的特性 272

13.1.3 引脚 272

13.2 结构 272

13.3 PWM波形形式 274

13.4 寄存器 275

13.5 PWM应用 282

13.5.1 PWM驱动函数及用法 283

13.5.2 利用双边沿PWM模拟带死区形式的PWM 284

13.6 PWM实现LED灯的亮度调节实例 287

13.6.1 硬件设计 287

13.6 2软件设计 287

13.7 小结 289

第14章 基于LPC1768温控系统的设计实例 290

14.1 系统需求 290

14.2 硬件设计 296

14.3 软件设计 298

14.4 小结 304

第15章 LPC1768的Modbus开关量 305

15.1 需求分析 305

15.1.1 开关量 305

15.1.2 现场总线 305

15.1.3 串行总线概述 306

15.2 硬件设计 307

15.3 软件设计 309

15.3.1 现场总线Modbus 309

15.3.2 Freemodbus的移植与使用 313

15.3.3 开关量操作函数 323

15.4 小结 325

参考文献 326