第1章 微型计算机基础 1
1.1 数制与编码 1
1.1.1 数制及转换方法 1
1.1.2 微型计算机中数的表示方法 4
1.1.3 微型计算机中常用编码 6
1.2 微型计算机原理 7
1.2.1 微型计算机的基本组成 7
1.2.2 指令、程序与编程语言 9
1.2.3 微型计算机的工作过程 9
1.2.4 微型计算机的应用形态 11
本章小结 11
习题与思考题 12
第2章 STC15F2K60S2单片机增强型8051内核 13
2.1 单片机概述 13
2.1.1 单片机的概念 13
2.1.2 常见单片机 13
2.1.3 STC系列单片机 14
2.2 STC15F2K60S2单片机资源概述与引脚功能 15
2.2.1 STC15F2K60S2单片机资源与功能概述 15
2.2.2 STC15F2K60S2单片机引脚功能 15
2.3 STC15F2K60S2单片机的内部结构 19
2.3.1 STC15F2K60S2单片机的内部结构框图 19
2.3.2 CPU结构 20
2.4 STC15F2K60S2单片机的存储结构 21
2.5 STC15F2K60S2单片机的并行I/O端口 26
2.5.1 STC15F2K60S2单片机的并行I/O端口与工作模式 26
2.5.2 STC15F2K60S2单片机的并行I/O端口的结构 27
2.5.3 STC15F2K60S2单片机并行I/O端口的使用注意事项 29
2.6 STC15F2K60S2单片机的时钟与复位 31
2.6.1 STC15F2K60S2单片机的时钟 31
2.6.2 STC15F2K60S2单片机的复位 33
本章小结 35
习题与思考题 36
第3章 STC15F2K60S2单片机的在线编程与在线仿真 37
3.1 KeilμVision4集成开发环境 37
3.1.1 概述 37
3.1.2 应用KeilμVision4开发工具编辑、编译用户程序,生成机器代码 38
3.1.3 应用KeilμVision4集成开发环境调试用户程序 45
3.2 STC系列单片机在线编程 53
3.2.1 STC系列单片机在系统可编程(ISP)电路 53
3.2.2 安装USB转串口驱动程序 54
3.2.3 单片机应用程序的下载与运行 56
3.2.4 STC-ISP在线编程软件的其他功能 57
3.3 Proteus模拟仿真软件 57
3.3.1 Proteus绘制电原理图 58
3.3.2 Proteus模拟仿真软件实施单片机仿真 63
本章小结 64
习题与思考题 65
第4章 STC15F2K60S2单片机的指令系统 67
4.1 概述 67
4.2 数据传送类指令 73
4.3 算术运算类指令(24条) 79
4.4 逻辑运算与循环移位类指令(24条) 84
4.5 控制转移类指令(17条) 88
4.6 位操作类指令(17条) 94
本章小结 98
习题与思考题 99
第5章 STC15F2K60S2单片机的程序设计 102
5.1 汇编语言程序设计 102
5.1.1 汇编语言程序设计基础 102
5.1.2 基本程序结构与程序设计举例 107
5.2 C51程序设计 116
5.2.1 C51基础 116
5.2.2 C51程序设计 125
本章小结 131
习题与思考题 131
第6章 STC15F2K60S2单片机存储器的应用 133
6.1 STC15F2K60S2单片机的程序存储器 133
6.2 STC15F2K60S2单片机的基本RAM 135
6.3 STC15F2K60S2单片机的扩展RAM(XRAM) 136
6.4 STC15F2K60S2单片机的EEPROM(数据Flash) 140
本章小结 148
习题与思考题 148
第7章 STC15F2K60S2单片机的定时/计数器 149
7.1 STC15F2K60S2单片机定时/计数器(T0/T1)的结构和工作原理 149
7.2 STC15F2K60S2单片机定时/计数器(T0/T1)的控制 150
7.3 STC15F2K60S2单片机定时/计数器(T0/T1)的工作方式 152
7.4 STC15F2K60S2单片机定时/计数器(T0/T1)的应用举例 156
7.4.1 STC15F2K60S2单片机定时/计数器(T0/T1)的定时应用 156
7.4.2 STC15F2K60S2单片机定时/计数器(T0/T1)的计数应用 158
7.4.3 T0、T1的综合应用 159
7.5 STC15F2K60S2单片机的定时/计数器T2 162
7.5.1 STC15F2K60S2单片机的定时/计数器T2的电路结构 162
7.5.2 STC15F2K60S2单片机的定时/计数器T2的控制寄存器 162
7.6 STC15F2K60S2单片机的可编程时钟输出功能 164
7.6.1 STC15F2K60S2单片机的可编程输出时钟:CLKOUT0、CLKOUT1、CLKOUT2 164
7.6.2 STC15F2K60S2单片机可编程时钟的应用举例 165
本章小结 166
习题与思考题 167
第8章 STC15F2K60S2单片机中断系统 168
8.1 中断系统概述 168
8.1.1 中断系统的几个概念 168
8.1.2 中断的技术优势 169
8.1.3 中断系统需要解决的问题 169
8.2 STC15F2K60S2单片机的中断系统 170
8.2.1 STC15F2K60S2单片机的中断请求 170
8.2.2 STC15F2K60S2单片机的中断响应 176
8.2.3 STC15F2K60S2单片机中断应用举例 179
8.3 STC15F2K60S2单片机外部中断的扩展 183
本章小结 186
习题与思考题 186
第9章 STC15F2K60S2单片机的串行口 187
9.1 串行通信基础 187
9.2 STC15F2K60S2单片机串行口1 190
9.2.1 串行口1的控制寄存器 190
9.2.2 串行口1的工作方式 193
9.2.3 串行口1的波特率 196
9.2.4 串行口1的应用举例 198
9.3 STC15F2K60S2单片机串行口2 212
9.3.1 STC15F2K60S2单片机串行口2控制寄存器 212
9.3.2 STC15F2K60S2单片机串行口2的工作方式与波特率 214
9.4 STC15F2K60S2单片机与PC的通信 214
9.4.1 单片机与PC的RS-232C串行通信接口设计 214
9.4.2 单片机与PC的USB总线通信接口设计 217
9.4.3 单片机与PC串行通信的程序设计 217
9.5 STC15F2K60S2单片机串行口1的中继广播方式 219
9.6 STC15F2K60S2单片机串行口硬件引脚的切换 220
本章小结 221
习题与思考题 222
第10章 STC15F2K60S2单片机的A/D转换模块 223
10.1 STC15F2K60S2单片机A/D模块的结构 223
10.2 STC15F2K60S2单片机A/D模块的控制 224
10.3 STC15F2K60S2单片机A/D转换的应用 227
本章小结 236
习题与思考题 236
第11章 STC15F2K60S2单片机CCP/PCA/PWM模块 237
11.1 STC15F2K60S2单片机的CCP/PCA/PWM模块的结构 237
11.2 PCA模块的特殊功能寄存器 238
11.3 CCP/PCA模块的工作模式与应用举例 241
11.4 PCA模块功能引脚的切换 251
本章小结 252
习题与思考题 252
第12章 STC15F2K60S2单片机的SPI接口 253
12.1 SPI接口的结构 253
12.2 SPI接口的特殊功能寄存器 255
12.3 SPI接口的数据通信 256
12.4 SPI接口的应用举例 261
12.5 SPI接口功能引脚的切换 265
本章小结 265
习题与思考题 266
第13章 单片机应用系统的设计 267
13.1 单片机应用系统的开发流程 267
13.1.1 单片机应用系统的设计原则 267
13.1.2 单片机应用系统的开发流程 268
13.1.3 单片机应用系统工程报告的编制 271
13.2 人机对话接口应用设计 273
13.2.1 LED数码显示与应用编程 273
13.2.2 LED显示接口与应用编程 282
13.2.3 键盘接口与应用编程 298
13.3 串行总线接口技术与应用编程 306
13.3.1 I2C串行总线接口技术与应用编程 306
13.3.2 单总线接口技术与应用编程 322
13.4 STC15F2K60S2单片机的低功耗设计与可靠性设计 330
13.4.1 STC15F2K60S2单片机的低功耗设计 330
13.4.2 STC15F2K60S2单片机的可靠性设计 334
本章小结 337
习题与思考题 338
第14章 微型计算机总线扩展技术 339
14.1 微型计算机的总线结构 339
14.2 MCS-51单片机系统扩展 339
14.2.1 编址技术 340
14.2.2 程序存储器的扩展 343
14.2.3 数据存储器的扩展 344
14.2.4 I/O接口的扩展 345
本章小结 347
习题与思考题 347
附录A ASCII码表 348
附录B STC15F2K60S2单片机指令系统表 349
附录C STC_ISP下载编程软件实用程序简介 354
附录D C51常用头文件与库函数 357
附录E STC15系列单片机功能特性 369
参考文献 372