第1单元概述 1
本单元学习要点 1
1.1什么是单片机 1
1.2单片机内部主要结构 1
1.3P80V51单片机简介 3
1.4初识P80V51仿真实验板 8
1.5本课程的学习方法和要求 9
思考题与习题 9
第2单元单片机集成开发环境 10
本单元学习要点 10
2.1单片机开发工具 10
2.2设置SoftICE模式 12
2.3KeilC51μVision2集成开发环境 13
2.3.1KeilC51μVision2简介 13
2.3.2KeilC51RVision2的安装 14
2.3.3KeilC51μVision2的设置 15
2.4KeilC51RVision2的使用 20
2.4.1单片机的仿真过程 20
2.4.2MON51仿真器的特点 21
2.4.3第一个实验 21
2.5直接在实验板上烧写程序(ISP) 29
思考题与习题 30
第3单元片内存储器与数据传送指令 31
本单元学习要点 31
3.1片内存储器组织结构 31
3.1.1存储器类型 31
3.1.2存储器组织 32
3.2数据传送指令 36
3.3数据传送指令说明 39
3.4若干数据传送实验 44
思考题与习题 47
第4单元输入/输出(I/O)接口与总线 49
本单元学习要点 49
4.1I/O接口 49
4.1.1P0口 49
4.1.2P1口 51
4.1.3P2口 53
4.1.4P3口 54
4.1.5端口的负载能力与接口要求 55
4.2访问外部存储器 55
4.2.1外部程序存储器取指操作 55
4.2.2外部程序存储器读取数据操作 57
4.2.3外部数据存储器读操作 57
4.2.4外部数据存储器写操作 58
4.3访问外部存储器的实验 59
思考题与习题 61
第5单元时钟、时序与定时器/计数器 62
本单元学习要点 62
5.1振荡器、时钟电路和CPU时序 62
5.2定时器/计数器 64
5.2.1定时器/计数器0和1 64
5.2.2定时器/计数器2 66
5.2.3定时器/计数器的控制和状态寄存器 70
5.3时钟与定时器/计数器实验 72
思考题与习题 75
第6单元外部数据存储器空间及系统扩展 76
本单元学习要点 76
6.1外部数据存储器空间与总线 76
6.1.1外部数据存储器空间与地址分配 76
6.1.21/0接口与总线 77
6.1.3通过数据存储器空间的外设扩展 79
6.2外部数据存储器接口 81
6.2.1常用外部数据存储器 81
6.2.2外部数据存储器接口实例 81
6.3并行接口芯片8255A 83
6.3.1 8255A的结构和功能 83
6.3.2 8255A的工作方式及数据I/O接口操作 85
6.3.3 8255A的控制字 87
6.3.4 8255A与P89V51的接口 87
6.4数模转换器DAC 83299
6.4.1DAC的原理 99
6.4.2DAC0832简介 104
6.4.3DAC0832与P89V51的接口电路 105
6.5模数转换器ADC 809106
6.5.1并行比较型模数转换器 107
6.5.2逐次逼近比较型模数转换器 108
6.5.3积分型模数转换器 109
6.5.4模数转换器与P89V51接口实例 111
思考题与习题 113
第7单元复位、中断与程序控制 116
本单元学习要点 116
7.1复位 116
7.1.1复位的意义 116
7.1.2复位电路 116
7.1.3单片机复位后的状态 117
7.2程序控制 118
7.3程序流向控制的指令 119
7.4中断 126
7.4.1中断源 126
7.4.2中断控制寄存器 127
7.4.3中断优先级结构 130
7.4.4中断的处理 135
7.4.5外部中断 136
7.4.6中断响应时间 137
思考题与习题 137
第8单元串行接口 138
本单元学习要点 138
8.1引言 138
8.2标准UART操作 138
8.3多机通信 139
8.4串行端口控制寄存器SCON 140
8.5波特率 140
8.6UART的工作模式 141
8.6.1UART的工作模式0 141
8.6.2UART的工作模式1 142
8.6.3UART的工作模式2和模式3 148
8.6.4增强型UART操作 150
8.7SPI串口 152
8.7.1SPI串口及其特点 152
8.7.2SPI工作原理及其编程 152
思考题与习题 160
第9单元PCA与看门狗定时器 161
本单元学习要点 161
9.1PCA的构成 161
9.2PCA的工作原理 162
9.3PCA的工作模式 164
9.3.1PCA捕捉模式 164
9.3.216位软件定时器模式 165
9.3.3高速输出模式 165
9.3.4PWM模式 166
9.4看门狗定时器WDT 166
9.5PCA例程 168
思考题与习题 170
第10单元指令系统与系统编程 172
本单元学习要点 172
10.1指令系统的分类及一般说明 172
10.2算术操作类指令 173
10.3逻辑操作类指令 180
10.4布尔变量操作类指令 184
10.5伪指令 192
10.6汇编语言程序的基本结构 194
10.7系统编程的步骤、方法和技巧 196
10.8系统程序实验 199
思考题与习题 205
第11单元仿真实验板简介 206
本单元学习要点 206
11.1仿真实验板的概况 206
11.2仿真实验板的资源 207
11.3电路原理说明 210
11.3.1单片机最小系统的电路原理 210
11.3.2模数转换器ADC0809的接口电路 211
11.3.3数模转换器DAC0832的接口电路 212
11.3.4并行接口芯片8255A的接口电路 212
11.3.5数据/程序存储器HM62256 214
11.3.6RS232串行接口 214
11.3.7动态LED显示器与键盘 216
11.3.8蜂鸣器驱动电路 218
11.3.9电源 218
思考题与习题 219
第12单元单片机应用系统设计 221
本单元学习要点 221
12.1引言 221
12.1.1资源冗余与成本控制 222
12.1.2硬件处理与软件处理 223
12.1.3嵌入式实时操作系统与开发用软件 223
12.1.4不要忽略电磁兼容性问题 228
12.1.5系统的电源设计是一个重要问题 229
12.2方案认证与硬件系统设计 230
12.3系统软件设计 234
12.3.1软件框图 234
12.3.2软件设计的重要提示 234
12.4系统仿真调试设计 235
思考题与习题 236
第13单元应用系统举例 237
本单元学习要点 237
13.1单片机应用系统的一般说明 237
13.2多路数据采集系统 238
13.2.1系统的基本组成和工作原理 239
13.2.2系统硬件电路的设计 239
13.2.3串行通信电路 240
13.2.4软件设计 240
13.3超声测距系统 242
13.3.1包络检测原理及系统组成 242
13.3.2系统硬件电路设计 243
13.3.3超声波接收检测电路 244
13.3.4系统程序流程 245
13.4平面位移测量系统 246
13.4.1系统的总体设计 247
13.4.2脉冲计数电路的设计 247
13.4.3实验测量结果及系统标定 249
13.5多工艺全数字硬质阳极化电源 250
13.5.1阳极化电源简介 250
13.5.2硬质阳极化电源控制线路 251
13.5.3加工工艺 253
13.6多功能蓄电池充电系统 253
13.6.1蓄电池充电特性 254
13.6.2主要元器件 254
13.6.3系统工作原理及接口电路设计 256
13.6.4软件设计 258
13.7恒温控制器 259
13.7.1系统硬件设计 259
13.7.2系统软件设计 260
思考题与习题 262
附录A标准8051单片机指令说明 263
附录B仿真实验板原理图 284
附录C8051单片机指令速查表 285
附录D仿真实验板编程参考信息专用寄存器(为可位寻址寄存器) 290
参考文献 295