当前位置:首页 > 工业技术
单片机原理与C51程序设计教程  第2版
单片机原理与C51程序设计教程  第2版

单片机原理与C51程序设计教程 第2版PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:张欣,张金君编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2014
  • ISBN:9787302364146
  • 页数:369 页
图书介绍:本书是一本单片机原理和C51语言结合的很好的教材,对二者做了很好的结合,使得单片机设计的软硬结合问题得到了解决。本书综合了几个学校的教学大纲,对知识点进行了合理的编排和组织,按照从硬件到软件,再到整体系统设计的顺序组织了本书,使得读者可以循序渐进的掌握单片机设计的相关技术。本书适合作为计算机类、电子类、自动化类专业的学生作为教材使用,也适合相关行业上岗人员作为技术培训教材。
《单片机原理与C51程序设计教程 第2版》目录

第1章 绪论 1

1.1 单片机概论 1

1.1.1 微处理器、微型计算机与单片机 1

1.1.2 单片机的分类和指标 3

1.1.3 单片机的内部结构 3

1.1.4 单片机的应用领域及趋势 4

1.1.5 单片机的编程语言概述 7

1.1.6 如何学习单片机这门技术 8

1.2 常用的51单片机 9

1.2.1 Intel公司系列单片机 9

1.2.2 Atmel公司系列单片机 9

1.2.3 Philips公司系列单片机 10

1.2.4 STC公司系列单片机 10

1.3 本章小结 10

习题 11

第2章 单片机硬件基础 12

2.1 单片机内部结构 12

2.1.1 中央处理器(CPU) 12

2.1.2 存储器结构 15

2.1.3 I/O端口结构 22

2.1.4 定时器/计数器结构 25

2.1.5 中断系统 25

2.2 单片机引脚功能 26

2.2.1 芯片封装 26

2.2.2 芯片引脚及功能 27

2.3 单片机工作时序 29

2.3.1 时钟电路 29

2.3.2 时序定时单位 30

2.3.3 指令的执行时序 30

2.4 单片机的工作方式 31

2.4.1 复位工作方式 31

2.4.2 程序执行方式 32

2.4.3 低功耗工作方式 32

2.4.4 其他工作方式 33

2.5 单片机的最小系统 33

2.6 本章小结 34

习题 35

第3章 单片机的指令系统 37

3.1 单片机的指令系统概述 37

3.1.1 指令格式 37

3.1.2 符号说明 37

3.2 单片机的寻址方式 38

3.2.1 立即寻址 38

3.2.2 直接寻址 39

3.2.3 寄存器寻址 39

3.2.4 间接寻址(寄存器间接寻址) 39

3.2.5 变址寻址 40

3.2.6 相对寻址 40

3.2.7 位寻址 40

3.2.8 寻址方式总汇 41

3.3 单片机的指令说明 42

3.3.1 数据传送类指令 42

3.3.2 算术运算类指令 46

3.3.3 逻辑运算类指令 50

3.3.4 控制转移类指令 52

3.3.5 位操作指令 55

3.3.6 单片机的伪指令 56

3.4 汇编程序设计 59

3.5 本章小结 62

习题 63

第4章 单片机的Keil μVision4软件开发环境 66

4.1 Keil开发工具 66

4.1.1 集成环境 66

4.1.2 启动程序 68

4.1.3 工作环境 69

4.2 单片机软件开发流程 74

4.2.1 建立工程 74

4.2.2 建立源代码文件 76

4.2.3 工程设置 78

4.2.4 软件编译与连接 83

4.2.5 硬件编程 84

4.2.6 程序下载 85

4.3 软件调试 85

4.3.1 调试窗口 86

4.3.2 调试命令 91

4.4 本章小结 94

习题 94

第5章 C51程序设计基础及实例剖析 96

5.1 C程序的基本概念 96

5.1.1 主函数 97

5.1.2 标识符和关键字 97

5.1.3 数据的基本类型 99

5.1.4 常量和变量 100

5.1.5 运算符与表达式 103

5.1.6 函数 109

5.2 基本的程序设计结构 113

5.2.1 顺序结构 113

5.2.2 选择结构 115

5.2.3 循环结构 119

5.3 C51构造数据类型 126

