第1章 单片机技术概述 1
1.1计算机系统分类简介 1
1.2微型计算机的基本概念 2
1.2.1微型计算机系统的基本结构 2
1.2.2微型计算机的基本工作原理 3
1.3单片微型计算机 3
1.3.1单片机应用系统及组成 4
1.3.2单片机的发展趋势 4
1.3.3 MCS-51系列单片机 5
1.3.4 MCS-51系列单片机类型 8
1.4单片机的应用 9
思考与习题 9
第2章 MCS-51单片机的结构 10
2.1 MCS-51单片机的内部结构 10
2.1.1 8051单片机的内部结构及功能 10
2.1.2 8051的引脚定义及功能 11
2.2 MCS-51单片机存储器结构 14
2.2.1 MCS-51单片机的存储地址结构 14
2.2.2程序存储器 14
2.2.3数据存储器 15
2.3并行I/O口电路结构 20
2.3.1 P0口结构 20
2.3.2 P1口结构 21
2.3.3 P2口结构 21
2.3.4 P3口结构 22
2.4时钟电路与复位电路 22
2.4.1单片机的时钟电路与时序 23
2.4.2单片机的复位电路 24
2.5单片机的工作过程 25
思考与习题 25
第3章 Keil μVision与C51语言基础 27
3.1 Keil μVision4集成开发环境 27
3.1.1 Keil μμVision4简介 27
3.1.2 Keil Vision4界面概览 28
3.2 Keil μVision4的C51开发流程 28
3.2.1创建项目 29
3.2.2创建源程序文件 30
3.2.3程序编译与调试 31
3.2.4仿真调试 31
3.2.5项目设置 35
3.3单片机开发语言概述 37
3.3.1单片机汇编语言 37
3.3.2单片机C51语言 38
3.4 C51的标识符与关键字 38
3.4.1标识符 38
3.4.2关键字 39
3.5 C51的数据类型 40
3.5.1整型常量 41
3.5.2浮点型常量 42
3.5.3 C51变量的数据类型 43
3.5.4整型变量 43
3.5.5浮点型变量 44
3.5.6变量声明语句 45
3.5.7特殊功能寄存器SFR定义 45
3.5.8位变量 46
3.5.9指针型变量 47
3.5.10指针变量赋值 47
3.6变量及其存储方式 49
3.6.1局部变量与全局变量 49
3.6.2变量的存储种类 50
3.6.3变量的存储类型 52
3.6.4变量的存储器模式 52
3.7 C51的运算符 53
3.7.1算术运算符 53
3.7.2自增和自减运算 54
3.7.3关系运算符 54
3.7.4逻辑运算符 54
3.7.5位运算符 55
3.8运算符优先级和结合性 55
3.9 C51的表达式 56
3.9.1算术表达式 56
3.9.2赋值表达式 56
3.9.3逗号表达式 57
3.9.4关系表达式 58
3.9.5逻辑表达式 58
思考与习题 59
第4章 Proteus ISIS软件简介 60
4.1 Proteus ISIS仿真软件简介 60
4.1.1 Proteus软件系统组成 60
4.1.2电子产品设计流程 61
4.1.3 Proteus ISIS操作界面介绍 62
4.1.4 Proteus软件资源 69
4.1.5 Proteus软件在教学与实践中的应用 71
4.2 Proteus ISIS菜单栏简介 72
4.3设计视觉助手 75
4.4 Proteus电路设计基础 76
4.4.1设计流程 76
4.4.2设计文档 77
4.4.3原理图连线 80
4.4.4电气规则检查ERC 80
4.4.5保存原理图 81
4.5基于Proteus的设计实例 81
4.5.1 Proteus电路原理图设计 81
4.5.2软件设计 83
4.5.3源代码仿真与调试 85
4.5.4单片机内部资源仿真与调试 87
4.5.5电路与源代码联调 88
思考与习题 89
第5章 C51语言程序设计基础 90
5.1 C51语言程序的基本结构 90
5.2 C51语言基本语句 93
5.2.1表达式语句 93
5.2.2复合语句 94
5.2.3循环控制语句 95
5.2.4程序控制语句 100
5.2.5开关语句 103
5.2.6程序跳转语句(goto语句、break语句和continue语句) 105
5.3 C51语言的数组 108
5.3.1一维数组 108
5.3.2数组赋值 109
5.3.3二维数组 110
5.3.4字符数组 112
5.4 C51语言的函数 113
5.4.1函数概述 113
5.4.2函数的分类 113
5.4.3函数的调用 115
5.4.4函数返回语句 117
5.4.5中断服务函数 118
5.4.6库函数 119
思考与习题 124
第6章 单片机与定时器/计数器接口技术 126
6.1单片机的定时器/计数器 126
6.1.1单片机定时器/计数器的结构及工作原理 126
6.1.2定时器/计数器的方式和控制寄存器 128
6.1.3定时器/计数器初始化及步骤 129
6.1.4定时器/计数器的工作方式 130
6.2基于Proteus的定时器/计数器项目设计与仿真 134
6.2.1二路方波生发器的设计与仿真 134
6.2.2时间定时器设计与仿真 136
思考与习题 138
第7章 单片机与中断系统接口技术 140
7.1单片机的中断系统 140
7.1.1中断系统的概念及特点 140
7.1.2中断系统的组成及中断源 141
7.1.3中断系统控制寄存器 142
7.1.4中断处理过程 147
7.2中断源的C51语言程序设计 149
7.2.1外部中断源的C51语言程序设计 149
7.2.2定时中断源的C51语言程序设计 150
7.2.3优先级中断源的C51语言程序设计 152
7.2.4串行口中断源的C51语言程序设计 153
7.2.5外部中断源的扩展 154
7.3基于Proteus中断系统项目设计与仿真 157
7.3.1电风扇风量显示电路设计与仿真 157
7.3.2电子圆模式电路设计与仿真 160
思考与习题 163
第8章 单片机与数码管显示接口技术 164
8.1 LED显示器与接口技术 164
8.1.1 LED数码管结构及工作原理 164
8.1.2 LED数码管的控制方式 165
8.2 8位动态显示电路 168
8.3基于Proteus的LED显示器项目设计与仿真 170
8.3.1电子秒表电路设计与仿真 170
8.3.2脉冲计数电路设计与仿真 173
8.3.3基于Proteus的篮球竞赛24s定时器电路设计与仿真 175
8.3.4交通信号灯模拟控制系统的设计与仿真 179
思考与习题 184
第9章 单片机与LED点阵显示接口技术 185
9.1 LED点阵结构及原理 185
9.1.1 8×8LED点阵简介 185
9.1.2 LED点阵显示方式 186
9.2基于Proteus的大屏幕显示器项目设计与仿真 188
9.2.1 8×8LED点阵静态显示技术的设计与仿真 188
9.2.2 16×16LED点阵“箭头”移动显示技术的设计与仿真 189
9.2.3 16×16LED点阵文字移动显示技术的设计与仿真 192
9.2.4 16×16LED点阵数字跳动显示技术的设计与仿真 194
9.2.5 16×16LED图形广告屏(飞翔的小鸟)设计与仿真 196
思考与习题 201
第10章 单片机与LCD显示接口技术 202
10.1液晶显示模块概述 202
10.2 1602LCD液晶显示模块 202
10.2.1 16021LCD主要参数与引脚功能 202
10.2.2 1602LCD的控制指令及初始化 205
10.2.3 LCD显示模块的接口形式 207
10.3基于Proteus的LCD显示器项目设计与仿真 208
10.3.1 1602LCD静态显示技术的设计与仿真 208
10.3.2 16021.CD字符循环移动显示技术的设计与仿真 211
10.4 128×64LCD图形显示器接口技术 213
10.4.1液晶显示控制驱动器 213
10.4.2指令集与功能说明 215
10.5基于Proteus的128×64LCD显示器项目设计与仿真数字/字符/汉字接口电路设计与仿真 217
思考与习题 221
第11章 单片机与键盘接口技术 222
11.1键盘 222
11.1.1键盘工作原理 222
11.1.2键盘结构与输入特点 222
11.2独立式键盘接口技术 223
11.2.1独立式按键电路结构 223
11.2.2独立式按键的软件结构 223
11.3基于Proteus的独立式键盘项目设计与仿真 226
11.3.1汽车指示灯与加速显示控制器的设计与仿真 226
11.3.2电热水器控制显示器的设计与仿真 229
11.4矩阵式键盘接口技术 232
11.4.1矩阵式键盘电路结构 232
11.4.2矩阵式键盘工作方式 232
11.4.3矩阵式键盘扫描法 233
11.5基于Proteus的矩阵式键盘项目设计与仿真 234
11.5.1矩阵查询式键盘电路的设计与仿真 234
11.5.2矩阵中断式键盘电路的设计与仿真 237
思考与习题 240
第12章 单片机与A/D转换器接口技术 241
12.1 A/D转换器接口技术 241
12.1.1 A/D转换器原理 241
12.1.2典型A/D转换器芯片ADC0809 242
12.1.3 ADC0809的转换工作原理 244
12.1.4 ADC0809转换程序设计 244
12.2 8位串行A/D转换器接口技术 248
12.3基于Proteus的A/D转换器项目设计与仿真 250
12.3.1基于ADC0809光照度与温度数据采集的设计与仿真 251
12.3.2基于ADC0831直流电压表的设计与仿真 254
12.3.3基于ADC0831直流电流表的设计与仿真 256
12.3.4基于ADC0831亮度自动控制电路的设计与仿真 259
思考与习题 262
第13章 单片机与D/A转换器接口技术 263
13.1 D/A转换原理及主要技术指标 263
13.1.1 D/A转换原理 263
13.1.2 D/A转换器的主要技术指标 263
13.1.3并行D/A转换器芯片DAC0832 264
13.2 DAC0832与单片机接口技术 266
13.3基于Proteus的DAC0832电路项目设计与仿真 269
13.3.1基于DAC0832调幅调频正弦波信号发生器的设计与仿真 269
13.3.2基于DAC0832函数信号发生器的设计与仿真 273
思考与习题 277
第14章 单片机与串行通信接口技术 278
14.1通信的一般概念 278
14.1.1并行通信与串行通信 278
14.1.2串行通信的制式 279
14.1.3串行通信的两种基本方式 279
14.1.4串行通信的速率与接口 280
14.2 MCS-51单片机串行通信接口 281
14.2.1 MCS-51串行口的结构 281
14.2.2 MCS-51串行口的工作方式 284
14.2.3 MCS-51串行口的波特率 286
14.2.4 MCS-51串行通信的编程方法 287
14.3 MCS-51单片机串行口的扩展应用 288
14.3.1单片机I/O口的扩展 288
14.3.2基于Proteus的串入并出扩展口电路设计与仿真 289
14.3.3基于Proteus的并入串出扩展口电路设计与仿真 291
14.4 MCS-51单片机双机串行通信的应用 293
14.4.1双机通信接口 293
14.4.2单片机双机通信原理与设置 293
14.5基于Proteus的单片机双机串行通信项目设计与仿真 294
14.5.1单片机双机串行通信设计与仿真 294
14.5.2光伏系统蓄电池电压双机通信监控器的设计与仿真 296
14.6 MCS-51单片机多机串行通信的应用 301
14.6.1多机通信硬件基本电路 301
14.6.2多机通信原理与设置 301
14.6.3单片机多机串行通信设计与仿真 302
思考与习题 310
第15章 单片机与电动机控制接口技术 311
15.1直流电动机控制技术 311
15.1.1直流电动机的基本结构 311
15.1.2直流电动机的工作原理 311
15.1.3直流电动机PWM调速原理 312
15.1.4直流电动机PWM调速方案 313
15.2基于Proteus的直流电动机控制项目设计与仿真 315
15.2.1直流电动机正反转控制的设计与仿真 315
15.2.2直流电动机PWM调速电路的设计与仿真 317
15.3步进电动机控制技术 321
15.3.1步进电动机简介 321
15.3.2步进电动机工作原理 321
15.3.3步进电动机驱动电路 322
15.4基于Proteus的步进电动机控制项目设计与仿真 322
15.4.1步进电动机步距角控制的设计与仿真 322
15.4.2步进电动机N圈控制的设计与仿真 324
15.4.3步进电动机多功能控制器的设计与仿真 326
思考与习题 330
附录A reg51.h详解 331
附录B Proteus常用元器件 333
参考文献 335