MC9S12XS单片机原理及嵌入式系统开发


请输入要查询的词条内容:

MC9S12XS单片机原理及嵌入式系统开发




出版信息


作者:张阳(作者), 吴晔(作者), 滕勤(作者), 等 (作者)

出版社: 电子工业出版社; 第1版 (2011年9月1日)

丛书名: 嵌入式技术与应用丛书

平装: 330页

正文语种: 简体中文

开本: 16

ISBN: 9787121145483, 7121145480

条形码: 9787121145483

商品尺寸: 25.8 x 18.4 x 1.8 cm

商品重量: 599 g

内容简介


《MC9S12XS单片机原理及嵌入式系统开发》以全国大学生“飞思卡尔”杯智能汽车竞赛组委会推荐使用的飞思卡尔MC9S12XS128为主,详细讲述MC9S12XS128单片机的原理以及嵌入式系统的开发技术。《MC9S12XS单片机原理及嵌入式系统开发》首先介绍嵌入式系统和HCS12系列单片机的基础知识,对C语言的嵌入式编程进行了简要的说明,然后对MC9S12XS128的输入/输出端口、中断系统、脉宽调制、模/数转换、定时器、定时器、SPI和I2C等模块进行了详实的讲解,并给出相应的应用实例,最后针对全国大学生“飞思卡尔”杯智能汽车竞赛给出综合应用实例。

编辑推荐


《MC9S12XS单片机原理及嵌入式系统开发》选用全国大学生“飞思卡尔”杯智能汽车竞赛组委会推荐的MC9S12XS128,深入讲解基于MC9S12XS128的嵌入式系统设计,给出大量关于智能汽车竞赛的应用实例,配有教学课件,方便教学使用。

目录


第1章 嵌入式系统简介 1

1.1 嵌入式系统 1

1.1.1 系统 1

1.1.2 嵌入式系统 1

1.1.3 嵌入式系统的分类 2

1.2 嵌入式系统硬件 3

1.2.1 嵌入式微处理器 3

1.2.2 嵌入式微控制器 3

1.2.3 嵌入式DSP处理器 4

1.2.4 嵌入式片上系统 4

1.3 嵌入式系统软件 4

1.4 嵌入式操作系统 5

1.4.1 嵌入式操作系统的种类 5

1.4.2 嵌入式操作系统的发展 5

1.4.3 使用实时操作系统的必要性 6

1.4.4 实时操作系统的优缺点 6

1.5 嵌入式系统开发方法 6

第2章 Freescale HCS12和HCS12X系列单片机简介 8

2.1 HCS12系列单片机概述 8

2.1.1 HCS12系列单片机的命名规则 8

2.1.2 HCS12系列单片机简介 9

2.2 HCS12X系列单片机概述 10

2.2.1 HCS12X系列单片机主要特点 10

2.2.2 XGATE协处理器与主处理器的关系 11

2.2.3 XGATE的基本特性 12

2.2.4 典型S12X系列单片机简介 14

2.3 MC9S12XS128简介 15

2.3.1 MC9S12XS128性能概述 15

2.3.2 MC9S12XS128内部结构、主要特性及引脚 15

2.3.3 MC9S12XS128引脚功能 24

2.4 CPU12(X)核 27

2.4.1 CPU12(X)核特性 27

2.4.2 编程模型 27

2.5 MC9S12XS128的存储器映射 30

2.6 MC9S12XS128内部锁相环模块PLL 31

2.6.1 CRG时钟合成寄存器(SYNR) 32

2.6.2 CRG时钟参考分频寄存器(REFDV) 32

2.6.3 CRG时钟后分频寄存器(POSTDIV) 33

2.6.4 CRG标志寄存器(CRGFLG) 33

2.6.5 CRG时钟选择寄存器(CLKSEL) 34

2.6.6 CRG IPLL控制寄存器(PLLCTL) 35

2.6.7 CRG中断使能寄存器(CRGINT) 36

