图书目录

目    录

第1章  计算机基础知识 1

1.1  信息在计算机中的表示 2

1.1.1  数在计算机内的表示 2

1.1.2  字符在计算机内的表示 5

1.2  微型计算机基本结构及工作原理 6

1.2.1  微型计算机的发展 7

1.2.2  微型计算机的基本结构 7

1.2.3  微处理器 8

1.2.4  存储器 11

1.2.5  输入/输出设备及接口电路 13

1.2.6  总线 15

1.2.7  微型计算机的工作过程 16

1.3  单片机概述 21

1.3.1  单片机的概念 21

1.3.2  单片机的发展 21

1.3.3  单片机的应用 22

1.3.4  单片机的主要系列及品种 23

习题 28

第2章  单片机基本原理 30

2.1  51系列单片机概述 31

2.2  51系列单片机的结构原理 31

2.2.1  51系列单片机的基本组成 31

2.2.2  51系列单片机的内部结构 32

2.2.3  51系列单片机的中央

处理器 33

2.2.4  51系列单片机的存储器 35

2.2.5  51?系列单片机的输入/输出

接口 42

2.3  51系列单片机的外部引脚及

片外总线 45

2.3.1  外部引脚 45

2.3.2  片外总线结构 48

2.4  51?系列单片机的工作方式 48

2.4.1  复位方式 48

2.4.2  程序执行方式 49

2.4.3  单步执行方式 49

2.4.4  AT89S5X单片机的空闲和

掉电方式 50

2.4.5  AT89S5X单片机的ISP编程

方式 51

2.5  51系列单片机的时序 53

2.5.1  时钟周期、机器周期和

指令周期 53

2.5.2  访问外部ROM的时序 55

2.5.3  访问外部RAM的时序 55

习题 56

第3章  单片机汇编程序设计 58

3.1  51系列单片机汇编指令格式及

标识 59

3.1.1  汇编指令格式 59

3.1.2  指令中用到的标识符 60

3.2  51系列单片机指令的寻址方式 60

3.2.1  常数寻址(立即寻址) 60

3.2.2  寄存器数寻址(寄存器寻址) 61

3.2.3  存储器数寻址 61

3.2.4  位数据寻址(位寻址) 63

3.2.5  指令寻址 63

3.3  51系列单片机的指令系统 63

3.3.1  数据传送指令 63

3.3.2  算术运算指令 65

3.3.3  逻辑操作指令 66

3.3.4  控制转移指令 67

3.3.5  位操作指令 69

3.4  51系列单片机汇编程序设计 71

3.4.1  51?系列单片机汇编程序

常用伪指令 71

3.4.2  51?系列单片机汇编程序

举例 72

习题 74

第4章  单片机C语言程序设计 76

4.1  C51的基础知识 77

4.2  C51的数据类型 78

4.2.1  C51的基本数据类型 78

4.2.2  C51的特有数据类型 80

4.3  C51的变量 80

4.3.1  C51的普通变量及定义 80

4.3.2  C51的特殊功能寄存器

变量 83

4.3.3  C51的位变量 84

4.3.4  C51的指针变量 85

4.3.5  C51的数组 86

4.4  绝对地址的访问 87

4.4.1  使用C51运行库中

预定义宏 87

4.4.2  通过指针访问 88

4.4.3  使用C51扩展关键字_at_ 88

4.5  C51中的函数 89

4.5.1  C51函数的参数传递 89

4.5.2  C51函数的返回值 90

4.5.3  C51函数的存储模式 90

4.5.4  C51的中断函数 91

4.5.5  C51函数的寄存器组选择 92

4.5.6  C51的重入函数 92

习题 93

第5章  51系列单片机开发和

仿真工具 95

5.1  Keil C51的使用 96

5.1.1  Keil Vision5的安装 96

5.1.2  Keil Vision5的界面 96

5.1.3  Keil Vision5的操作过程 97

5.1.4  项目的设置 102

5.2  Proteus的使用 104

5.2.1  进入Proteus及工程创建 104

5.2.2  Proteus的原理图界面 106

5.2.3  电路原理图的绘制及仿真 108

习题 115

第6章  51系列单片机的内部资源及

编程 116

6.1  并行接口 117

6.1.1  并行接口输出实例 117

6.1.2  并行接口输入实例 121

6.2  定时/计数器接口 125

6.2.1  定时/计数器的主要特性 125

6.2.2  定时/计数器T0、T1的结构及

原理 126

6.2.3  定时/计数器的方式寄存器和

控制寄存器 127

6.2.4  定时/计数器的工作方式 128

6.2.5  定时/计数器的初始化编程及

应用 130

6.2.6  AT89S5X单片机的看门狗

WDT定时器 140

6.3  串行接口 141

6.3.1  通信的基本概念 141

6.3.2  51?系列单片机串行接口的

功能与结构 147

6.3.3  串行接口的工作方式 149

