《51单片机C语言轻松进阶》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:宋馥莉,王辉,盛国俊编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2016
  • ISBN:9787121289576
  • 页数:291 页
图书介绍:51单片机是对所有兼容Intel 8051指令系统的单片机的统称,其始祖是Intel公司发布的8031单片机。随着电子技术的发展,其内核被Atmel、飞利浦、宏晶科技等公司采用,生产出了一大批具有相同内核构造但是有不同功能的单片机,它们统称为51系列单片机,是应用最为广泛的8位单片机之一。它们具有体积小、功能强、价格低的特点,在工业控制、数据采集、智能仪表、机电一体化、家用电器等领域有着广泛的应用,其应用可以大大提高生产、生活的自动化水平。本书分为基础篇、应用篇以及综合应用篇三大部分,具有基础内容丰富,循序渐进,由浅入深,涉及了51单片机从硬件模块基础到软件设计各个方面的知识的特点,并且基于Keil μVision软件集成开发环境和艺龙电子L51-1001单片机开发板提供了大量的应用实例,还提供了23个详细讲解的视频以供读者深入理解51单片机的使用。

第1部分 基 础篇 1

第1章 单片机概述 1

1.1 单片机介绍 1

1.1.1 单片机的历史 1

1.1.2 单片机的应用 2

1.2 单片机的分类 3

1.2.1 按用途分类 4

1.2.2 按位数分类 4

1.2.3 按系列分类 4

1.3 MCS51单片机与C语言介绍 6

1.3.1 MCS-51单片机 6

1.3.2 单片机C语言 7

1.4 本章小结 7

第2章 MCS-51单片机基础知识 8

2.1 MCS-51单片机概述 8

2.2 MCS-51单片机结构原理 8

2.2.1 MCS-51单片机的基本组成 8

2.2.2 MCS-51单片机的内部结构 8

2.2.3 MCS-51单片机的中央处理器(CPU) 9

2.2.4 MCS-51单片机的存储器结构 10

2.2.5 MCS -51单片机的输入/输出接口 14

2.3 MCS-51单片机引脚描述 16

2.3.1 外部引脚 16

2.3.2 片外总线结构 17

2.4 MCS-51单片机存储器组织 18

2.4.1 程序存储器配置 18

2.4.2 数据存储器配置 18

2.4.3 特殊功能寄存器(SFR) 18

2.5 本章小结 20

第3章 单片机指令系统 21

3.1 单片机指令与编程的经验与技巧 21

3.2 单片机编程语言概述 21

3.2.1 编程语言概述 21

3.2.2 单片机使用的编程语言 22

3.2.3 MCS-51汇编语言的语句结构 22

3.3 MCS-51单片机的指令系统 23

3.3.1 寻址方式 23

3.3.2 数据传送指令 25

3.3.3 控制转移指令 29

3.3.4 逻辑运算及移位指令 32

3.3.5 算术运算指令 34

3.3.6 布尔操作指令 36

3.4 常用的伪指令 38

3.4.1 伪指令与MCS-51指令的不同点 38

3.4.2 常用的伪指令 38

3.5 本章小结 41

第4章 C51程序设计基础 42

4.1 基本概念 42

4.1.1 C语言基本介绍 42

4.1.2 MCS-51的C语言编译器 42

4.1.3 C51的程序结构 43

4.1.4 C51标识符、关键字 45

4.1.5 变量与常量 46

4.2 数据类型、运算符和表达式 50

4.2.1 数据类型 50

4.2.2 C51中的运算符和表达式 51

4.3 程序控制语句 55

4.3.1 顺序结构 55

4.3.2 选择结构 55

4.3.3 循环语句 57

4.4 函数与程序结构 59

4.4.1 函数的定义 59

4.4.2 函数的声明 61

4.4.3 函数的调用 62

4.5 数组 69

4.5.1 数组的基本概念 69

4.5.2 数组的声明 69

4.5.3 将数组传递给函数 69

4.5.4 数组的初始化 71

4.5.5 多维数组 71

4.5.6 指针数组 74

4.6 指针 74

4.6.1 指针的变量声明与初始化 75

4.6.2 指针运算符 76

4.6.3 指针常量 76

4.6.4 指针的指针 77

4.6.5 指针的运算 78

4.7 结构体与共用体 78

4.7.1 结构体 78

4.7.2 共用体 82

4.8 本章小结 84

第5章 Keil C51程序设计过程 85

5.1 Keil C51概述 85

5.1.1 Keil μ Vision 2软件简介 85

5.1.2 安装Keil μVision 2环境 85

5.1.3 Keil μVision 2软件功能简介 91

5.2 Keil μVision 2集成开发环境工程项目的编译及运行 94

5.2.1 工程的建立 94

5.2.2 源文件的建立 95

5.2.3 工程的设置 96

5.2.4 编译、连接项目并形成目标文件 99

5.2.5 运行调试观察结果 100

5.3 Keil μ Vision 2集成开发环境调试技巧 101

5.3.1 设置和删除断点的方法 101

5.3.2 查看和修改寄存器的内容 102

5.3.3 观察和修改变量 103

5.3.4 观察存储器区域 103

5.3.5 串行口的使用方法 103

5.3.6 定时/计数器的使用方法 104

5.3.7 外部中断的使用方法 104

5.4 本章小结 105

第6章 MCS-51单片机程序开发流程 106

6.1 编写一个简单的单片机程序 106

6.1.1 目的 106

6.1.2 工作原理 106

6.1.3 用汇编语言编写程序 107

6.2 程序编写过程 108

6.2.1 创建项目 108

6.2.2 项目设置 111

6.2.3 输出文件 112

6.3 把目标文件写入单片机 112

6.3.1 选择单片机型号 112

6.3.2 写入文件 113