2.6.8 CRG IPLL模块应用实例 36

第3章 S12X指令系统 38

3.1 概述 38

3.2 S12X汇编指令的格式和符号说明 38

3.2.1 操作码和操作数 39

3.2.2 数据类型 39

3.2.3 数据表示方法 39

3.2.4 寄存器和存储器表示法 40

3.3 寻址方式(Addressing Mode) 40

3.3.1 隐含/固有寻址(Inherent Addressing,INH) 40

3.3.2 立即寻址(Immediate Addressing,IMM) 41

3.3.3 直接寻址(Direct Addressing,DIR) 42

3.3.4 扩展寻址(Extended Addressing,EXT) 42

3.3.5 相对寻址(Relative Addressing,REL ) 43

3.3.6 变址寻址(Indexed Addressing,IDX) 44

3.3.7 全局寻址(Global Page Index Register) 50

3.4 S12X汇编指令系统 50

3.4.1 数据传送指令 50

3.4.2 算术运算指令 58

3.4.3 逻辑运算指令 66

3.4.4 高级函数指令 71

3.4.5 程序控制指令 74

3.4.6 S12X控制指令 77

3.5 汇编程序伪指令 79

3.5.1 段定义指令 79

3.5.2 常量赋值指令 81

3.5.3 常量存储指令 82

3.5.4 分配变量指令 84

3.5.5 汇编控制指令 85

3.5.6 符号链接指令 85

第4章 C语言的嵌入式编程 87

4.1 编程语言的选择 87

4.2 C语言编程元素 88

4.2.1 全局变量和局部变量 88

4.2.2 头文件 88

4.2.3 编译预处理 89

4.2.4 数据类型 91

4.2.5 运算符 93

4.2.6 指针 95

4.2.7 条件语句、循环语句及无限循环语句 95

4.2.8 函数 98

4.3 C程序编译器与交叉编译器 101

4.4 CodeWarrior软件简介 102

4.4.1 CodeWarrior的安装 102

4.4.2 CodeWarrior使用简介 104

第5章 MC9S12XS输入/输出端口模块及其应用实例 110

5.1 输入/输出端口简介 110

5.2 输入/输出端口寄存器及设置 110

5.2.1 PORTA、PORTB、PORTE和PORTK 112

5.2.2 PORTT、PORTS、PORTM、PORTP、PORTH和PORTJ 114

5.2.3 A/D端口用做数字I/O口 116

5.3 输入/输出端口应用实例 118

5.3.1 控制输出设备LED实例 118

5.3.2 读取输入设备拨码开关状态实例 120

5.4 输入/输出端口在智能车系统中的应用 121

5.4.1 键盘接口设计 121

5.4.2 LED显示接口设计 122

5.4.3 LCD显示接口设计 124

第6章 MC9S12系列中断系统 129

6.1 MC9S12系列中断系统概述 129

6.1.1 复位 130

6.1.2 中断 131

6.2 MC9S12系列中断优先级 132

6.3 MC9S12系列中断程序应用实例 135

第7章 MC9S12XS系列脉宽调制模块及其应用实例 139

7.1 PWM模块概述 139

7.2 PWM模块结构组成和特点 139

7.3 PWM模块寄存器及设置 140

7.3.1 PWM使能寄存器(PWME) 141

7.3.2 PWM极性寄存器(PWMPOL) 142

7.3.3 PWM时钟选择寄存器(PWMCLK) 143

7.3.4 PWM预分频时钟选择寄存器(PWMPRCLK) 144

7.3.5 PWM居中对齐使能寄存器(PWMCAE) 145

7.3.6 PWM控制寄存器(PWMCTL) 146

7.3.7 PWM比例因子A寄存器(PWMSCLA) 148

7.3.8 PWM比例因子B寄存器(PWMSCLB) 148

7.3.9 PWM通道计数器(PWMCNT) 149

7.3.10 PWM通道周期寄存器(PWMPER) 149

