《嵌入式系统教程 基于Tiva C系列ARM Cortex-M4微控制器》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:沈建华,郝立平等编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2015
  • ISBN:9787512417588
  • 页数:493 页
图书介绍:本书介绍了嵌入式系统的基础知识,并以ARM Cortex-M4内核MCU TM4C123x为核心,详细讲述了MCU应用相关的各种外设模块的原理和编程结构,并给出很多操作例程代码,包括电源与时钟管理、存储器、通用输入输出(GPIO)、定时器、PWM、异步和同步通信接口(UART、SPI、I2C等)、模拟外设(ADC、DAC、AC)等。同时,对嵌入式软件设计方法、嵌入式C语言基础、RTOS等作了简明阐述。最后介绍了MCU的软硬件开发环境、软件库,以及低功耗设计和电磁兼容性基础等。本书配套有完整的教学资源,包括PPT课件、DY-Tiva-PB口袋实验平台和实验指导书等。本书可作为高等院校计算机、电子、自动化、仪器仪表等专业嵌入式系统、微机接口、单片机等课程的教材,也适合广大从事单片机应用系统开发的工程技术人员作为学习、参考用书。

第1章 嵌入式系统与微控制器 1

1.1 嵌入式系统概述 1

1.1.1 嵌入式系统的发展与应用 2

1.1.2 嵌入式系统的特点 4

1.1.3 嵌入式系统的组成 4

1.1.4 嵌入式系统的种类 6

1.1.5 嵌入式系统的调试方法 7

1.2 MCU概述 11

1.2.1 MCU的发展历史 11

1.2.2 MCU的特点 13

1.3 ARMCortex-M4处理器简介 13

1.3.1 ARM处理器架构 13

1.3.2 Cortex-M4处理器 14

1.4 Tiva系列MCU 16

1.4.1 TM4C123系列 16

1.4.2 TM4C129系列 17

1.5 TM4C123GH6PM引脚与电气特性 18

1.5.1 GPIO引脚功能选择 19

1.5.2 TM4C123GH6PM电气特性 21

思考题与习题 26

第2章 系统控制 27

2.1 功能描述 27

2.1.1 器件标识 27

2.1.2 复位控制 27

2.1.3 电源控制 32

2.1.4 时钟控制 33

2.1.5 非屏蔽中断 40

2.1.6 低功耗模式控制 41

2.2 初始化及配置 46

2.3 操作示例 47

2.3.1 程序流程图 47

2.3.2 库函数说明 47

2.3.3 示例代码 49

2.3.4 操作现象 50

思考题与习题 50

第3章 存储器 52

3.1 存储器简介 52

3.1.1 SRAM 53

3.1.2 DRAM 55

3.1.3 ROM 56

3.1.4 Flash 56

3.1.5 EEPROM 58

3.1.6 存储器扩展 58

3.1.7 地址译码 60

3.2 存储器空间映射 62

3.2.1 普林斯顿结构 62

3.2.2 哈佛结构 63

3.2.3 大小端模式 64

3.3 Tiva微控制器存储器 65

3.3.1 TM4C123GH6PM存储器地址映射 66

3.3.2 TM4C123GH6PM的ROM 66

3.3.3 TM4C123GH6PM的Flash 66

3.3.4 EEPROM 68

3.4 操作示例 71

3.4.1 程序流程图 71

3.4.2 库函数说明 71

3.4.3 示例代码 73

3.4.4 操作现象 74

思考题与习题 75

第4章 基本接口与外设 77

4.1 通用输入/输出(GPIO) 77

4.1.1 GPIO简介 77

4.1.2 Tiva微控制器GPIO 81

4.1.3 数据控制 86

4.1.4 中断控制 87

4.1.5 初始化及配置 88

4.1.6 操作示例 91

4.2 通用定时器(Timer) 102

4.2.1 定时器简介 103

4.2.2 Tiva微控制器定时器 103

4.2.3 初始化及配置 121

4.2.4 操作示例 124

4.3 脉冲宽度调节器(PWM) 129

4.3.1 PWM简介 129

4.3.2 Tiva微控制器PWM 130

4.3.3 初始化及配置 140

4.3.4 操作示例 141

4.4 看门狗定时器(WDT) 146

4.4.1 WDT简介 146

4.4.2 Tiva微控制器WDT 147

4.4.3 初始化及配置 149

4.4.4 操作示例 150

4.5 微型直接内存访问(μDMA) 155

4.5.1 DMA传输数据过程 155

4.5.2 Tiva微控制器μDMA介绍 156

4.5.3 初始化及配置 170

4.5.4 操作示例 176

4.6 休眠控制与RTC 190

4.6.1 休眠模块简介 191

4.6.2 Tiva微控制器休眠模块与RTC 191

4.6.3 初始化及配置 200

4.6.4 操作示例 203

思考题与习题 207

第5章 通信接口与外设 208

5.1 基本概念 208

5.2 异步串行通信接口(UART) 209

