第1章 微控制器概述 1
1.1 微控制器简介及现状 1
1.2 Freescale微控制器 4
1.3 S12系列微控制器 5
1.4 S12X系列微控制器 7
第2章 S12微控制器的组成 10
2.1 S12系列微控制器的特点 10
2.2 MC9S12DG128的结构 12
2.3 MC9S12DG128的引脚功能 12
2.3.1 引脚封装与功能 12
2.3.2 引脚功能描述 18
2.4 操作模式 23
2.5 振荡电路 25
2.6 系统运行监视 25
2.7 实时中断 31
2.8 复位功能 32
第3章 S12存储器 34
3.1 S12MCU存储器的分类及特点 34
3.2 MC9S12DG128存储器的组织 35
3.2.1 存储器地址分配 35
3.2.2 RAM地址映射 36
3.2.3 寄存器地址映射 37
3.2.4 EEPROM地址映射 37
3.2.5 FLASH/RAM地址映射及综合控制寄存器 38
3.3 S12CPU寄存器 38
3.4 FLASH存储器 40
3.4.1 FLASH存储器的组织 40
3.4.2 FLASH存储器的页面管理 40
3.4.3 FLASH存储器的擦写保护 42
3.5 EEPROM存储器 42
第4章 S12指令系统 44
4.1 指令系统简介 44
4.1.1 S12内部寄存器 44
4.1.2 汇编指令格式 45
4.2 寻址方式 46
4.2.1 各种寻址方式 46
4.2.2 变址寻址方式 48
4.3 常用基本指令 49
4.3.1 数据传送类指令 50
4.3.2 算术运算类指令 55
4.3.3 逻辑指令 59
4.3.4 程序控制类指令 62
4.3.5 中断指令 66
4.3.6 S12CPU控制类指令 67
4.3.7 其他指令 68
第5章 S12汇编程序设计与实例 69
5.1 汇编语言程序基础 69
5.1.1 汇编语言指令格式 69
5.1.2 数据的表示方法 72
5.2 汇编程序伪指令 72
5.3 汇编语言程序设计实例 75
5.3.1 常用子程序的设计 75
5.3.2 S12教学实验系统实例 79
第6章 S12输入/输出端口 93
6.1 I/O端口功能简介 93
6.1.1 I/O端口简介 93
6.1.2 I/O端口功能 94
6.1.3 I/O端口的异常处理 96
6.2 I/O端口设置 96
6.3 人机交互接口设计 112
6.3.1 独立式按键接口 112
6.3.2 矩阵式键盘接口 114
6.3.3 按键开关去抖动 122
6.4 LED数码管显示接口 123
6.4.1 LED数码管的工作原理 124
6.4.2 6位七段式LED显示驱动程序设计 126
第7章 S12中断系统 129
7.1 中断系统概述 129
7.1.1 S12的特殊中断 130
7.1.2 S12的普通中断 130
7.1.3 中断优先级 133
7.2 S12中断处理 134
7.2.1 S12中断处理基本流程 134
7.2.2 中断发生的现场保护 135
7.2.3 中断处理程序 135
7.3 中断程序设计 136
7.3.1 外部中断程序示例 137
7.3.2 使用中断优先级 138
第8章 S12定时器模块 140
8.1 定时器模块概述 140
8.2 输入捕捉/输出比较 141
8.2.1 输入捕捉 141
8.2.2 输出比较 145
8.3 脉冲累加器和模数计数器 149
8.3.1 脉冲累加器 150
8.3.2 模数计数器 151
8.3.3 脉冲累加器和模数计数器设计实例 153
第9章 S12模/数转换模块 155
9.1 A/D转换模块概述 155
9.2 A/D转换主要技术指标 156
9.3 ATD模块的原理 156
9.3.1 ATD模块的采样通道与转换序列 156
9.3.2 转换时间与转换方式 157
9.3.3 电源与低功耗模式 158
9.3.4 转换结果对齐方式 158
9.4 ATD模块寄存器 159
9.4.1 ATD0控制寄存器 160
9.4.2 ATD0状态寄存器 164
9.4.3 ATD0结果寄存器 165
9.5 ATD模块的应用与实例 166
第10章 S12脉宽调制模块 168
10.1 PWM概述 168
10.2 PWM结构和原理 169
10.2.1 PWM工作原理 169
10.2.2 PWM输出信号的周期与脉宽 171
10.2.3 通道级联 172
10.2.4 时钟源 173
10.3 PWM的操作设置 173
10.4 PWM的应用与实例 180
10.4.1 PWM用作输出脉冲序列 180
10.4.2 PWM用作D/A转换 181
第11章 S12串行口通信模块 183
11.1 SPI串行通信模块 183
11.1.1 SPI工作模式 184
11.1.2 SPI寄存器 185
11.2 SCI串行通信接口 190
11.2.1 SCI串行通信接口的特点 191
11.2.2 SCI的设置 191
11.3 串行通信接口的应用 195
11.3.1 SPI串行通信模块的应用 195
11.3.2 串行通信接口的应用程序 197
第12章 S12微控制器应用实例 199
12.1 简单温度测控系统 199
12.1.1 水温检测仪的系统方案 199
12.1.2 水温检测仪的硬件设计 199
12.1.3 水温检测仪的软件设计 200
12.2 液晶显示模块 209
12.2.1 LCM12864C1简介 209
12.2.2 LCM12864C1与S12接口电路设计 210
12.2.3 LCM12864C1软件设计 211
12.3 视频解码LM1881与S12接口设计 220
12.3.1 视频信号简介 220
12.3.2 AV视频信号解码芯片LM1881 220
12.3.3 解码方案设计 222
12.3.4 采集制定行方案源程序 226
12.4 EEPROM应用实例 231
12.4.1 EEPROM的地址映射与保护 231
12.4.2 EEPROM的相关寄存器 232
12.4.3 擦除与编程操作源程序 235
第13章 HCS12在线调试 241
13.1 核心开发板硬件连接 241
13.2 PC机的设置 242
13.3 监控命令 243
13.4 编译器CodeWarrior 3.1 for S12使用方法入门 245
13.5 完全软件仿真 254
13.6 在线仿真和下载程序 255
附录 汇编指令表 258
参考文献 268