7.3.11 PWM通道占空比寄存器(PWMDTY) 150

7.3.12 PWM关闭寄存器(PWMSDN) 152

7.4 PWM模块应用实例 153

7.5 PWM模块在智能车系统中的应用 155

7.5.1 应用PWM模块控制直流电动机 155

7.5.2 应用PWM模块控制伺服电动机 157

第8章 MC9S12XS128模/数转换模块及其应用实例 159

8.1 ATD模块概述 159

8.2 ATD模块结构组成和特点 159

8.3 ATD模块寄存器及设置 161

8.3.1 ATD控制寄存器0(ATDCTL0) 161

8.3.2 ATD控制寄存器1(ATDCTL1) 162

8.3.3 ATD控制寄存器2(ATDCTL2) 164

8.3.4 ATD控制寄存器3(ATDCTL3) 165

8.3.5 ATD控制寄存器4(ATDCTL4) 167

8.3.6 ATD控制寄存器5(ATDCTL5) 167

8.3.7 ATD状态寄存器0(ATDSTAT0) 169

8.3.8 ATD比较使能寄存器(ATDCMPE) 170

8.3.9 ATD状态寄存器2(ATDSTAT2) 170

8.3.10 ATD输入使能寄存器(ATDDIEN) 171

8.3.11 ATD比较大于寄存器(ATDCMPHT) 171

8.3.12 ATD转换结果寄存器(ATDDRn) 172

8.4 ATD模块应用实例 173

8.5 ATD模块在智能车系统中的应用 174

8.5.1 ATD模块在基于光电管路径识别方案中的应用 174

8.5.2 ATD模块在基于摄像头路径识别方案中的应用 176

第9章 MC9S12XS128定时器模块及其应用实例 180

9.1 TIM模块概述 181

9.2 TIM模块结构和工作原理 181

9.2.1 TIM模块结构 181

9.2.2 TIM模块工作原理 181

9.2.3 TIM模块寄存器 184

9.2.4 TIM模块中断系统 186

9.3 TIM模块的自由运行计数器和定时器基本寄存器及设置 187

9.3.1 自由运行主定时器与时钟频率设置 187

9.3.2 TIM模块基本寄存器及设置 188

9.4 TIM模块的输入捕捉功能及寄存器设置 191

9.4.1 TIM模块输入捕捉功能 192

9.4.2 与输入捕捉功能相关的寄存器及设置 192

9.5 TIM模块的输出比较功能及寄存器设置 195

9.5.1 TIM模块输出比较功能 195

9.5.2 与输出比较功能相关的寄存器及设置 196

9.6 TIM模块的脉冲累加器功能及寄存器设置 199

9.6.1 TIM模块脉冲累加器功能 199

9.6.2 与脉冲累加器相关的寄存器及设置 201

9.7 TIM模块应用实例 203

9.7.1 输入捕捉功能应用实例 203

9.7.2 输出比较功能应用实例 205

9.7.3 脉冲累加器功能应用实例 211

9.8 TIM模块在智能车系统中的应用 215

9.8.1 TIM模块输入捕捉功能在智能车系统中的应用 215

9.8.2 TIM模块脉冲累加器功能在智能车系统中的应用 215

第10章 MC9S12XS128周期性中断定时器模块及其应用实例 217

10.1 PIT模块概述 217

10.2 PIT模块结构和工作原理 217

10.2.1 PIT模块结构 217

10.2.2 PIT模块工作原理 218

10.3 PIT模块寄存器及设置 220

10.3.1 PIT控制和强制装载微定时寄存器(PITCFLMT) 221

10.3.2 PIT强制装载定时寄存器(PITFLT) 221

10.3.3 PIT通道使能寄存器(PITCE) 222

10.3.4 PIT复用寄存器(PITMUX) 222

10.3.5 PIT中断使能寄存器(PITINTE) 222

10.3.6 PIT超时标志寄存器(PITTF) 223