5.2.1 UART简介 209

5.2.2 Tiva微控制器的UART 216

5.2.3 初始化及配置 225

5.2.4 操作示例 226

5.3 同步串行接口(SSI) 230

5.3.1 SSI简介 230

5.3.2 数据传输 230

5.3.3 极性、相位和帧格式 231

5.3.4 Tiva微控制器的SSI 234

5.3.5 初始化及配置 237

5.3.6 操作示例 237

5.4 I2C接口 242

5.4.1 I2C简介 242

5.4.2 Tiva微控制器的I2C 254

5.4.3 初始化及配置 258

5.4.4 操作示例 259

5.5 CAN模块 268

5.5.1 CAN简介 268

5.5.2 Tiva微控制器的CAN 270

5.6 USB控制器 287

5.6.1 USB简介 288

5.6.2 Tiva微控制器的USB 290

思考题与习题 311

第6章 模拟外设 313

6.1 模/数转换器(ADC) 313

6.1.1 ADC简介 313

6.1.2 Tiva微控制器的ADC 315

6.1.3 数据比较器单元 326

6.1.4 初始化及配置 329

6.1.5 操作示例 331

6.2 模拟比较器(AC) 337

6.2.1 AC简介 337

6.2.2 Tiva微控制器的AC 338

6.2.3 初始化及配置 343

6.2.4 操作示例 343

6.3 数/模转换器(DAC) 347

6.3.1 DAC7512的基本原理与特点 348

6.3.2 DAC工作模式 349

6.4 正交编码器(QEI) 350

6.4.1 Tiva微控制器的QEI 350

6.4.2 中断控制 355

6.4.3 初始化及配置 355

思考题与习题 355

第7章 嵌入式软件设计 357

7.1 嵌入式C语言基础 357

7.1.1 嵌入式C语言程序设计 357

7.1.2 编程风格 359

7.1.3 数据类型及声明 369

7.1.4 操作符与表达式 375

7.2 嵌入式系统软件组成 378

7.2.1 裸机嵌入式系统软件 378

7.2.2 初始化引导程序 379

7.2.3 设备驱动程序 379

7.2.4 库函数 380

7.3 嵌入式系统软件设计方法 380

7.3.1 前后台系统 380

7.3.2 中断(事件)驱动系统 381

7.3.3 巡回服务系统 382

7.3.4 基于定时器的巡回服务系统 382

7.4 RTOS基础 383

7.4.1 RTOS的基本概念 383

7.4.2 使用RTOS的优势 384

7.4.3 RTOS的功能组成 385

7.4.4 常用的RTOS 388

7.5 FreeRTOS 389

7.5.1 FreeRTOS的体系结构 389

7.5.2 FreeRTOS系统的任务调度机制 390

7.5.3 FreeRTOS系统的任务管理机制 391

7.5.4 FreeRTOS任务通信与同步机制 392

7.5.5 FreeRTOS移植到微控制器的方法 393

7.6 FreeRTOS操作示例 393

7.6.1 FreeRTOS库函数说明 393

7.6.2 示例代码 396

思考题与习题 401

第8章 低功耗与电磁兼容 403

8.1 低功耗设计方法 403

8.1.1 利用I/O引脚为外部器件供电 403

8.1.2 电源管理单元的设计 404

8.1.3 动态改变CPU的时钟频率 404

8.1.4 软件系统的低功耗设计 405

8.2 电源设计 408

8.2.1 电池的选择 408

8.2.2 超低静态电流LDO 414

8.2.3 直流/直流转换器 416

8.3 电磁兼容性 419

8.3.1 电磁干扰的形成 419

8.3.2 电磁兼容的常用元器件 421

8.3.3 电磁兼容的常用技巧 423

思考题与习题 427

第9章 软件开发环境 429

9.1 常用软件开发工具 429

9.2 Keil MDK简介 430

9.2.1 Keil MDK-ARM的安装 431

9.2.2 Keil MDK-ARM工程的建立与调试 436

9.3 CCSv6软件开发环境 445

9.3.1 CCSv6概述 445

9.3.2 CCSv6安装 445

9.3.3 CCSv6工程开发 448

9.4 TivaWare库 453

9.4.1 外设驱动库 453

9.4.2 图形库 454

9.4.3 USB库 455

9.4.4 IQMath库 457

9.4.5 传感器库 457

思考题与习题 457

第10章 硬件实验平台 458

10.1 LaunchPad概述 459

10.1.1 BoosterPacks 460

10.1.2 规格 460

10.2 LaunchPad硬件资源 461

10.2.1 功能描述 468

10.2.2 电源管理 471

10.2.3 内部电路调试接口(ICDI) 472

10.3 DY-Tiva-PB扩展板简介 472

10.3.1 DY-Tiva-PB硬件规格 477

10.3.2 DY-Tiva-PB功能单元介绍 477

10.3.3 DY-Tiva-PB实验目录 482

思考题与习题 483

附录 TivaWare库函数清单 484

参考文献 493