5.3.1 数组 126

5.3.2 指针 129

5.3.3 结构 134

5.3.4 联合 139

5.3.5 枚举 140

5.4 本章小结 141

实验与设计 142

实验5-1 用*号输出字母C51的图案 142

实验5-2 用自增自减运算控制P1口流水花样 144

实验5-3 用不同数据类型控制灯闪烁的时间 146

实验5-4 灯的左移右移程序 148

习题 149

第6章 C51语言的进阶应用 152

6.1 程序设计及编程方法 152

6.1.1 单片机程序的编制过程 152

6.1.2 单片机程序设计技巧 152

6.2 Keil C51的预处理器 155

6.2.1 宏定义 155

6.2.2 文件包含 161

6.2.3 条件编译 162

6.3 Keil C51常用库函数 164

6.3.1 内部函数intrins.h 165

6.3.2 输入/输出流函数stdio.h 165

6.3.3 动态内存分配函数stdib.h 167

6.3.4 字符函数ctype.h 167

6.3.5 缓冲区和字符串操作函数string.h 168

6.3.6 绝对地址访问absacc.h 169

6.3.7 访问SFR和SFR bit地址regxx.h 169

6.4 在Keil μVision中编写用户自己的库函数 169

6.4.1 用户库函数的建立步骤 170

6.4.2 用户库函数的引用步骤 170

6.4.3 一个用户库函数的应用实例 170

6.5 C51语言的编译常见报警错误以及解决办法 172

6.5.1 变量未被使用警告(Warning 280) 173

6.5.2 函数未被声明警告(Warning C206) 173

6.5.3 头文件无法打开错误(Error C318) 173

6.5.4 函数名称重复定义错误(Error C237) 174

6.5.5 函数未被调用警告 174

6.5.6 内存空间溢出错误 174

6.5.7 函数重入警告 174

6.5.8 常见编译器错误列表 175

6.6 本章小结 179

实验与设计 180

实验6-1 处理代码段中未被使用的变量 180

实验6-2 内存空间溢出错误处理 180

习题 181

第7章 51单片机的内部资源 182

7.1 输入/输出控制 182

7.2 中断系统 183

7.2.1 中断的基本概念 184

7.2.2 中断源及其中断的入口地址 184

7.2.3 中断控制相关的寄存器 185

7.2.4 中断响应过程 187

7.2.5 C51中断的程序设计 188

7.3 定时/计数器 192

7.3.1 定时/计数器的结构和工作方式 192

7.3.2 定时/计数器的寄存器 194

7.3.3 定时/计数器的工作方式 196

7.3.4 定时/计数器的程序设计 199

7.4 本章小结 202

实验与设计 203

实验7-1 设计报警器 203

实验7-2 统计外中断1的中断次数 204

实验7-3 定时/计数器T0作定时应用实验 206

习题 208

第8章 51单片机的系统扩展 210

8.1 单片机外部扩展资源和扩展编址技术概述 210

8.1.1 单片机外部扩展资源简介 210

8.1.2 单片机系统扩展原理 211

8.1.3 存储器扩展的编址技术 214

8.2 程序存储器的扩展 215

8.2.1 程序存储器的典型芯片 215

8.2.2 EEPROM与单片机的连接 216

8.3 数据存储器的扩展 217

8.3.1 单片机RAM的读写时序 217

8.3.2 RAM与单片机的连接 218

8.4 并行I/O口的扩展 219

8.4.1 采用TTL电路扩展I/O接口 220

8.4.2 采用8255芯片扩展I/O接口 220

8.5 可编程外围定时/计数器8253 224

8.5.1 8253的结构和引脚 224

8.5.2 8253的工作方式和控制字 226

8.5.3 8253与C51单片机的接口 226

8.6 外部中断的扩展 229

8.6.1 采用定时/计数器溢出中断扩展外部中断源 229

8.6.2 采用串行通信接口扩展外部中断源 230

8.6.3 采用中断源查询法扩展外部中断源 230

8.6.4 用优先权编码器扩展中断源 231

8.7 I2C接口芯片AT24CXX 233

8.7.1 I2C总线的特点 233

8.7.2 12C总线通信技术 234

8.7.3 AT24C系列与C51的接口 235

