1、 普通高等教育“十一五”国家级规划教材 新编 21 世纪高等职业教育电子信息类规划教材电气自动化技术专业 MCS-51单片机原理及接口技术(第2版)汪德彪 主 编 钟秉翔 刘显荣 副主编 胡文金 主 审 Publishing House of Electronics Industry 北京BEIJING 内 容 简 介 本书以 MCS-51 系列单片机为背景介绍单片机原理及其接口技术,主要内容包括:单片机组成结构;单片机指令系统和汇编语言程序设计;单片机中断技术和定时器/计数器应用;单片机功能扩展技术;C51编程语言及其应用;键盘、显示、A/D、D/A、开关量等功能性接口技术;单片机通信技术;
2、单片机应用系统设计方法、步骤、以及工程应用举例等。本书编写突出应用性和实践性,将单片机应用中的最新技术写入教材。在接口技术部分,将 SPI、I2C接口技术作了详细介绍,并有实际例子帮助读者加深理解 SPI、I2C 技术。在通信部分,把重点放在 PC 机与单片机之间点对点和点对面的通信技术方面,具有较高的实用价值。将 C51 写入教材是对单片机程序设计语言的最好补充和延伸,C51 部分的许多例子都有与之对应的汇编语言例子,便于读者对比学习。教材中的例子都取材于工程应用,突出例程的实用性和完整性,这不仅仅是为了学习知识而举例,而更重要的是为了掌握单片机的基本应用特性,从应用出发,又回到实际应用中去
3、。本书深入浅出,淡化理论,突出工程应用,适合作为高职高专院校自动化及其相关专业的教材,也可作为工程技术人员的参考用书。未经许可,不得以任何方式复制或抄袭本书之部分或全部内容。版权所有,侵权必究。图书在版编目(CIP)数据 MCS-51 单片机原理及接口技术/汪德彪主编.2 版.北京:电子工业出版社,2009.6 新编 21 世纪高等职业教育电子信息类规划教材.电气自动化技术专业 ISBN 978-7-121-08989-3.M .汪 .单片微型计算机基础理论高等学校:技术学校教材 单片微型计算机接口高等学校:技术学校教材 .TP368.1 中国版本图书馆 CIP 数据核字(2009)第 088
4、972 号 策 划:陈晓明 责任编辑:陈晓明 特约编辑:王宝祥 印 刷:装 订:出版发行:电子工业出版社 北京市海淀区万寿路 173 信箱 邮编 100036 开 本:7871 092 1/16 印张:18 字数:461 千字 印 次:2009 年 6 月第 1 次印刷 印 数:4 000 册 定价:27.00 元 凡所购买电子工业出版社图书有缺损问题,请向购买书店调换。若书店售缺,请与本社发行部联系,联系及邮购电话:(010)88254888。质量投诉请发邮件至,盗版侵权举报请发邮件至。服务热线:(010)88258888。前 言 随着我国现代化进程的不断推进,高级技术应用型人才的社会需求不
5、断增加,高等职业教育承担着培养技术型人才的重任越来越受到国家的高度重视。高等职业教育的人才培养目标是培养生产、建设、服务、管理一线的应用型人才,突出实用性与针对性。单片机课程作为电气电子类专业的主要技术课程受到各院校高度重视,纷纷进行课程改革和实验室建设,广大学生利用单片机进行电子设计制作并参加电子设计大赛,极大地增强了学生工程实践能力,这正体现了单片机技术的应用特性。对于学生来讲,掌握单片机知识与技能后,可以直接凭此参与就业。鉴于此,本书在内容选取上注重应用性,淡化理论,把在工程实际中广泛应用的知识、技术讲透,并辅助以工程实际例子来加强应用性,举例力求其完整性;在内容组织上注意高职院校学生的
6、特点,深入浅出,循序渐进。本书共分为 9 章,第 1 章为 MCS-51 单片机的基本知识和组成结构;第 2 章为 MCS-51单片机指令系统及其程序设计;第 3、4、5、6、7 章为 MCS-51 单片机的中断技术、定时器/计数器、功能扩展、接口技术和串行通信技术等;第 8 章为 C51 及其应用编程,以简明扼要的方式介绍 C51 的基本规则,举例大多是前面章节汇编语言程序的翻版,对照性强,便于掌握。目前 Keil C/Franklin C 已被工程技术人员广泛采用,使得单片机应用系统的开发效率大大提高,通过这一章的学习,基本能达到使用 C51 编程的目的;第 9 章讲述单片机应用系统设计开
7、发的步骤、方法,以及单片机应用系统的抗干扰技术,并有三个完整的应用实例,其中电动小车自平衡系统为 2007 年全国大学生电子设计竞赛题目,具有综合性,而简易电脑时钟具有趣味性,全部程序用 C51 编写。本书由汪德彪担任主编,负责第 1 章编写并对全书进行统稿,副主编钟秉翔编写第 2 章和第 8 章,副主编刘显荣编写第 4 章和第 5 章,叶文编写第 6 章,张义辉编写第 3 章,李家庆和李芳编写第 9 章,刘解生编写第 7 章。要特别感谢四川工程职业技术学院郭杰和天津滨海职业技术学院王玉松,他们在本书第一版编写中做出了巨大贡献。还要特别感谢在本书第一版使用中提出宝贵意见的胡文金、彭宇兴等同志,
8、同时,胡文金教授担任本书主审,提出了很多非常好的修改意见。本书在编写过程中得到重庆科技学院电子信息工程学院领导和教务处领导的关心和支持,在本书统稿过程中得到唐德东同志的许多宝贵意见,在此表示衷心感谢。由于编者水平有限,书中必定存在疏漏和错误,不足之处在所难免,恳请读者批评指正。编 者 2009 年 3 月于重庆 I 目 录 第 1 章 MCS-51 系列单片机的组成(1)1.1 单片机概述 (1)1.1.1 单片机的发展历史(1)1.1.2 目前主流单片机(2)1.1.3 单片机的应用领域(4)1.2 MCS-51 系列单片机的内部结构(5)1.2.1 微处理器结构(5)1.2.2 振荡与时钟
9、(7)1.2.3 时钟周期、状态周期和机器周期(7)1.2.4 复位及复位电路(8)1.2.5 MCS-51 系列单片机的引脚特性(9)1.3 MCS-51 系列单片机的存储器组织(10)1.3.1 程序存储器(11)1.3.2 片内数据存储器(12)1.3.3 特殊功能寄存器(14)1.3.4 片外数据存储器(15)1.4 MSC-51 系列单片机的基本 I/O 口(15)1.4.1 P0 口的结构与特性(15)1.4.2 P1 口的结构与特性(16)1.4.3 P2 口的结构与特性(17)1.4.4 P3 口的结构与特性(17)1.5 MCS-51 系列单片机的工作方式(18)本章小结(2
10、0)习题 1(20)第 2 章 MCS-51 系列单片机的指令系统及汇编语言程序设计(21)2.1 指令格式与寻址方式(21)2.1.1 指令格式 (21)2.1.2 MCS-51 单片机寻址方式(22)2.2 MCS-51 单片机指令系统 (25)2.2.1 数据传送和交换类指令 (25)2.2.2 算术运算类指令(30)2.2.3 逻辑运算指令(35)2.2.4 控制转移指令(38)2.2.5 位操作类指令(41)2.3 汇编语言程序设计(43)II 2.3.1 MCS-51 单片机汇编语言的伪指令 (44)2.3.2 程序结构 (45)2.3.3 汇编语言程序设计方法 (49)2.4 实
11、用程序设计举例(50)2.4.1 数制转换程序(50)2.4.2 数据处理程序设计(51)2.4.3 查表程序设计(55)2.4.4 子程序设计(57)2.4.5 延时程序设计(59)本章小结(60)习题 2(61)第 3 章 MCS-51 系列单片机中断系统(65)3.1 中断系统概述 (65)3.1.1 中断系统的概念(65)3.1.2 中断的作用(67)3.2 MCS-51 系列单片机中断源与中断请求 (67)3.2.1 定时器/计数器控制寄存器 TCON(68)3.2.2 串行口控制寄存器 SCON(69)3.3 MCS-51 系列单片机中断控制(69)3.3.1 中断允许控制(69)
12、3.3.2 中断优先权管理(70)3.4 中断响应(71)3.4.1 中断响应条件(71)3.4.2 中断响应过程(72)3.4.3 中断响应的时间(72)3.5 中断请求的撤除(72)3.6 中断应用举例 (73)3.6.1 中断程序设计基础(73)3.6.2 外部中断应用举例(74)3.6.3 外部中断的扩展(75)3.7 中断应用注意事项(77)本章小结(78)习题 3(78)第 4 章 MCS-51 系列单片机定时器/计数器(79)4.1 MCS-51 系列单片机定时器/计数器的结构 (79)4.2 MCS-51 系列单片机定时器/计数器的控制 (80)4.2.1 定时器/计数器工作方
13、式寄存器 TMOD (80)4.2.2 定时器/计数器控制寄存器 TCON(81)4.3 定时器/计数器的工作方式及应用(81)4.3.1 定时器/计数器方式 0 及应用(81)III 4.3.2 定时器/计数器方式 1 及应用(84)4.3.3 定时器/计数器方式 2 及应用(86)4.3.4 定时器/计数器方式 3 及应用(88)4.3.5 定时器/计数器的其他应用举例(89)本章小结(90)习题 4(91)第 5 章 MCS-51 系列单片机的扩展(92)5.1 单片机三总线的形成及编址 (92)5.1.1 单片机三总线的形成(92)5.1.2 编址及译码(93)5.2 存储器的扩展 (
14、96)5.2.1 程序存储器扩展(96)5.2.2 数据存储器的扩展(101)5.3 输入/输出口的扩展(103)5.3.1 简单接口芯片的扩展(104)5.3.2 可编程芯片 8155 的扩展 (106)5.3.3 可编程芯片 8255A 的扩展(112)本章小结(118)习题 5(118)第 6 章 MCS-51 系列单片机的接口技术(119)6.1 键盘接口技术(119)6.1.1 键的特性(119)6.1.2 独立键盘接口技术(120)6.1.3 矩阵键盘接口技术(122)6.2 数码显示接口技术(127)6.2.1 数码显示原理(127)6.2.2 静态显示技术(128)6.2.3
15、动态显示技术(130)6.3 液晶显示技术 (131)6.3.1 液晶显示器简介(131)6.3.2 液晶显示器与单片机接口 (131)6.4 A/D 转换器与单片机的接口技术(133)6.4.1 A/D 转换器的性能参数与选型(133)6.4.2 ADC0809 与单片机接口(134)6.4.3 AD574A 与单片机接口(138)6.5 D/A 转换器与单片机的接口技术(142)6.5.1 D/A 转换器的性能参数与选型(142)6.5.2 DAC0832 与单片机接口(142)6.5.3 DAC1210 与单片机接口(144)6.5.4 V/I 变换电路 (145)IV 6.6 串行接口
16、技术 (146)6.6.1 SPI 串行总线(146)6.6.2 SPI A/D、D/A 转换器与 MCS-51 单片机接口(147)6.6.3 I2C 串行总线 (153)6.6.4 I2C 器件与 MCS-51 接口 (154)6.7 开关量输入/输出接口技术(159)6.7.1 光电隔离技术和器件(159)6.7.2 开关量输入接口(159)6.6.3 开关量输出接口(159)本章小结(161)习题 6(161)第 7 章 MCS-51 系列单片机串行通信(162)7.1 串行通信的基本概念(162)7.1.1 数据通信 (162)7.1.2 串行通信的传输方式(162)7.1.3 异步通信和同步通信(162)7.2 MCS-51 系列单片机串行通信接口(164)7.2.1 串行口的结构与组成(164)7.2.2 串行口的工作方式(165)7.2.3 波特率的设置(167)7.2.4 串行通信接口标准(169)7.3 PC 机与单片机通信(171)7.3.1 PC 机串口资源及编程使用方法(171)7.3.2 PC 机与单片机双机通信(173)7.3.3 PC 机与单片机多机通信