基础篇 3
第1章 概述 3
1.1 单片机与嵌入式系统 3
1.1.1 嵌入式系统 3
1.1.2 单片机与嵌入式系统 3
1.2 单片机技术的发展 4
1.2.1 单片机的发展历程 4
1.2.2 单片机的发展趋势 7
1.3 单片机的应用系统、分类及选型 8
1.3.1 单片机的应用系统 8
1.3.2 单片机的分类 8
1.3.3 单片机的选型 8
1.4 80C51单片机家族简介 8
1.5 Philips公司80C51系列8位单片机概述 10
第2章 80C51单片机应用系统的设计及相关软件的使用2.1 80C51单片机应用系统的设计 12
2.2 Keil C51的使用 12
2.2.1 创建项目 13
2.2.2 调试程序 18
2.3 仿真器 21
2.4 编程器 23
2.5 ISP下载 25
2.6 串行调试软件 25
第3章 80C51单片机的硬件结构3.1 80C51单片机的内部结构及工作原理 27
3.1.1 80C51单片机的内部结构 27
3.1.2 80C51的外部引脚及功能 29
3.2 存储器配置 31
3.2.1 程序存储器 32
3.2.2 数据存储器 33
3.3 特殊功能寄存器SFR 36
3.4 并行I/O接口 40
3.4.1 P0口 40
3.4.2 P1口 41
3.4.3 P2口 42
3.4.4 P3口 42
3.5 单片机复位及时序 43
3.5.1 单片机复位 43
3.5.2 单片机时序 43
3.6 低功耗模式 44
3.6.1 空闲模式 45
3.6.2 掉电模式 46
3.6.3 时钟停止模式 46
3.7 P89C60X2/61X2单片机的附加功能 46
3.7.1 时钟模式控制 46
3.7.2 可编程时钟输出 47
3.7.3 看门狗WDT 47
3.7.4 在线仿真 47
3.7.5 BootROM 48
3.8 片内Flash存储器操作 48
3.8.1 程序存储器加密 48
3.8.2 并行编程 49
3.8.3 ISP在系统编程 49
第4章 80C51中断与定时/计数系统4.1 单片机与外设信息交换方式 51
4.2 中断技术概述 51
4.3 中断系统 52
4.3.1 中断源 52
4.3.2 中断系统结构 53
4.3.3 中断控制 53
4.3.4 增强型80C51中断系统 57
4.4 80C51定时/计数器 57
4.4.1 80C51定时/计数器的内部结构及工作原理 57
4.4.2 80C51定时/计数器的控制 58
4.4.3 T0和T1的4种工作方式 60
4.4.4 T2的捕获、自动重装方式 63
第5章 80C51串行数据通信 66
5.1 80C51串行口及控制寄存器 66
5.1.1 80C51串行口的内部结构 66
5.1.2 80C51串行口的通信过程 67
5.1.3 80C51单片机串行通信控制寄存器 67
5.2 80C51串行工作方式及串行通信波特率 69
5.2.1 80C51串行口的4种工作方式 69
5.2.3 80C51增强型UART操作 73
5.3 RS-232C串行通信总线标准及串行通信硬件设计 74
5.3.1 RS-232C串行通信总线标准 74
5.3.2 RS-232C串行通信硬件设计 75
第6章 80C51的指令系统 78
6.1 80C51指令系统概述 78
6.1.1 汇编语言指令格式 78
6.1.2 指令代码格式 78
6.1.3 指令符号意义 79
6.2 寻址方式 80
6.2.1 立即数寻址 81
6.2.2 直接寻址 81
6.2.3 寄存器寻址 81
6.2.4 寄存器间接寻址 81
6.2.5 基址寄存器加变址寄存器间接寻址 82
6.2.6 相对寻址 82
6.2.7 位寻址 83
6.3 80C51指令分类介绍 83
6.3.1 数据传送类指令 84
6.3.2 算术运算类指令 87
6.3.3 逻辑运算类指令 92
6.3.4 控制转移类指令 94
6.3.5 位操作类指令 98
第7章 80C51的编程技术 100
7.1 汇编语言源程序指令的结构 100
7.2 常用伪指令 102
7.3 简单程序 105
7.4 汇编程序设计 105
7.4.1 顺序程序设计 106
7.4.2 分支程序设计 107
7.4.3 循环程序设计 111
7.4.4 子程序和参数传递设计 114
7.4.5 查表程序设计 117
7.4.6 软件延时程序设计 118
7.4.7 简单I/O类程序设计 119
第8章 增强型80C51实用芯片P89V51Rx2简介8.1 P89V51Rx2芯片 121
8.2 制作指令学习模块 124
第9章 增强型80C51汇编指令初学9.1 80C51汇编指令初接触 128
9.2 流水灯的制作(RL右移、RR右移指令在程序中的运用) 131
9.3 循环指令DJNZ与循环比较指令CJNE在程序中的运用 137
9.4 加、减、乘、除及逻辑指令在程序中的运用 148
9.5 堆栈SP和指针DPTR在程序中的运用 156
实战篇——最小系统实践课题1 电路布局、设计与焊接技术 165
课题2 增强型80C51最小系统的制作 170
课题3 增强型80C51定时器和计数器系统的制作 178
课题4 增强型80C51中断系统的应用制作 189
课题5 数码管显示应用板的制作 198
课题6 按键开关的应用制作 207
课题7 简易电子琴的制作(电子音乐) 221
课题8 电子钟的制作(综合制作练习) 232
课题9 显示器件——LCD的应用 247
课题10 直流电机在单片机电路中的应用 263
课题11 步进电机在单片机电路中的应用 272
课题12 串行通信的应用 281
课题13 8×8点阵汉字模块的应用 291
附录 303
附录A TKStudio集成开发平台的简易使用方法 303
附录B ZLGISP下载使用简易指南 309
附录C 80C51指令集 312
C.1 寻址方式 312
C.2 指令分类 313
C.3 数据传送指令 313
C.4 算术指令 319
C.5 逻辑指令 323
C.6 控制跳转指令 329
附录D 步进电机的基本工作原理 333
附录E ASCII码表 335
附录F 随书元件清单列表 339
附录G P89V51系列芯片最小系统连线图与CPU实验模块制作图 340
附录H Flash Magic P89V51系列芯片ISP下载使用简易指南 342
附录I 如何将P89V51RD2添加到Keil C51比较旧的版本 343
附录J P89C51xx系列、P89C6xxx系列芯片最小系统连线图与CPU实验模块制作图 345
附录K 5V电源的制作 347
附录L 网上资料内容说明 348
参考文献 349