内容简介
《单片机原理及其接口技术(第3版)》以MCS-51为主线,系统地论述了单片机的组成原理、指令系统和汇编语言程序设计、中断系统、并行和串行I/O接口以及MCS一51对A/D和D/A的接口等问题,并在此基础上讨论了单片机应用系统的设计。全书共分10章,第1章留给学生自学和查考,第2~9章为必须讲授的章节,第10章可根据情况选讲。
《单片机原理及其接口技术(第3版)》继承和发扬了《单片机原理及其接口技术(第2版)》的风格和特色,并增加了补码运算的溢出判断和LM331的原理和应用等新内容,删去了一些旧内容。全书内容全面、自成体系、结构紧凑、前后呼应、衔接自然、语言通俗且行文流畅。为便于读者学习,作者还专门制作了与《单片机原理及其接口技术(第3版)(附CD-ROM光盘1张)》配套的CAI教学光盘。
《单片机原理及其接口技术(第3版)》既可作为高等院校教材,也可作为广大科技人员的自学参考书。
内页插图
目录
第1章 微型计算机基础
1.1 计算机中的数制及数的转换
1.1.1 计算机中的数制
1.1.2 计算机中数制间数的转换
1.2 计算机中数的表示方法
1.2.1 定点机中数的表示方法
1.2.2 浮点机中数的表示方法
1.2.3 二进制数的运算
1.3 计算机中数的表示形式
1.3.1 机器数的原码、反码和补码
1.3.2 补码的加减运算
1.3.3 补码运算的正确性及变形码
1.4 计算机中数和字符的编码
1.4.1 BCD码和ASCII码
1.4.2 汉字的编码
1.4.3 校验码编码
1.5 单片微型计算机概述
1.5.1 单片机的内部结构
1.5.2 单片机的基本原理
1.5.3 单片机的分类及发展
1.5.4 典型单片机性能概览
1.5.5 单片机在工业控制中的应用
习题与思考题
第2章 MCS-51单片机结构与时序
2.1 MCS-51单片机内部结构
2.1.1 CPU结构
2.1.2 存储器结构
2.1.3 I/O端口
2.1.4 定时器/计数器
2.1.5 中断系统
2.2 MCS-51单片机引脚功能
2.2.1 MCS-51单片机引脚及其功能
2.2.2 8031对片外存储器的连接
2.3 MCS-51单片机工作方式
2.3.1 复位方式
2.3.2 程序执行方式
2.3.3 节电工作方式
2.3.4 编程和校验方式
2.4 MCS-51单片机时序
2.4.1 机器周期和指令周期
2.4.2 MCS-51指令的取指/执行时序
2.4.3 访问片外ROM/RAM的指令时序
习题与思考题
第3章 MCS-51单片机指令系统
3.1 概述
3.1.1 指令格式
3.1.2 指令的三种表示形式
3.1.3 指令的字节数
3.1.4 指令的分类
3.1.5 指令系统综述
3.2 寻址方式
3.2.1 寄存器寻址
3.2.2 直接寻址
3.2.3 立即寻址
3.2.4 寄存器间址
3.2.5 变址寻址
3.2.6 相对寻址
3.2.7 位寻址
3.3 数据传送指令
3.3.1 内部数据传送指令(15条)
3.3.2 外部数据传送指令(7条)
3.3.3 堆栈操作指令(2条)
3.3.4 数据交换指令(4条)
3.4 算术与逻辑运算和移位指令
3.4.1 算术运算指令(24条)
3.4.2 逻辑运算指令(20条)
3.4.3 移位指令(5条)
3.5 控制转移和位操作指令
3.5.1 控制转移指令(17条)
3.5.2 位操作指令(17条)
习题与思考题
第4章 汇编语言程序设计
4.1 汇编语言的构成
4.1.1 程序设计语言
4.1.2 汇编语言格式
4.1.3 汇编语言构成
4.2 汇编语言源程序的设计与汇编
4.2.1 汇编语言源程序的设计步骤
4.2.2 汇编语言源程序的汇编
4.3 简单程序与分支程序设计
4.3.1 简单程序设计
4.3.2 分支程序设计
4.4 循环与查表程序设计
4.4.1 循环程序设计
4.4.2 查表程序设计
4.5 子程序与运算程序设计
4.5.1 子程序设计
4.5.2 运算程序设计
习题与思考题
第5章 半导体存储器
5.1 半导体存储器基础
5.1.1 半导体存储器的分类和作用
5.1.2 半导体存储器的技术指标
5.1.3 半导体存储器的现状和前景
5.1.4 半导体存储器的基本结构
5.2 只读存储器
5.2.1 掩模ROM原理
5.2.2 PROM原理
5.2.3 EPROM原理
5.2.4 ROM举例
5.3 随机存取存储器
5.3.1 静态RAM基本存储电路
5.3.2 动态RAM基本存储电路
5.3.3 RAM举例
5.4 MCS-51和外部存储器的连接
5.4.1 连接中应考虑的问题
5.4.2 MCS-51对外部ROM的连接
5.4.3 MCS-51对外部RAM的连接
5.4.4 MCS-51对外部存储器的连接
习题与思考题
第6章 MCS-51中断系统
6.1 概述
6.1.1 中断的定义和作用
6.1.2 中断源
6.1.3 中断分类
6.1.4 中断嵌套
6.1.5 中断系统功能
6.2 MCS-51的中断系统
6.2.1 MCS-51的中断源和中断标志
6.2.2 MCS-51对中断请求的控制
6.2.3 MCS-51对中断的响应
6.2.4 MCS-51对中断的响应时间
6.2.5 MCS-51对中断请求的撤除
6.2.6 MCS-51中断系统的初始化
6.3 中断控制器8259A
6.3.1 8259内部结构
6.3.2 8259引脚功能
6.3.3 8259命令字
6.3.4 8259工作模式
6.3.5 8259级联
6.4 MCS-51对外部中断源的扩展
6.4.1 借用定时器溢出中断扩展外部中断源
6.4.2 采用查询法扩展外部中断源
6.4.3 采用8259扩展外部中断源
习题与思考题
第7章 并行I/O接口
7.1 概述
7.1.1 I/O接口的作用
7.1.2 外部设备的编址
7.1.3 I/O数据的4种传送方式
7.1.4 I/O接口的类型
……
第8章 MCS-51对A/D和D/A的接口
第9章 MCS-51的串行通信
第10章 单片机应用系统的设计
附录A
附录B
附录C
附录D
参考文献
精彩书摘
电子计算机是一种能对信息进行加工处理的机器,它具有记忆、判断和运算能力,能模仿人类的思维活动,代替人的部分脑力劳动,并能对生产过程实施某种控制,等等。1946年,美国宾夕法尼亚大学研制成世界上第一台计算机ENIAC电子数字积分计算机)以来,电子计算机经历了电子管、晶体管和集成电路三个发展时代,并于1971年进入了第四代。第四代电子计算机通常可以分为巨型机、大型机、中型机、小型机和微型机5类。但以系统结构和基本工作原理来说,微型计算机和其他几类计算机并无本质区别,只是在体积、性能和应用范围方面有所不同。
本章主要介绍微型计算机的基础知识和微型计算机的组成原理,最后论述单片微型计算机的产生、发展和应用,以便为读者学习后续章节打下基础。
1.1 计算机中的数制及数的转换
迄今为止,所有计算机都以二进制形式进行算术运算和逻辑操作,微型计算机也不例外。因此,对于用户在键盘上输入的十进制数字和符号命令,微型计算机必须先把它们转换成二进制形式进行识别、运算和处理,然后再把运算结果还原成十进制数字和符号,并在显示器上显示出来。
虽然上述过程十分烦琐,但都由计算机自动完成。为了使读者最终弄清计算机的这一工作机理,先对计算机中常用的数制和数制间数的转换进行讨论。
1.1.1 计算机中的数制
所谓数制是指数的制式,是人们利用符号计数的一种科学方法。数制是人类在长期的生存斗争和社会实践中逐步形成的。数制有很多种,微型计算机中常用的数制有十进制、二进制、八进制和十六进制等。现对十进制、二进制和十六进制三种数制讨论如下。
1.十进制(Decimal)
十进制是大家很熟悉的进位计数制,它共有0、1、2、3、4、5、6、7、8和9十个数字符号。这十个数字符号又称为“数码”,每个数码在数中最多可有两个值的概念。例如,十进制数45中的数码4,其本身的值为4,但它实际代表的值为40。在数学上,数制中数码的个数定义为基数,故十进制数的基数为10。
十进制是一种科学的计数方法,它所能表示的数的范围很大,可以从无限小到无限大。十进制数的主要特点是:
(1)它有0~9十个不同的数码,这是构成所有十进制数的基本符号。
(2)它是逢10进位的。十进制数在计数过程中,当它的某位计满10时就要向它邻近的高位进一。
前言/序言
《单片机原理及其接口技术(第2版)》出版以来,受到了广大读者的好评,也得到了高等院校师生们的肯定,并获得了“全国优秀畅销书奖”的荣誉。为了使单片机课程教学能跟上新的发展形势以及满足教学需要,作者对原书进行了全面审校,并在此基础上加以修订,增加了补码运算的溢出判断以及LM331的原理和应用等新内容,以此奉献给广大读者。
修订后,全书分为10章。第1章是微型计算机基础,供学生自学或查考;第2~4章是指令系统和汇编语言程序设计,用于培养读者的程序设计能力;第5~9章为半导体存储器、中断系统、MCS-51的I/O接口以及MCS-51对A/D和D/A的接口等;第10章为单片机应用系统的设计,主要讲授单片机应用系统前向和后向通道的设计以及单片机应用系统的抗干扰设计等内容。和第2版相比,本书内容更全面,章节安排更趋合理,结构更紧凑,通用性、系统性和实用性更好。
本教材配有CAI教学光盘。光盘中的教学内容共分10章和1个附录,分别与教材中的第1~10章和附录相对应,每章后都有“习题与思考题”的参考答案。在光盘每章后的“习题与思考题”中,还增加了填充题和选择题,并附有相应参考答案。该光盘总揽了教学所需的内容和图形,教师可根据不同层次学生的情况和不同教学要求从中选取适用的教学内容。光盘中还穿插了大量动画来展现指令和程序的执行功能以及硬件电路中的信息流,活泼而又生动,具有创新特色。
在本书编写以及光盘制作和移植过程中,得到了上官剑峰、王梓骁和张世逸等的大力支持和指导,胡芸和胡萍也为本书整理了大量资料。在此对于上述同志以及参与本书出版工作的有关人员表示诚挚谢意。
由于水平所限,书中可能还会存在某些错误和不妥之处,恳请广大读者批评指正。
深入解析单片机核心,掌握高效接口设计——《单片机原理及其接口技术(第3版)》助您迈入嵌入式开发新境界 本书是作者在深入研究单片机领域十余年、并结合多年教学实践经验的基础上,对前一版本进行全面升级和优化的力作。针对当前嵌入式系统开发日新月异的需求,第三版在保留原有精髓的同时,注入了大量更新的知识点和更贴近实际应用的内容,旨在为广大读者,尤其是高等院校电子信息类、自动化类、计算机类等专业的学生,以及从事嵌入式系统开发的工程师、研究人员提供一本权威、实用、易懂的经典教材。 本书结构与内容亮点: 本书共分为十一章,逻辑清晰,由浅入深,层层递进,全面覆盖了单片机原理和接口技术的关键环节。 第一章:单片机概述 本章将带领读者认识单片机这一嵌入式系统核心部件的起源、发展以及其在现代科技中的重要地位。通过介绍单片机的基本概念、分类(如8位、16位、32位单片机)、工作原理、核心组成(CPU、存储器、I/O接口、定时器/计数器、中断系统等)以及其在各个领域的广泛应用,为后续章节的学习打下坚实的基础。我们将重点阐述单片机作为微型计算机的独特性,以及其在专用性、集成化、低功耗等方面的优势。 第二章:MCS-51系列单片机结构与指令系统 作为嵌入式领域最经典、应用最广泛的单片机系列之一,MCS-51系列单片机在本书中占据了重要篇幅。本章将详细剖析MCS-51系列单片机的内部结构,包括其CPU的寄存器组织、指令流水线、时钟电路等。重点将放在其强大的指令系统上,对指令的寻址方式、指令类型(如数据传送、算术运算、逻辑运算、转移指令、位操作指令等)进行系统讲解,并结合丰富的汇编语言程序示例,帮助读者深入理解指令的执行过程,为后续编程打下坚实基础。 第三章:MCS-51系列单片机内部资源 本章将深入探讨MCS-51系列单片机的内部集成资源,包括: 定时器/计数器: 详细讲解定时器和计数器的各种工作模式(模式0、模式1、模式2、模式3),如何配置它们以实现定时、计数、脉冲输出等功能,并给出实际应用案例。 中断系统: 深入剖析MCS-51的中断机制,包括中断源(定时器中断、外部中断、串口中断)、中断优先级、中断服务程序的编写方法,以及如何通过中断实现高效的异步事件处理。 串行通信接口: 详细讲解MCS-51的串行通信原理,包括同步和异步通信方式,其串行口的工作模式(模式0、模式1、模式2、模式3),波特率的设置,以及如何通过串行口与其他设备进行数据交换。 第四章:MCS-51系列单片机外部扩展 本书强调“接口技术”,因此外部扩展是核心内容之一。本章将重点讲解如何利用MCS-51单片机扩展外部存储器(ROM和RAM)、I/O接口等,以满足更复杂系统对存储空间和I/O通道的需求。我们将详细介绍存储器扩展的地址译码原理、总线接口时序,以及如何连接各类存储器芯片。 第五章:MCS-51系列单片机汇编语言程序设计 本章是实践性的重要环节。在掌握了MCS-51的指令系统后,本章将带领读者进行实际的汇编语言程序设计。通过大量精心设计的典型实例,例如LED灯控制、按键输入检测、延时程序、定时器应用、中断服务程序设计等,帮助读者逐步掌握汇编语言编程的技巧,理解程序设计思路,培养独立解决问题的能力。 第六章:C语言在单片机中的应用 随着嵌入式开发工具链的成熟,C语言已成为单片机开发的主流语言。本章将重点介绍C语言在MCS-51单片机上的应用。我们将讲解C51编译器的使用,C语言的关键字、数据类型、控制语句在单片机编程中的特点,以及如何利用C语言编写高效、易读的单片机程序。同时,还将重点介绍C语言与汇编语言的混合编程方法,以充分发挥各自的优势。 第七章:MCS-51系列单片机接口技术(一) 本章将深入探讨MCS-51单片机与各类常见外围设备进行接口设计的关键技术。我们将详细介绍: LED显示接口: 如何驱动数码管(共阴极、共阳极)、点阵LED显示器,实现各种字符和图形的显示。 按键输入接口: 如何对独立按键、矩阵键盘进行扫描和消抖,实现用户输入的有效读取。 蜂鸣器、继电器控制接口: 如何通过单片机驱动这些执行器,实现声音报警、开关控制等功能。 中断接口技术: 进一步深化对中断的应用,介绍如何设计复杂的中断控制逻辑,处理多优先级中断。 第八章:MCS-51系列单片机接口技术(二) 本章将继续深入讲解更复杂的接口技术,重点关注: A/D与D/A转换器接口: 讲解模数转换器(ADC)和数模转换器(DAC)的工作原理,以及如何将模拟量转换为数字量,或将数字量转换为模拟量,实现与现实世界的交互,例如传感器信号的采集和执行机构的控制。 LCD液晶显示器接口: 详细讲解字符型和图形点阵型LCD的接口原理、控制时序和显示驱动,实现更丰富的信息输出。 通信接口技术(UART、SPI、I2C): 除了MCS-51自带的UART,本章还将深入讲解SPI(Serial Peripheral Interface)和I2C(Inter-Integrated Circuit)总线协议,它们是现代嵌入式系统中常用的高速、短距离通信接口,广泛用于连接各类传感器、存储器和外围芯片。我们将分析它们的通信时序、主从设备的工作方式,并给出实例。 第九章:常用微控制器ATMEL AT89S52芯片详解 在掌握了MCS-51系列通用原理后,本章将聚焦于一个具体的、广泛应用的单片机型号——ATMEL AT89S52。我们将详细介绍其内部结构、存储器组织、I/O端口特性、定时器/计数器、中断系统、串行接口等,并重点讲解其特有的ISP(In-System Programmable)烧写技术,使得程序烧写更加便捷高效。通过对这款具体芯片的深入学习,读者可以将其理论知识转化为实际操作能力。 第十章:基于ATMEL AT89S52的典型应用系统设计 本章是本书的实践高潮。我们将结合前几章所学的理论知识和AT89S52芯片的特性,设计多个典型的应用系统。这些系统涵盖了嵌入式开发中的常见应用场景,例如: 智能家居控制系统: 通过传感器采集环境信息,控制家电的开关。 交通信号灯控制系统: 模拟真实交通信号灯的控制逻辑。 数据采集与处理系统: 采集传感器数据并进行简单的处理和显示。 小型机器人控制系统: 实现简单的运动控制和指令响应。 每个系统设计都将包含硬件电路设计、软件程序设计(包括汇编和C语言)、系统调试等全过程,力求让读者能够理解一个完整的嵌入式项目开发流程。 第十一章:未来嵌入式技术发展趋势 为了帮助读者展望未来,本章将简要介绍当前嵌入式技术的发展趋势,包括物联网(IoT)、嵌入式Linux、RTOS(实时操作系统)、ARM Cortex-M系列等微控制器、以及更先进的通信技术和人工智能在嵌入式领域的应用。这有助于读者为未来的学习和职业发展指明方向。 附带光盘内容: 本书附带的CD-ROM光盘是学习的重要辅助资源。光盘内容丰富,主要包括: 全书源代码: 所有章节中的汇编和C语言程序源代码,方便读者下载、修改和运行。 开发工具: 推荐使用的汇编器、C编译器(如Keil C for 8051)、仿真器软件等,方便读者搭建开发环境。 仿真器软件: 允许读者在PC上模拟单片机的运行,提前验证程序逻辑,提高开发效率。 相关技术文档: 芯片数据手册(Datasheets)、应用笔记(Application Notes)等,为读者提供更详尽的参考资料。 电子课件: 部分章节的教学PPT,辅助课堂教学和自主学习。 学习建议: 本书内容丰富,建议读者在学习过程中: 1. 理论联系实际: 学习每一个概念时,都尝试去思考它在实际应用中的作用。 2. 动手实践: 充分利用附带的光盘资源,下载并运行示例程序,修改程序,尝试完成课后习题。 3. 构建实验平台: 如果条件允许,购置一套单片机开发板,是学习单片机最直接有效的方式。 4. 善用资源: 遇到问题时,积极查阅芯片数据手册,利用搜索引擎,并与其他学习者交流。 本书的价值: 《单片机原理及其接口技术(第3版)》不仅仅是一本教材,更是一本指导读者入门、深入、并持续提升嵌入式系统开发能力的实践指南。它将带领您从零开始,逐步掌握单片机的工作原理、指令系统、接口技术,并能够独立完成各种嵌入式应用系统的设计与开发。无论您是初学者还是有一定基础的开发者,本书都将是您在嵌入式技术领域不断探索和进步的宝贵财富。