《AT89S51单片机原理、开发与应用实例》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:李萍主编
  • 出 版 社:北京:中国电力出版社
  • 出版年份:2008
  • ISBN:7508372389
  • 页数:280 页
图书介绍:

前言 2

第一部分 基本原理 2

第1章 单片机基础 2

1.1 单片机及其发展应用 2

1.1.1 单片机的产生及发展 2

1.1.2 单片机的应用 4

1.2 AT89S51单片机的内部结构 5

1.2.1 AT89S51单片机和80C51系列单片机 5

1.2.2 80C51系列单片机型号及性能指标 6

1.2.3 AT89S51单片机的基本组成 7

1.2.4 AT89S51的内部结构 7

1.2.5 AT89S51引脚功能 9

1.3 AT89S51单片机存储结构 10

1.3.1 程序存储器ROM 11

1.3.2 数据存储器RAM 12

1.3.3 特殊功能寄存器 13

1.4 AT89S51单片机并行I/O接口 16

1.4.1 并行I/O接口的结构特点 16

1.4.2 并行I/O接口的应用特性 17

1.4.3 并行I/O接口的负载能力 17

1.5 时钟、时序和复位 18

1.5.1 时钟电路 18

1.5.2 CPU时序的基本概念 18

1.5.3 复位及复位电路 19

小结 20

思考题 20

第2章 单片机开发环境 21

2.1 单片机与单片机应用系统开发 21

2.1.1 单片机系统 21

2.1.2 单片机应用系统开发 22

2.2 仿真器、编程器与实验板 22

2.2.1 仿真器 22

2.2.2 编程器(烧录器) 23

2.2.3 实验板 24

2.3 Keil环境下的工程开发 25

2.3.1 Keil IDE简介 25

2.3.2 Keil 软件功能环境 26

2.3.3 Keil 环境下的工程开发 27

2.4 Proteus 软件仿真 36

2.4.1 Proteus ISIS 简介 36

2.4.2 Proteus 软件功能环境 37

2.4.3 Proteus 仿真实例 38

小结 42

思考题 42

第3章 单片机指令系统 43

3.1 指令系统概述与寻址方式 43

3.1.1 指令系统概述 43

3.1.2 寻址方式 45

3.2 数据传送指令 47

3.2.1 通用传送指令 47

3.2.2 特殊传送指令 48

3.3 运算指令 51

3.3.1 算术运算指令 51

3.3.2 逻辑运算指令 55

3.3.3 循环移位指令 57

3.4 控制转移指令与位操作指令 58

3.4.1 无条件转移指令 58

3.4.2 条件转移指令 59

3.4.3 调用与返回指令 61

3.4.4 位操作指令 62

小结 63

思考题 66

第4章 汇编语言程序设计 66

4.1 源程序的编制 66

4.1.1 程序设计步骤 66

4.1.2 语句格式和伪指令 67

4.1.3 汇编语言编程技巧 69

4.2 基本程序结构 70

4.2.1 顺序程序 70

4.2.2 分支程序 71

4.2.3 循环程序 73

4.2.4 子程序 75

4.3 程序设计实例 76

4.3.1 实训4.1:交通灯的设计 76

4.3.2 实训4.2:流水灯的设计 78

小结 80

思考题 81

第5章 中断系统与定时/计数器 82

5.1 中断的概念 82

5.1.1 中断的基本概念与术语 82

5.1.2 中断系统和中断源 82

5.1.3 中断控制 83

5.1.4 中断响应 85

5.1.5 对中断请求的撤除 86

5.2 外部中断 88

5.2.1 中断系统的初始化 88

5.2.2 实训5.1:中断控制流水灯 89

5.2.3 多个外部中断源系统设计 90

5.3 定时/计数器 91

5.3.1 定时/计数器结构 91

5.3.2 定时/计数器控制 92

5.3.3 定时/计数器工作方式 93

5.4 定时/计数器应用 95

5.4.1 定时/计数器的初始化 95

5.4.2 测量外部脉冲宽度 95

5.4.3 实训5.2:简易方波发生器 9

5.5 中断与定时/计数器的综合应用 98

5.5.1 实训5.3:音乐门铃 98

小结 101

思考题 102

第6章 串行通信 104

6.1 串行通信基础知识 104

6.1.1 数据通信 104

6.1.2 串行通信的传输方式 105

6.1.3 异步通信和同步通信 105

6.2 串行通信接口 106

6.2.1 串行口的结构组成 106

6.2.2 串行口的特殊功能控制寄存器 107

6.2.3 串行口的工作方式 107

6.2.4 波特率的设置 109

6.3 常用串行通信接口标准 110

6.3.1 RS-232C接口 110

6.3.2 RS-422A接口 111

6.3.3 RS-485接口 112

6.4 单片机串行通信应用 113

6.4.1 串行口通信编程基础 113

6.4.2 实训6.1:单片机与显示器的串行通信 11

6.4.3 实训6.2:单片机与PC机的串行通信 117

