《嵌入式系统设计实战 基于飞思卡尔S12X微控制器》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:王宜怀,曹金华编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2011
  • ISBN:9787512404236
  • 页数:424 页
图书介绍:全书共12章,其中第1章为概述,阐述嵌入式系统的知识体系、学习误区与学习建议。第2章给出XS128硬件最小系统,并简要介绍S12XCPU(CPU12X)。第3章给出第一个样例程序及CodeWarrior工程组织,完成第一个S12X工程的入门。第4章给出基于硬件构件的嵌入式系统开发方法。第5章阐述串行通信接口SCI,并给出第一个带中断的实例。1-5章完成了学习一个新MCU完整要素(知识点)的入门。6-12章分别给出GPIO的应用(键盘、LED及LCD)、定时器(含PWM)、串行外设接口SPI、Flash存储器在线编程、CAN总线、A/D转换及S12XS128其他模块等。

第1章概述 1

1.1嵌入式系统定义、由来及特点 1

1.1.1嵌入式系统的定义 1

1.1.2嵌入式系统的由来及其与微控制器的关系 2

1.1.3嵌入式系统的特点 3

1.2嵌入式系统的知识体系、学习误区及学习建议 4

1.2.1嵌入式系统的知识体系 4

1.2.2嵌入式系统的学习误区 5

1.2.3基础阶段的学习建议 8

1.3嵌入式系统常用术语 10

1.3.1与硬件相关的术语 10

1.3.2与通信相关的术语 11

1.3.3与功能模块及软件相关的术语 12

1.4嵌入式系统常用的C语言基本语法 13

第2章S12X系列MCU硬件最小系统及CPU12X 26

2.1S12X系列MCU概述及型号标识 26

2.1.1S12X系列MCU概述 26

2.1.2S12X系列MCU型号标识 28

2.2S12X系列MCU的功能及存储器映像 29

2.2.1S12X系列MCU的功能 30

2.2.2S12X系列MCU的存储器映像及特点 31

2.3XS128的引脚功能及硬件最小系统 36

2.3.1XS128(80引脚QFP封装)的引脚功能 37

2.3.2XS128的硬件最小系统 40

2.3.3硬件最小系统的焊接与测试步骤 43

2.4CPU12X的内部寄存器 44

2.5CPU12X的寻址方式 47

2.6CPU12X指令系统概要 51

2.6.1数据传送类指令 53

2.6.2算术运算类指令 56

2.6.3逻辑运算类与位操作类指令 60

2.6.4程序控制类指令 63

2.6.5其他类指令 71

2.7CPU12X汇编语言基础 72

2.7.1S12X汇编源程序格式 72

2.7.2S12X汇编语言伪指令 74

第3章第一个样例程序及CodeWarrior工程组织 77

3.1通用I/O接口基本概念及连接方法一 77

3.2XS128的GPIO寄存器与GPIO构件封装 79

3.2.1XS128的GPIO寄存器 79

3.2.2GPIO的简单编程方法 83

3.3CodeWarrior开发环境与S08/S12/ColdFire三合一写入器 84

3.3.1CodeWarrior开发环境简介与基本使用方法 85

3.3.2S08/S12/ColdFire三合一写入器 86

3.3.3MC9S12XS128硬件评估板 87

3.4CW环境C语言工程文件的组织 87

3.4.1工程文件的逻辑组织结构 88

3.4.2工程文件的物理组织结构 90

3.4.3系统启动及初始化相关文件 91

3.4.4芯片初始化、主程序、中断程序及其他文件 98

3.4.5机器码文件(s19文件)的简明解释 101

3.4.6lst文件与map文件 103

3.4.7如何在CW环境下新建一个S12工程 105

3.5第一个C语言工程:控制小灯闪烁 105

3.5.1GPIO构件设计 106

3.5.2Light构件设计 113

3.5.3Light测试工程主程序 115

3.5.4理解第一个C工程的执行过程 116

3.6第一个汇编语言工程:控制小灯闪烁 117

3.6.1汇编工程文件的组织 118

3.6.2Light构件汇编程序 122

3.6.3Light测试工程主程序 124

3.6.4理解第一个汇编工程的执行过程 126

第4章基于硬件构件的嵌入式系统开发方法 129

4.1嵌入式系统开发所遇到的若干问题 129

4.2嵌入式硬件构件的基本思想与应用方法 130

4.3基于硬件构件的嵌入式系统硬件电路设计 131

4.3.1设计时需要考虑的基本问题 131

4.3.2硬件构件化电路原理图绘制的简明规则 133

4.3.3实验PCB板设计的简明规则 135

4.4基于硬件构件的嵌入式底层软件构件的编程方法 139

4.4.1嵌入式硬件构件和软件构件的层次模型 139

4.4.2底层构件的实现方法与编程思想 140

4.4.3硬件构件及底层软件构件的重用与移植方法 141

第5章串行通信接口SCI 144

5.1异步串行通信的通用基础知识 144

5.1.1串行通信的基本概念 145

5.1.2RS-232总线标准 146

5.1.3TTL电平到RS-232电平转换电路 148

5.1.4串行通信编程模型 149

5.2SCI模块的编程寄存器 150

5.3SCI编程实例 155

5.3.1SCI初始化与收发编程的基本方法 156

5.3.2SCI构件设计与测试实例 157

5.4XS128的中断源与第一个带有中断的编程实例 166

5.4.1中断与异常的通用知识 166

5.4.2XS128的中断机制 166