6.4 使用实验板进行实验 115

6.5 龙电子L51-1001单片机开发板 116

6.6 本章小结 116

第2部分 应 用篇 117

第7章 MCS-51单片机基础资源应用 117

7.1 MCS-51单片机的I/O引脚应用 117

7.1.1 MCS -51单片机的I/O引脚基础 117

7.1.2 LED发光二极管 120

7.1.3 I/O引脚的输出和输入 121

7.1.4 数码管 124

7.1.5 数码管的静态显示和动态显示 127

7.1.6 独立按键 129

7.1.7 使用I/O引脚扩展独立按键 130

7.2 MCS-51单片机的定时器应用 131

7.2.1 MCS-51单片机的定时器基础 132

7.2.2 MCS-51单片机定时计数器的寄存器 132

7.2.3 51单片机定时计数器的工作方式 133

7.2.4 定时计数器的中断 135

7.2.5 MCS-51单片机的定时器使用 136

7.3 MCS-51单片机的外部中断应用 137

7.3.1 MCS-51单片机的中断系统 137

7.3.2 MCS -51单片机的中断相关控制寄存器 137

7.3.3 中断向量地址和中断标志位 139

7.3.4 MCS-51单片机的中断处理过程 139

7.3.5 MCS-51单片机的中断服务程序设计 140

7.3.6 MCS-51单片机的外部中断 142

7.3.7 外部中断电平触发 142

7.3.8 外部中断边沿触发以及按键去抖动 143

7.4 MCS-51单片机的串口应用 144

7.4.1 MCS - 51单片机串口相关的寄存器 144

7.4.2 工作方式 145

7.4.3 中断处理 148

7.4.4 MCS-51单片机和PC通信 149

7.5 本章小结 152

第8章 MCS-51单片机人机交互通道应用 153

8.1 矩阵键盘的应用 153

8.1.1 矩阵键盘基础 153

8.1.2 矩阵键盘应用 155

8.2 蜂鸣器的应用 157

8.2.1 蜂鸣器基础 157

8.2.2 蜂鸣器发声 158

8.3 红外接收芯片的应用 159

8.3.1 TL0038B基础 159

8.3.2 使用TL0038B进行解码 160

8.4 1602液晶显示器的应用 163

8.4.1 1602液晶显示器基础 163

8.4.2 使用1602液晶显示器显示“Welcome! ” 167

8.5 12864液晶显示器的应用 170

8.5.1 12864液晶显示器的特点 170

8.5.2 12864液晶显示器的接口引脚功能 171

8.5.3 12864液晶显示器的指令说明 173

8.5.4 12864液晶显示器的图形显示 175

8.5.5 12864液晶显示器的硬件电路 177

8.5.6 使用12864液晶显示器显示中文字符和图片 178

8.6 PS/2键盘的应用 183

8.6.1 PS/2键盘基础 183

8.6.2 扩展PS/2键盘 187

8.7 本章小结 191

第9章 MCS-51单片机其他扩展资源应用 192

9.1 EEPROM的应用 192

9.1.1 I2C总线基础 192

9.1.2 AT24系列EEPROM基础 195

9.1.3 读/写AT24C02 197

9.2 数字温度传感器的应用 202

9.2.1 1-wire总线基础 203

9.2.2 DS18B20基础 205

9.2.3 使用DS18B20获得当前温度 210

9.3 A/ D芯片的应用 215

9.3.1 A/ D转换基础 215

9.3.2 PCF8591基础 217

9.3.3 使用PCF8591进行A/D转换 219

9.4 D/A芯片的应用 224

9.4.1 D/A转换基础 224

9.4.2 使用PCF8591进行D/A转换 225

9.5 本章小结 228

第3部分 综合应用篇 229

第10章 电子时钟 229

10.1 应用分析 229

10.2 设计思路 229

10.2.1 51单片机内部定时计数器实现实时时钟 230

10.2.2 DS12C887实时时钟芯片的特点 233

10.3 硬件电路设计 233

10.3.1 DS12C887实时时钟芯片应用基础 233

10.3.2 系统硬件结构 235

10.3.3 电路原理及其说明 235

10.4 软件代码设计 236

10.4.1 DS12C887的内存空间 236

10.4.2 程序流程 240

10.4.3 应用代码 240

10.5 本章小结 242

第11章 上/下位机模拟信号采集系统 243

11.1 应用分析 243

11.2 设计思路 243

11.2.1 单片机的通信方式 243

11.2.2 上位机软件的选择 246

11.2.3 LabVIEW 246

11.3 硬件电路设计 247

11.3.1 ADC0809基础 247

11.3.2 系统结构 250

11.4 软件代码设计 250

11.4.1 程序流程 250

11.4.2 单片机代码设计 251

11.4.3 上位机代码设计 252

11.5 本章小结 254

第12章 无线数据传输系统 255

12.1 应用分析 255

12.2 设计思路 255

12.2.1 无线传输芯片选择 256

12.2.2 无线通信模块选择 256

12.3 硬件电路设计 256

12.3.1 PTR8000模块说明 256

12.3.2 单片机接口电路设计 261

12.4 软件设计 262

12.4.1 单片机和PTR8000的数据交互 262

12.4.2 参考程序 264

12.5 本章小结 270

第13章 数字天平 271

13.1 应用分析 271

13.2 设计思路 271

13.2.1 数字天平的工作原理 272

13.2.2 器件选型 272

13.3 硬件电路设计 275

13.3.1 压力传感器与运放电路设计 275

13.3.2 A/ D转换电路设计 276

13.3.3 显示与键盘电路设计 277

13.3.4 定标与日历时钟电路设计 279

13.4 软件代码设计 279

13.4.1 程序流程 280

13.4.2 程序代码 280

13.5 本章小结 290