《单片机原理及应用 C语言程序设计与实现》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:王长涛,韩忠华,夏兴华编著;马斌主审
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2014
  • ISBN:9787115334985
  • 页数:356 页
图书介绍:本书介绍51系列单片机的结构、基本原理、指令系统和硬件资源,重点介绍C51编程技术及其应用。本书的特点是通过实例以及练习使读者掌握相应知识点,读者能够通过完整的实例,快速、有效地掌握用C51语言开发51单片机的流程,并通过各章的习题掌握各章重点和难点,真正对相关知识做到融会贯通。

第1章 51单片机结构及工作原理 1

1.1 微型计算机基础 1

1.1.1 单片机及其发展概况 1

1.1.2 计算机中的数制及相互转换 3

1.1.3 二进制数的运算 8

1.1.4 计算机中数的表示方法 10

1.2 51单片机的基本组成和功能 13

1.2.1 51系列单片机的主要功能 13

1.2.2 51系列单片机基本结构 14

1.2.3 51系列单片机外部引脚 15

1.3 51单片机的内部结构 19

1.3.1 中央处理单元 19

1.3.2 存储器 22

1.3.3 定时器/计数器 26

1.3.4 I/O口 26

1.3.5 中断系统 27

1.4 51系列单片机的工作方式 30

1.4.1 时钟和时钟电路 30

1.4.2 CPU时序 30

1.4.3 复位状态和复位电路 31

本章小结 33

习题与思考 33

第2章 51单片机指令系统及汇编语言程序设计基础 34

2.1 51单片机指令格式 34

2.1.1 指令格式 34

2.1.2 指令的字节数 35

2.1.3 指令的分类 36

2.2 51单片机寻址方式 37

2.2.1 立即寻址 38

2.2.2 直接寻址 38

2.2.3 寄存器寻址 39

2.2.4 寄存器间接寻址 39

2.2.5 变址寻址 40

2.2.6 相对寻址 40

2.2.7 位寻址 41

2.3 51单片机指令 41

2.3.1 数据传送类指令 41

2.3.2 算术运算类指令 45

2.3.3 逻辑运算及移位指令 48

2.3.4 控制转移类指令 52

2.3.5 位操作类指令 58

2.3.6 伪指令 60

2.4 汇编语言程序设计基础 62

2.4.1 汇编语言程序的格式 63

2.4.2 汇编语言程序的基本结构 64

2.4.3 顺序结构程序设计 64

2.4.4 分支程序设计 65

2.4.5 循环程序设计 68

2.4.6 查表程序设计 73

2.4.7 子程序设计 75

本章小结 80

习题与思考 80

第3章 51单片机的硬件资源 82

3.1 51单片机并行I/O口 82

3.1.1 I/O口的作用 82

3.1.2 内部并行I/O口 83

3.1.3 内部并行I/O口的应用 86

3.2 51单片机中断系统 86

3.2.1 中断的定义 87

3.2.2 中断源 87

3.2.3 中断控制 89

3.2.4 中断优先级结构 91

3.2.5 中断响应 91

3.2.6 中断响应时间 92

3.2.7 中断请求的撤除 93

3.2.8 中断系统的初始化 94

3.2.9 外部中断源的扩展 95

3.3 51单片机定时器/计数器 96

3.3.1 定时器/计数器的结构及工作原理 96

3.3.2 控制定时器/计数器的寄存器 97

3.3.3 定时器/计数器的初始化 98

3.3.4 定时器/计数器的工作方式 100

3.4 51单片机串行通信 106

3.4.1 串行通信 106

3.4.2 51单片机串行接口 108

3.4.3 51单片机串行通信的工作方式 110

本章小结 113

习题与思考 113

第4章 C51程序设计基础 115

4.1 C51语言的符号类型 115

4.1.1 标识符 115

4.1.2 关键字 115

4.1.3 运算符 117

4.1.4 分隔符 119

4.2 常量与变量 121

4.2.1 基本数据类型 121

4.2.2 常量 122

4.2.3 变量 123

4.2.4 变量的作用范围 124

4.3 C51语句 125

4.3.1 说明语句与空语句 125

4.3.2 表达式语句 127

4.3.3 条件语句 128

4.3.4 开关、跳转语句 129

4.3.5 循环语句 130

4.3.6 复合语句 133

4.3.7 函数调用语句 133

4.3.8 预处理 134

本章小结 138

习题与思考 138

第5章 C51数据结构 139

5.1 数组 139

5.1.1 数组的定义和引用 139

5.1.2 字符数组 139

5.1.3 数组元素赋初值 140

5.1.4 数组作为函数的参数 140

5.2 指针 141

5.2.1 指针与地址 141

5.2.2 指针变量 141

5.3 结构 142

5.3.1 结构说明和结构变量定义 142

5.3.2 结构变量的使用 143

5.3.3 结构数组和结构指针 143

5.4 联合 144

5.5 枚举 145

