第一篇 计算机软硬件知识入门导引 1
第1章 计算机(偏硬)应用领域、知识构成与学习导引 1
1.1 计算机(偏硬)应用领域 1
1.2 计算机(偏硬)知识构成 2
1.3 计算机(偏硬)应用的典型过程 3
1.4 计算机(偏硬)学习引导 4
第2章 计算机的数制与码制 5
2.1 数制:数字计算机使用的数 5
2.1.1 十进制数(Decimal)规律 5
2.1.2 二进制数(Binary)规律 7
2.1.3 十六进制数(Hexadecimal)规律 7
2.1.4 计算机中原始形态的数 9
2.1.5 计算机中数的组织形态 9
2.1.6 计算机中数的计量单位 10
2.2 码制:计算机中的信息表示、二进制信息编码 10
2.2.1 数值代码 11
2.2.2 指令代码 18
2.2.3 字符与其他信息编码 19
第二篇 微计算机指令与编程基础 22
第3章 MCS-51系列单片微计算机 22
3.1 概述 22
3.2 MCS-51单片机结构 24
3.2.1 单片机的基本结构 24
3.2.2 单片机最小硬件系统 27
3.3 MCS-51单片机的内部功能模块 33
3.3.1 MCS-51单片机中包含的模块 33
3.3.2 MCS-51单片机的节电功能 33
3.4 MCS-51单片机的寄存器与存储器 34
3.4.1 MCS-51的存储结构 34
3.4.2 MCS-51系统中的重要通用寄存器 39
3.4.3 堆栈概念与操作 40
3.4.4 MCS-51系统中相同地址对应不同存储区的问题 41
3.5 MCS-51单片机指令系统 42
3.5.1 概述 42
3.5.2 寻址方式 43
3.5.3 指令系统 48
3.6 MCS-51单片机汇编语言程序设计基础 64
3.6.1 汇编语言源程序格式 64
3.6.2 常用伪指令 65
3.6.3 汇编语言程序设计 68
第三篇 计算机系统扩展与接口应用 87
第4章 MCS-51微机系统扩展基础与存储器扩展 87
4.1 MCS-51微机系统总线概念、结构与扩展基础 87
4.1.1 三态在总线中的作用 87
4.1.2 时序图 88
4.1.3 IC的片选 88
4.1.4 计算机的三总线 89
4.1.5 地址锁存器 90
4.1.6 MCS-51的三总线 91
4.1.7 基于MCS-51的三总线扩展基本结构 91
4.2 程序存储器的扩展 92
4.2.1 MCS-51读取外部程序存储器的时序 93
4.2.2 典型的外部程序存储器 93
4.2.3 MCS-51扩展外部程序存储器的接口电路 95
4.3 多片程序存储器的扩展、编址技术与地址空间分析 96
4.3.1 多片程序存储器的扩展 96
4.3.2 地址空间分析 96
4.3.3 编址技术:线选法与译码法 98
4.4 外部数据存储器的扩展 100
4.4.1 外部数据存储器扩展意义 100
4.4.2 外部数据存储器扩展 100
4.4.3 外部程序空间与外部数据空间的合并 100
4.4.4 扩展的外部数据存储器检测的软件 101
第5章 MCS-51系列单片机I/O接口 102
5.1 I/O信息的特点 102
5.2 I/O接口的功能 102
5.3 I/O选通—应答机制 103
5.4 MCS-51单片机片内的并行输入/输出端口的使用 104
5.4.1 内部端口与外部扩展端口的优缺点比较 104
5.4.2 内部端口的分配 105
5.4.3 不同电压I/O器件的驱动 105
5.4.4 端口编程应用 105
5.5 扩展外部I/O端口 107
5.5.1 扩展外部I/O端口的指令、控制信号与分类 107
5.5.2 扩展端口输出位控方式编程 107
5.6 非智能IC扩展的I/O端口 108
5.6.1 I/O端口的分类 108
5.6.2 采用非智能化IC扩展无选通的输出I/O端口 108
5.6.3 采用非智能化IC扩展无选通的输入I/O端口 109
5.6.4 采用非智能化IC扩展选通输出I/O端口 110
5.6.5 采用非智能化IC扩展选通输入I/O端口 112
5.7 智能IC扩展的I/O端口 113
5.7.1 智能IC的优点 113
5.7.2 用8255A扩展I/O端口 113
5.7.3 用8155扩展I/O端口 122
第6章 MCS-51单片机中断系统及其应用 128
6.1 中断概念 128
6.1.1 中断方式的优越性 128
6.1.2 引起中断的非指令逻辑 128
6.1.3 中断子程序的特殊性 129
6.1.4 中断的其他特殊性 129
6.2 中断过程 129
6.3 中断调用的响应条件 130
6.4 中断响应时间 130
6.5 外部中断的触发方式 131
6.6 中断请求的撤销 131
6.7 中断入口 131
6.8 与中断有关的SFR 131
6.9 指令引起中断 132
6.10 中断程序设计 132
6.10.1 中断初始化 132
6.10.2 中断子程序设计要点 132
6.10.3 中断的典型应用 133
第7章 MCS-51单片机的定时计数器及其应用 135
7.1 MCS-51单片机的定时计数器 135
7.2 定时计数器(CTC)的概念 135
7.2.1 计数单元 135
7.2.2 工作方式与计数源 136
7.2.3 CTC的溢出及其作用 136
7.2.4 计数器初值的计算与重装载 136
7.2.5 CTC的启动与停止控制 136
7.2.6 定时计数器使用的外部引脚与SFR 137
7.3 定时计数器程序设计 138
7.4 定时计数器典型应用 139
第8章 MCS-51单片机的串行接口及其应用 142
8.1 串口 142
8.2 串行传输的概念 142
8.2.1 位信息表示成相应的物理量 142
8.2.2 位的传输与识别 142
8.2.3 数据的识别与分离 143
8.2.4 数据传输正确性判断 143
8.2.5 同步串行与异步串行 143
8.2.6 单工、半双工与双工 143
8.2.7 调制与解调 143
8.2.8 异步串行数据帧 144
8.2.9 通信协议 144
8.2.10 波特率 144
8.2.11 校验位 144
8.3 串行传输的硬件接口 145
8.3.1 RS-232C规范简介 145
8.3.2 RS-232C接口电路 146
8.4 MCS-51中的串行端口 146
8.4.1 串口收发缓冲器 147
8.4.2 串口设置寄存器SCON 147
8.4.3 串口工作方式 147
8.5 串口程序设计 148
第9章 MCS-51的监控程序与人机交互接口技术 151
9.1 监控程序概念、结构与编程要点 151
9.1.1 监控程序概念、结构与编程要点 151
9.1.2 监控程序结构与编程要点 152
9.2 显示接口 154
9.2.1 与显示接口有关的概念 154
9.2.2 LED数码管硬件知识 155
9.2.3 数码管的驱动与译码 156
9.2.4 一个数码管的静态驱动电路与子程序 157
9.2.5 多个数码管的驱动电路与显示子程序 158
9.3 MCS-51单片机键盘接口 161
9.3.1 与键盘接口有关的概念 161
9.3.2 键盘接口的硬件 163
9.3.3 读键子程序设计 164
9.3.4 主循环中用键值控制的散转 166
第10章 D/A与A/D转换接口与应用 168
10.1 计算机数字端口能直接处理的信息 168
10.2 模拟量与数字量转换过程中涉及的一些重要概念 169
10.2.1 与转换器精度有关的指标 169
10.2.2 转换器的其他主要指标 169
10.2.3 标定 170
10.3 D/A转换原理与D/A转换器 170
10.4 典型D/A芯片接口与应用 172
10.4.1 DAC0832 172
10.4.2 MCS-51单片机与DAC0832的接口 173
10.5 A/D转换原理与技术参数 175
10.6 典型A/D芯片接口与应用 176
10.6.1 典型A/D转换器芯片ADC0809 176
10.6.2 MCS-51单片机与ADC0809的接口 178
10.6.3 A/D转换应用举例 179