5.4.3XS128的中断编程方法 171

5.4.4XS128的中断优先级编程实例 173

第6章GPIO的应用实例:键盘、LED与LCD 175

6.1键盘技术概述 175

6.1.1键盘模型及接口 175

6.1.2键盘编程的基本问题 177

6.1.3键盘构件设计与测试实例 178

6.2LED技术概述 184

6.2.1扫描法LED显示编程原理 184

6.2.2LED构件设计与测试实例 186

6.3LCD技术概述 191

6.3.1LCD的特点和分类 191

6.3.2点阵字符型液晶显示模块 193

6.3.3HD44780 193

6.3.4LCD构件设计与测试实例 199

第7章定时器相关模块 207

7.1计数/定时器的基本工作原理 207

7.2定时器模块的基本编程方法与实例 208

7.2.1定时器模块计时功能的基本寄存器 210

7.2.2定时器构件设计与测试实例 212

7.3定时器模块输入捕捉功能的编程方法与实例 216

7.3.1输入捕捉的基本含义 216

7.3.2输入捕捉的寄存器 217

7.3.3输入捕捉构件设计与测试实例 218

7.4定时器模块输出比较功能的编程方法与实例 221

7.4.1输出比较的基本知识 222

7.4.2用于输出比较功能的相关寄存器 222

7.4.3输出比较构件设计与测试实例 224

7.5定时器模块脉冲累加功能的编程方法与实例 226

7.5.1脉冲累加的基本知识 226

7.5.2脉冲累加功能的相关寄存器 227

7.5.3脉冲累加器构件设计 228

7.6脉宽调制模块 231

7.6.1PWM工作原理 231

7.6.2XS128的PWM的特点及模块框图 232

7.6.3脉宽调制模块PWM相关寄存器 233

7.6.4PWM构件设计及测试实例 236

7.7周期中断定时器模块PIT 243

7.7.1PIT模块功能描述 243

7.7.2PIT模块的编程寄存器 245

7.7.3PIT构件设计与测试实例 248

第8章A/D与SPI 252

8.1A/D通用知识 252

8.1.1A/D的基本问题 252

8.1.2A/D转换器 253

8.1.3A/D转换常用传感器简介 254

8.1.4电阻型传感器采样电路设计 255

8.2A/D模块的编程寄存器 257

8.3A/D模块编程方法与实例 264

8.3.1A/D模块基本编程方法 264

8.3.2A/D构件设计与测试实例 265

8.4SPI的基本工作原理 270

8.4.1SPI基本概念 270

8.4.2SPI的数据传输 272

8.4.3SPI模块的时序 272

8.4.4模拟SPI 276

8.5SPI模块的编程寄存器 276

8.6SPI构件设计与测试实例 282

第9章Flash存储器在线编程 289

9.1S12X系列MCU的Flash存储器的特点及分页机制 289

9.1.1S12X系列MCU的Flash存储器的特点 290

9.1.2XS128的Flash存储器分页机制 290

9.2Flash存储器编程方法 295

9.2.1Flash存储器编程的基本概念 295

9.2.2Flash存储器的编程寄存器 296

9.2.3FCCOB-NVM命令模式 300

9.2.4Flash存储器的编程步骤 301

9.3D-Flash在线编程 303

9.4P-Flash在线编程 308

9.5Flash存储器的保护特性和安全性 313

9.5.1Flash存储器的配置区域 313

9.5.2Flash存储器的保护特性 314

9.5.3Flash存储器的安全性 317

第10章CAN总线 321

10.1CAN总线通用知识 321

10.1.1CAN总线协议的历史概况 321

10.1.2CAN硬件系统的典型电路 321

10.1.3CAN总线的有关基本概念 324

10.1.4帧结构 327

10.1.5位时间 331

10.2MSCAN模块简介 332

10.2.1MSCAN特性 333

10.2.2报文存储结构、标识符验收过滤与时钟系统 334

10.2.3CAN模块的主要运行模式、低功耗选项、中断与响应 341

10.3MSCAN模块的内存映射及寄存器定义 345

10.3.1MSCAN模块内存映射 345

10.3.2MSCAN模块寄存器 346

10.4MSCAN模块双机通信测试实例 360

10.4.1测试模型 360

10.4.2编程要点 360

10.4.3CAN模块底层构件设计 361

10.4.4测试操作要点 374

10.5MSCAN模块的自环通信实例 374

10.5.1测试模型 374

10.5.2编程要点及设计代码 374

第11章系统时钟与其他功能模块 378

11.1时钟与复位产生模块概述 378

11.1.1锁相环技术 378

11.1.2CRG模块框图 380

11.1.3CRG模块的工作模式 381

11.1.4XS128内部锁相环结构 383

11.2XS128的CRG模块的初始化 384

11.2.1XS128的CRG模块寄存器 384

11.2.2初始化编程方法与实例 389

11.3CRG模块的其他功能 392

11.3.1CRG产生复位信号 392

11.3.2中断 397

11.4XS128的IRQ、XIRQ引脚、RTIBRK及SWI中断 398

11.4.1IRQ与XIRQ引脚中断 398

11.4.2实时中断 398

11.4.3调试模块DBG与软件中断SWI指令 399

附录A XS128的映像寄存器 400

附录B S08/S12/ColdFireBDM简明使用方法 410

附录C 常见实践问题集锦 414

附录D XS128的C语言函数库 417

附录E XS128的中断源与中断向量表 421

参考文献 424