6.5 CAN总线简介 124

6.5.1 CAN总线的概念 124

6.5.2 CAN总线的发展 124

6.5.3 CAN总线的特点 124

6.5.4 CAN的系统结构 125

小结 126

思考题 126

第二部分 外围及系统扩展 130

第7章 显示和键盘接口 130

7.1 数码显示接口技术 130

7.1.1 数码显示原理 130

7.1.2 静态显示技术 131

7.1.3 动态显示技术 133

7.1.4 点矩阵显示 133

7.1.5 实训7.1:动态扫描LED显示四位数字 134

7.2 液晶显示技术 137

7.2.1 液晶显示器简介 137

7.2.2 液晶显示控制器HD44780A 137

7.2.3 实训7.2:显示屏 139

7.3 键盘接口技术 144

7.3.1 按键的特性 144

7.3.2 独立式按键 144

7.3.3 矩阵式键盘 146

7.3.4 实训7.3:矩阵式键盘 147

小结 149

思考题 149

第8章 D/A与A/D转换接口 150

8.1 D/A转换接口 150

8.1.1 DAC0832的结构 151

8.1.2 DAC0832与AT89S51的接口与编程 152

8.1.3 实训8.1:简易波形发生器 153

8.2 A/D转换接口 15

8.2.1 ADC0809的结构 156

8.2.2 ADC0809与AT89S51的接口 17

8.2.3 ADC0809的应用 158

8.2.4 串行A/D转换芯片TLC1549 159

8.2.5 实训8.2:简易数字电压表 161

8.3 开关量输入/输出接口技术 163

8.3.1 光电隔离技术和器件 163

8.3.2 开关量输入接口 164

8.3.3 开关量输出接口 164

小结 165

思考题 166

第9章 AT89S51的系统扩展 167

9.1 系统扩展概述 167

9.1.1 系统扩展的概念 167

9.1.2 扩展系统总线结构 167

9.2 存储器扩展 168

9.2.1 存储器的分类 168

9.2.2 常用存储器扩展芯片 170

9.2.3 程序存储器的扩展 170

9.2.4 数据存储器的扩展 171

9.3 并行I/O口扩展 172

9.3.1 I/O接口简介 172

9.3.2 并行I/O口的简单扩展 172

9.3.3 可编程I/O扩展芯片8155 174

9.4 I2C总线扩展 180

9.4.1 I2C总线基础 180

9.4.2 I2C总线原理 181

9.4.3 I2C总线应用实例 183

小结 185

思考题 185

第三部分 开发 188

第10章 单片机应用系统开发 188

10.1 单片机应用系统开发的一般方法 188

10.1.1 确定任务、总体设计 188

10.1.2 硬件设计 188

10.1.3 软件设计 190

10.1.4 系统调试 190

10.2 单片机应用系统实用技术 190

10.2.1 低功耗设计 190

10.2.2 加密技术 192

10.3 抗干扰设计 195

10.3.1 电源、地线、传输干扰及其对策 195

10.3.2 硬件抗干扰措施 196

10.3.3 软件抗干扰措施 199

小结 201

思考题 202

第11章 AT89S51实例应用 203

11.1 设计实例1:IC卡的读写 203

11.2 设计实例2:产生PWM波形 207

11.3 设计实例3:步进电机控制 210

11.4 设计实例4:温度测量 213

11.5 设计实例5:红外遥控接收发射 217

11.6 设计实例6:LCD定时闹铃 226

11.7 设计实例7:密码锁控制 233

小结 245

思考题 245

第四部分 单片机C语言编程 248

第12章 单片机C语言编程 248

12.1 C语言在单片机开发中的应用 248

12.1.1 C语言与汇编语言的比较 248

12.1.2 C51与ANSI-C的主要区别 249

12.2 C51的数据类型与运算 250

12.2.1 C51的基本数据类型 250

12.2.2 C51的数据存储类型 251

12.2.3 C51定义SFR 253

12.2.4 C51定义并行口 254

12.2.5 C51定义位变量 254

12.3 C51构造数据类型及预处理指令 254

12.3.1 数组 254

12.3.2 指针 255

12.3.3 结构体 257

12.3.4 预处理指令 258

12.4 C51程序流程控制 259

12.4.1 条件语句 260

12.4.2 循环语句 261

12.5 函数 263

12.5.1 函数的概述 263

12.5.2 函数的定义 263

12.5.3 函数的调用 264

12.5.4 局部变量和全局变量 265

12.5.5 C51函数与关键字 266

12.5.6 C51的库函数 267

12.6 C语言应用编程实例 268

12.6.1 单片机内部资源编程 268

12.6.2 单片机接口技术编程 270

12.6.3 单片机扩展资源编程 276

12.7 C语言与汇编语言混合编程 276

12.7.1 嵌入汇编指令 277

12.7.2 变量的相互调用 277

12.7.3 函数的相互调用 278

小结 279

思考题 279

参考文献 280