8.8 SPI接口芯片X5045 240

8.8.1 SPI总线的组成 241

8.8.2 X5045简介 241

8.8.3 X5045芯片与C51单片机的连接 243

8.9 本章小结 247

实验与设计 248

实验8-1 8255并口扩展实验 248

实验8-2 I2C总线实验 249

习题 253

第9章 51单片机的串行通信接口 256

9.1 串行通信方式 256

9.1.1 串行通信分类 256

9.1.2 数据的传输模式 257

9.1.3 波特率 257

9.2 串口结构 258

9.2.1 51单片机串行口的硬件结构 258

9.2.2 数据缓冲寄存器SBUF 260

9.2.3 串行口控制寄存器SCON 260

9.2.4 特殊功能寄存器PCON 261

9.3 MCS-51串口工作方式 261

9.3.1 方式0 262

9.3.2 方式1 262

9.3.3 方式2和方式3 262

9.3.4 各方式下波特率的计算 263

9.4 串行通信接口标准RS-232 263

9.4.1 RS-23 2C标准 264

9.4.2 单片机串行通信的连接 266

9.5 串行通信接口标准RS-422和RS-485 266

9.5.1 RS-42 2通信协议 267

9.5.2 RS-48 5通信协议 269

9.6 本章小结 271

实验与设计 271

习题 273

第10章 51单片机的A/D与D/A 转换 276

10.1 数/模转换 276

10.1.1 D/A转换器 276

10.1.2 D/A转换芯片DAC0832 278

10.1.3 DAC0832应用实例 280

10.2 模/数转换 282

10.2.1 A/D转换器 282

10.2.2 A/D转换芯片ADC0809 284

10.2.3 MCS-51单片机与ADC0809接口 286

10.3 本章小结 289

实验与设计 289

实验10-1 简易直流电源的设计 289

实验10-2 简单数字电压表的设计 290

习题 293

第11章 输入设备 296

11.1 输入设备的分类及结构 296

11.1.1 开关和按键 296

11.1.2 按键去抖动 296

11.1.3 非编码独立式键盘 297

11.1.4 非编码矩阵式键盘 298

11.1.5 编码键盘 298

11.2 键盘与单片机的接口 298

11.2.1 独立式键盘与单片机的接口 299

11.2.2 矩阵式键盘与单片机的接口 300

11.3 本章小结 304

实验与设计 304

习题 306

第12章 输出设备 310

12.1 输出设备的种类及结构 310

12.1.1 发光二极管 310

12.1.2 数码管 310

12.1.3 液晶显示模块 312

12.2 输出设备的接口及其编程 312

12.2.1 LED指示灯功能的程序实现 313

12.2.2 数码管与单片机接口的程序实现 314

12.3 本章小结 317

实验与设计 318

习题 320

第13章 51单片机系统开发基础 322

13.1 单片机系统的基本开发过程 322

13.1.1 系统开发概述 322

13.1.2 总体方案设计 323

13.1.3 硬件设计 325

13.1.4 软件设计 326

13.1.5 系统调试 327

13.2 系统的优化设计 329

13.2.1 系统的可靠性设计 329

13.2.2 系统自诊断 332

13.3 本章小结 334

习题 334

第14章 单片机系统综合实例——投票系统 336

14.1 实例需求说明 336

14.2 实例设计 336

14.2.1 总体设计 336

14.2.2 投票系统中心端硬件设计 337

14.2.3 投票系统终端硬件设计 338

14.2.4 通信协议设计 340

14.3 应用代码设计 340

14.3.1 投票系统中心端应用代码设计 340

14.3.2 中心端应用代码综合 348

14.3.3 投票系统终端应用代码设计 351

14.3.4 终端应用代码综合 357

实验与设计 359

实验14-1 呼吸灯 359

实验14-2 跑步机启停/速度控制模块 360

实验14-3 简易电子琴 361

实验14-4 手机拨号模块 362

实验14-5 简易频率计 364

实验14-6 天车控制系统 365

实验14-7 PC中控系统 366

实验14-8 负载平衡监控系统 366

实验14-9 电子抽奖系统 368

实验14-10 简易波形发生器 369

相关图书
作者其它书籍
返回顶部