本章小结 146

习题与思考 146

第6章 C51编译器及简介 147

6.1 KEIL C51编译器简介 147

6.1.1 KEIL C51开发套件 147

6.1.2 KEIL C51的安装 147

6.1.3 KEIL C51开发实例 148

6.2 C51库函数概述 150

6.2.1 本征库函数和非本征库函数 150

6.2.2 几类重要库函数 151

6.2.3 C51库函数原型列表 151

本章小结 153

习题与思考 153

第7章 51单片机人机交互 154

7.1 外部显示元件设计 154

7.1.1 LED数码管 154

7.1.2 16×2字符型液晶显示器编程 161

7.2 键盘输入设计 168

7.2.1 键盘接口类型 169

7.2.2 键盘的防抖技术 171

7.2.3 键盘扫描方式编程 172

7.2.4 键盘中断方式编程 174

7.3 外接打印机接口设计 177

7.3.1 打印机接口信号 177

7.3.2 字符和汉字编码 178

7.3.3 打印命令 178

7.3.4 外接打印机接口电路设计 180

7.3.5 外接打印机驱动程序设计 182

本章小结 184

习题与思考 184

第8章 51单片机数据采集 185

8.1 传感器技术概述 185

8.1.1 传感器的组成 185

8.1.2 传感器的基本特性 186

8.2 常用的A/D转换元件 187

8.2.1 A/D转换元件的结构和工作原理 187

8.2.2 A/D转换元件的接口电路 192

8.2.3 单片机A/D转换软件编程 192

8.3 温度数据采集元件设计 194

8.3.1 温度数据采集元件的结构和工作原理 194

8.3.2 温度数据采集元件的接口电路 198

8.3.3 单片机温度数据采集软件编程 199

8.4 压力数据采集元件设计 205

8.4.1 压力数据采集元件的结构和工作原理 205

8.4.2 压力数据采集元件接口电路 210

8.4.3 单片机压力数据采集软件编程 211

本章小结 212

习题与思考 212

第9章 51单片机串行通信 214

9.1 单片机串行通信设计 214

9.1.1 常用接口芯片结构和工作原理 214

9.1.2 单片机串行通信电路设计 220

9.1.3 单片机串行通信软件编程 221

9.2 Windows.NET环境下计算机与单片机串行通信程序设计 230

9.2.1 Windows.NET串行类介绍 230

9.2.2 计算机与下位机通信协议 232

9.2.3 计算机的串行通信程序的设计 239

9.2.4 单片机串行通信程序的设计 241

本章小结 249

习题与思考 249

第10章 51单片机外部存储器扩展 251

10.1 外部I/O的扩展 251

10.1.1 I/O口扩展概述 251

10.1.2 I/O地址译码技术 252

10.2 存储器概述 253

10.2.1 存储器的类型 254

10.2.2 常用的存储器 255

10.2.3 存储器扩展电路的工作方式 258

10.3 外部存储器扩展 259

10.3.1 扩展程序存储器 259

10.3.2 扩展数据存储器及编程 261

10.3.3 程序存储器与数据存储器同时扩展 266

本章小结 267

习题与思考 268

第11章 51单片机输出控制 269

11.1 常用输出接口电路 269

11.1.1 单片机与光电隔离元件的接口电路 269

11.1.2 单片机与模拟开关元件的接口电路 271

11.1.3 单片机与继电器的接口电路 273

11.2 常用D/A转换器设计 279

11.2.1 D/A转换器的结构和工作原理 280

11.2.2 D/A转换器的接口电路 281

11.2.3 D/A转换器的单片机编程 282

11.3 直流电动机的控制设计 284

11.3.1 直流电动机驱动电路的基本工作原理 284

11.3.2 采用单片机的直流电动机控制电路设计 291

11.3.3 直流电动机驱动的编程 292

本章小结 293

习题与思考 293

第12章 51单片机智能车设计实例 295

12.1 智能车总体方案设计 295

12.1.1 系统总体设计思路 295

12.1.2 系统总体方案的选定 296

12.1.3 系统总体方案设计 299

12.2 智能车硬件电路设计 301

12.2.1 电源模块 301

12.2.2 视频图像采集及处理模块 302

12.2.3 速度检测模块 308

12.2.4 舵机驱动模块 310

12.2.5 直流电机驱动模块 310

12.2.6 无线数据传输模块 312

12.2.7 无线视频发射模块 314

12.2.8 上位机接口部分 314

12.3 智能车软件系统设计 316

12.3.1 系统软件总体架构 317

12.3.2 视频图像采集及处理算法 317

12.3.3 图像信息处理 323

12.3.4 速度控制和舵机控制算法 326

12.3.5 主驱动电机的PD控制 329

12.3.6 速度检测算法 334

12.3.7 无线数据传输 337

12.3.8 人机交互界面 343

本章小结 345

附录A 51单片机指令系统表 346

附录B C51语言的库函数 350

参考文献 355