10.3.7 PIT微定时装载寄存器0和1(PITMTLD0/1) 223

10.3.8 PIT装载寄存器0~3(PITLD0~3) 223

10.3.9 PIT计数寄存器0~3(PITCNT0~3) 224

10.4 PIT模块应用实例 224

10.5 PIT模块在智能车系统中的应用 226

第11章 MC9S12XS系列串行通信接口模块及其应用实例 234

11.1 SCI模块概述 234

11.2 SCI模块结构组成和特点 234

11.3 SCI模块寄存器 235

11.3.1 SCI波特率寄存器(SCIBDH,SCIBDL) 236

11.3.2 SCI控制寄存器1(SCICR1) 237

11.3.3 SCI可选状态寄存器1(SCIASR1) 238

11.3.4 SCI可选控制寄存器1(SCIACR1) 239

11.3.5 SCI可选控制寄存器2(SCIACR2) 240

11.3.6 SCI控制寄存器2(SCICR2) 240

11.3.7 SCI状态寄存器1(SCISR1) 241

11.3.8 SCI状态寄存器2(SCISR2) 243

11.3.9 SCI数据寄存器(SCIDRH,SCIDRL) 244

11.4 SCI模块应用实例 244

11.5 SCI模块在智能车系统中的应用 248

第12章 MC9S12系列SPI和I2C模块及其应用实例 251

12.1 SPI模块 251

12.2 SPI模块结构组成和特点 252

12.3 SPI模块寄存器及设置 253

12.3.1 SPI控制寄存器1(SPICR1) 253

12.3.2 SPI控制寄存器2(SPICR2) 255

12.3.3 SPI波特率寄存器(SPIBR) 256

12.3.4 SPI状态寄存器(SPISR) 258

12.3.5 SPI数据寄存器(SPIDR:SPIDRH,SPIDRL) 260

12.4 SPI模块应用实例 260

12.5 I2C总线接口 262

12.5.1 I2C总线概述 262

12.5.2 I2C总线工作原理 263

12.6 I2C模块结构组成和特点 265

12.7 I2C模块寄存器及设置 266

12.7.1 I2C总线地址寄存器(IBAD) 267

12.7.2 I2C总线分频寄存器(IBFD) 267

12.7.3 I2C总线控制寄存器(IBCR) 268

12.7.4 I2C总线状态寄存器(IBSR) 269

12.7.5 I2C总线数据输入/输出寄存器(IBDR) 271

12.8 I2C模块在智能车系统中的应用 271

第13章 综合应用实例 275

13.1 概述 275

13.2 综合应用实例1 275

13.2.1 系统组成 275

13.2.2 A/D输入接口 276

13.2.3 显示接口 276

13.2.4 通信接口 277

13.2.5 应用软件设计 277

13.2.6 软件流程图 281

13.3 综合应用实例2 283

13.3.1 系统组成 283

13.3.2 MircoSD卡接口 283

13.3.3 通信接口 284

13.3.4 SD卡工作电源 284

13.3.5 应用软件设计 284

13.3.6 MircoSD卡应用软件设计 286

13.3.7 软件流程图 288

13.4 综合应用实例3 290

13.4.1 系统组成 291

13.4.2 A/D输入接口 291

13.4.3 显示接口 291

13.4.4 直流电动机驱动接口 291

13.4.5 测速输入信号调理电路 293

13.4.6 伺服电动机驱动接口 293

13.4.7 应用软件设计 293

13.4.8 软件流程图 295

13.5 综合应用实例4 297

13.5.1 系统组成 297

13.5.2 起始线信号检测方法 297

13.5.3 应用软件设计 299

13.5.4 软件流程图 300

附录A S12汇编指令系统汇总表 303

附录B S12汇编指令系统汇总表解释说明 317

附录C S12汇编指令机器码汇总表 322

附录D S12X汇编指令机器码汇总表解释说明 326

附录E HS12实验开发平台 327

参考文献 331