第一章 单片机入门 1
第一节 单片机基础知识 1
一、数制 1
二、数制的转换 2
三、二进制的算术运算 5
四、编码 6
五、存储器基础知识 8
第二节 单片机概述 11
一、什么是单片机 11
三、单片机与单片机系统 12
二、单片机名称的由来 12
第三节 单片机的分类、发展及应用 13
一、单片机的分类 13
二、单片机发展的历史 14
三、单片机技术发展的特点 15
四、MCS-51单片机家族简介 16
五、单片机的应用 18
第四节 到单片机世界去遨游 19
一、如何学习单片机 19
二、单片机的开发步骤 24
第一节 80C51单片机的内部结构和外部引脚 28
一、80C51单片机的内部结构框图 28
第二章 单片机的组成 28
二、单片机的外部引脚 30
第二节 80C51单片机内部存储器的配置 32
一、程序存储器 32
二、数据存储器 33
第三节 80C51单片机的并行I/O接口 38
一、P0口 39
二、P1口 40
三、P2口 41
四、P3口 42
一、单片机的时钟电路 43
第四节 80C51单片机的时钟电路和复位电路 43
二、单片机的复位电路 44
三、单片机的低功耗方式 45
第五节 AT89C51和AT89C2051/1051简介 47
一、AT89C51简介 47
二、AT89C2051/1051简介 47
第三章 单片机实验软件和硬件环境的建立 52
第一节 单片机仿真软件Keil C51的使用 52
一、Keil C51软件的启动 52
二、建立一个新工程 53
三、工程的设置 58
四、程序的编译和链接 62
五、程序调试 63
六、常用窗口介绍 66
第二节 用单片机实验板进行仿真实验 71
一、AT89C51单片机实验开发板 71
二、MON51仿真器 75
三、Insight SE-52仿真器 81
第三节 编程器及其使用方法 83
一、RF-810编程器简介 84
二、RF-810编程器的安装 84
三、RF-810编程软件的功能 84
四、RF-810编程软件的使用 85
第四节 下载型实验板简介 90
一、硬件结构 91
二、使用简介 94
三、下载型编程器的使用 95
第四章 单片机的指令系统 97
第一节 指令概述 97
一、指令与指令系统 97
二、指令的格式 98
三、指令的字节数 98
四、指令的寻址方式 100
第二节 MCS-51单片机指令分类介绍 106
一、数据传送类指令(28条) 106
二、算术运算类指令(24条) 112
三、逻辑运算及移位类指令(25条) 117
四、控制转移类指令(17条) 121
五、位操作类指令(17条) 126
第三节 使用I/O访问指令应注意的问题 129
一、可对口进行操作的指令 129
二、读引脚与读锁存器 130
第四节 指令上机练习 132
第五章 汇编语言简单程序设计 135
第一节 概述 135
一、程序与语言 135
二、汇编语言源程序的格式 137
三、51汇编软件汇编失败原因 137
一、汇编起始地址伪指令ORG 138
第二节 汇编语言的伪指令 138
二、汇编结束伪指令END 139
三、定义字节伪指令DB 139
四、定义字伪指令DW 139
五、定义内存空间伪指令DS 139
六、赋值伪指令EQU 140
七、位地址定义伪指令BIT 140
第三节 汇编语言典型程序结构 140
一、顺序结构程序 140
二、分支结构程序 141
三、循环结构程序 143
一、子程序调用过程中参数的传递 145
第四节 汇编语言子程序的设计 145
二、调用子程序时的现场保护问题 146
第五节 汇编语言实用程序举例 148
一、定时程序 148
二、查表程序 150
第六节 几个简单的实验 154
一、闪烁的发光管 154
二、8路流水灯 156
三、用按键控制发光管 157
四、二进制加法运算 158
五、加1计数器 159
六、二进制乘法运算 160
七、逻辑运算 161
第六章 中断、定时/计数器和串行数据通信 163
第一节 中断系统及实验 163
一、中断概述 163
二、中断源 164
三、中断控制 164
四、中断的响应 167
五、中断的撤除 170
六、中断程序设计及实验 171
第二节 定时/计数器及实验 175
一、定时/计数器概述 175
二、定时/计数器的控制寄存器 177
三、定时/计数器的工作方式 178
四、定时/计数器应用举例及实验 182
第三节 串行数据通信技术及实验 193
一、串行数据通信概述 193
二、串行口的基本结构 196
三、串行通信控制寄存器 197
四、串行口工作方式 201
五、串行数据通信应用举例 204
第七章 单片机存储器和I/O接口的扩展 217
第一节 系统扩展概述 217
一、地址总线(AB) 217
三、控制总线(CB) 218
二、数据总线(DB) 218
第二节 存储器的扩展 219
一、程序存储器的扩展 219
二、数据存储器的扩展 226
第三节 I/O接口的扩展 228
一、I/O接口扩展概述 228
二、I/O接口扩展举例 229
第八章 单片机实用接口技术 232
第一节 LED显示器接口 232
一、8段LED显示器的结构及原理 232
二、LED显示器的显示方式 234
三、几种常见的显示接口电路 236
四、LED显示器接口实验 244
第二节 键盘接口 249
一、键盘的工作原理 249
二、键盘与单片机的连接 251
三、键盘的工作方式 259
四、键盘接口实验 260
第三节 LCD显示器接口 262
一、字符型液晶显示器概述 263
二、字符显示模块内部结构 264
三、字符型液晶控制器的指令 267
四、字符显示实验 270
五、汉字图形的显示原理与实验 275
第四节 SPI总线接口和看门狗电路 279
一、SPI总线接口 279
二、看门狗电路 280
第五节 I2C总线接口 288
一、I2C总线及其软件包 288
二、I2C总线串行存储器AT24Cxx 291
三、I2C总线时钟芯片PCF8563 300
第六节 红外遥控接口 311
一、红外遥控系统 311
二、红外遥控的编码与解码 312
三、红外遥控实验 313
一、ISD1400系列语音电路 316
第七节 语音接口 316
二、ZY1420A语音电路 322
第八节 A/D和D/A转换接口 326
一、A/D转换接口 326
二、D/A转换接口 328
第九章 单片机应用系统设计 331
第一节 单片机应用系统设计的原则 331
一、确定任务 331
二、总体设计 331
三、硬件设计 331
五、系统调试 332
四、软件设计 332
第二节 单片机电子钟应用系统的设计 333
一、系统软件、硬件功能的划分 333
二、硬件设计 333
三、软件设计 335
四、用下载型实验板进行仿真实验 345
五、系统功能的扩充 345
第三节 单片机应用系统的可靠性设计 345
一、提高单片机系统稳定性的硬件措施 345
二、提高单片机系统稳定性的软件措施 349
附录 MCS51指令表汇总 351