6.3.4  串行接口的编程及应用 151

6.4  中断系统 164

6.4.1  中断的基本概念 164

6.4.2  51系列单片机中断系统的

结构 166

6.4.3  51?系列单片机的中断源 166

6.4.4  51?系列单片机的两级中断

允许控制 168

6.4.5  51?系列单片机的两级中断

优先级控制 168

6.4.6  51?系列单片机的中断响应 170

6.4.7  51?系列单片机中断系统

应用举例 170

习题 178

第7章  51?系列单片机输入/输出设备及

应用 180

7.1  51?系列单片机的最小系统 181

7.1.1  8051/8751的最小系统 181

7.1.2  8031的最小系统 181

7.2  数码管显示器与51?系列单片机

接口 182

7.2.1  数码管显示器的基本结构与

原理 182

7.2.2  数码管显示器使用的

主要问题 183

7.2.3  数码管显示器与51?系列

单片机的接口 185

7.3  字符点阵式液晶显示器LCD1602与

51?系列单片机的接口 189

7.3.1  LCD1602概述 189

7.3.2  LCD1602的内部结构 190

7.3.3  LCD1602的指令格式

与功能 192

7.3.4  LCD1602的接口与编程 194

7.4  字符点阵式液晶显示器LCD12864与

51?系列单片机的接口 196

7.4.1  LCD12864的外观和引脚 197

7.4.2  LCD12864的控制命令 199

7.4.3  LCD12864的接口与编程 200

7.5  键盘与51系列单片机的接口 205

7.5.1  键盘概述 205

7.5.2  独立式键盘与单片机的

接口 207

7.5.3  矩阵键盘与单片机的接口 209

7.6  行程开关、晶闸管、继电器、蜂鸣器

与51系列单片机的接口 212

7.6.1  行程开关、继电器常开触点

与51系列单片机的接口 212

7.6.2  晶闸管与51?系列单片机的

接口 213

7.6.3  继电器与51?系列单片机的

接口 213

7.6.4  蜂鸣器与51?系列单片机的

接口 214

习题 214

第8章  51系列单片机与D/A、A/D

转换器的接口 216

8.1  D/A转换器与51?系列单片机的

接口 217

8.1.1  D/A转换器概述 217

8.1.2  典型的D/A转换器芯片

DAC0832 220

8.1.3  DAC0832与51?系利单片机的

接口与应用 222

8.2  A/D转换器与51系列单片机的

接口 226

8.2.1  A/D转换器概述 226

8.2.2  典型的A/D转换器芯片

ADC0808/0809 228

8.3  串行D/A、A/D与51?系列单片机的

接口 233

8.3.1  串行D/A芯片MAX517与

51?系列单片机的接口 233

8.3.2  串行A/D芯片MAX1241与

51系列单片机的接口 236

习题 240

第9章  51系列单片机应用

系统设计 242

9.1  单片机应用系统开发过程 243

9.1.1  单片机应用系统开发的

基本过程 243

9.1.2  单片机应用系统的硬件系统

设计 244

9.1.3  单片机应用系统的软件

设计 246

9.2  单片机多点温度测量系统设计 248

9.2.1  单片机多点温度测量系统

功能要求 248

9.2.2  单片机多点温度测量系统

总体方案 248

9.2.3  单片机多点温度测量系统

主要部件 249

9.2.4  单片机多点温度测量系统

硬件电路 255

9.2.5  单片机多点温度测量系统

软件程序 255

9.3  带温湿度的电子万年历设计 262

9.3.1  带温湿度的电子万年历功能

要求 262

9.3.2  带温湿度的电子万年历总体

方案 263

9.3.3  时钟芯片DS1302模块 264

9.3.4  数字温湿度传感器DHT11

模块 268

9.3.5  带温湿度的电子万年历硬件

电路 272

9.3.6  带温湿度的电子万年历软件

程序 272

9.4  单片机电子密码锁设计 281

9.4.1  单片机电子密码锁

功能要求 281

9.4.2  单片机电子密码锁

总体方案 281

9.4.3  单片机电子密码锁

主要部件 282

9.4.4  单片机电子密码锁

硬件电路 288

9.4.5  单片机电子密码锁

软件程序 289

习题 294

第10章  51系列单片机仿真实验 295

实验1  51系列单片机并行口输出

流水灯实验 296

实验2  51?系列单片机定时/计数器

实验 296

实验3  51系列单片机串口方式0

扩展I/O口实验 297

实验4  51系列单片机串口方式1

通信实验 298

实验5  51?系列单片机控制键盘、

数码管显示实验 299

实验6  51系列单片机软时钟

LCD1602液晶显示实验 299

实验7  51系统单片机控制

DAC0832实验 300

实验8  51?系统单片机控制

ADC0808/0809实验 301

附录A  C51的库函数 302

附录B  单片机技术及嵌入式系统的

网络资源 311

参考文献 312