MCS-51系列单片机及其应用(第5版)(txt+pdf+epub+mobi电子书下载)


发布时间:2020-06-11 16:48:30

点击下载

作者:孙育才,孙华芳

出版社:东南大学出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

MCS-51系列单片机及其应用(第5版)

MCS-51系列单片机及其应用(第5版)试读:

内容提要

本书第5版对前几版进行了全面的总结,在保持原有的风格和特点的基础上做了进一步的调整和补充,使全书内容更加充实、完整,更符合学习和教学环节。

全书共分9章,前6章着重于硬件结构、功能特点、基本原理、基本概念的阐述,后3章阐述程序设计、外部功能扩展、开发与应用,结合应用举例,重点讲解应用和设计。论述较前版更加清晰,通俗易懂,重点突出,理论与应用紧密结合,实用性强。

本书适合广大科技工作者阅读,也适合作为各大专院校单片机课程教学用书,还可作为各类选修课和培训班等的主选教材。

第5版前言

20世纪80年代中期,国内开始掀起了学习、应用单片机的热潮,《MCS—51系列单片微型计算机及其应用》一书,于1987年首次在国内正式出版发行,恰好适应了全国广大科技工作者学习、应用单片机技术的急切需要。因而深受广大读者的欢迎,成为广大科技工作者人手一册的畅销书。

为了适应全国各大专院校开设单片机课程的需要,于1987年进行了第2版的修订,1997年进行了第3版的修订,2004年又进行了第4版的修订。

本书自1987年首次在国内出版发行以来,至今已有20多个年头了,中间进行了3次大的修订,紧紧跟随着单片机开发与应用不断发展的步伐。并于2006年荣获华东地区大学出版社第七届优秀教材、学术专著二等奖和江苏省第十届优秀图书奖二等奖。承蒙全国广大读者的厚爱,本书已成为广大科技工作者学习、开发与应用单片机的必备用书,全国各大专院校单片机课程的首选教材,致使本书一直畅销、经久不衰。值此再版之际,再次向广大读者、广大师生们致以最诚挚的谢意,谢谢!

近几年来,尽管单片机技术发展飞快,高档的16位、32位单片机相继推向市场,但整个应用领域的80%~90%仍青睐8位字长的单片机,这是因为8位单片机已完全能满足他们对应用功能的需求。所以,8位字长的单片机始终是整个应用领域的主流机种。需要是一切发展的强大动力。

MCS—51系列单片机,由于功能强、系统结构合理、理论与技术完整、应用灵活等诸多特点,深受广大用户欢迎。另外,因其系统性强,理论与技术完整,也非常适合课堂教学。近年来,Intel公司已将MCS—51系列单片机的内核技术知识产权转让给很多家国际著名的单片机生产厂商,如PHILIPS、ATMEL、LG等,厂商们各自结合自己的特色推出适合目标市场的产品,从而又大大推动了MCS—51技术的发展,但基本内核技术不变,均与MCS—51相兼容,MCS—51成为国际经典!

MCS—51系列单片机具有系统结构完整、典型、灵活,通用性强,指令丰富、功能强,计算机技术系统化,理论与应用紧密结合,外部配套器件丰富,接口简单等诸多独特优点,不仅应用领域广阔,而且非常适合课堂教学,加上教学设备、开发实验环境均配套齐全,为课堂教学,提高教学质量创造了有利条件。学好了MCS—51系列单片机原理与应用技术,等于掌握了单片机核心技术,为学习其他不同类型的单片机打下了坚实的基础。MCS—51系列单片机的技术优势还将在今后较长时期内保持下去。

本书作者从上世纪80年代初,也就是国内单片机开发、应用初期,就积极投身到单片机的教学、开发应用和科研工作中,一直担任全国单片机学会常务理事,曾多次负责承办全国单片机学术与展示大会,为我国单片机技术的开发、应用与发展倾注了很大的精力和热情。结合自己长期从事单片机教学实践与开发应用的经验,广泛吸取了国内外许多资源与精华,全力编著好本书及其多次再版,奉献给广大师生与读者。

本书自第4版修订至今,又已是8个年头了。本次在前4版的基础上,结合近年来新的发展,进行了以下几方面的修订:

1.首先对前几版的结构、编排与内容进行了全面、仔细的查阅与整理,在继续保持原版的构思、风格与特点的基础上作了较大的调整、修改与补充,使之更具有严谨的科学性、实践性和正确性,更符合学习和认识规律,更符合教学系统性和规律要求。

2.为了能更好地便于读者的学习、理解和掌握,对全书的文字叙述进行了全面的审阅和梳理,使之文理通顺易懂、说理明白透彻、重点突出、层次分明,进一步提高了文学水平与图表质量。

3.单片机是一门应用性技术,重在应用。因此,在本次修订中进一步加强了理论联系实际,强调实际应用。对每一个重要技术原理、概念,均配以应用实例,示范实际应用技术与方法,以提高读者的实际应用能力。另外,增加和强化了如何开展单片机应用系统的实际开发、设计、调试等技术环节,以提高实际应用设计的能力,加快从学习到设计的进程。

4.随着单片机的广泛应用,特别是嵌入式单片机测控系统,对应用系统的可靠性要求越来越突出,因此,在本次修订中增强了可靠性要求和相关内容。另外,近年来单片机技术发展迅速,本版修订时同时增加了部分新的信息和内容,使本书能一直跟上单片机技术不断发展的步伐!

本书自出版发行以来,经过多次修订再版,共发行了20多个年头。这在科技书中很是不易,决心趁第5版修订之机,尽最大努力铸就高质量、高水平的经典著作,以此答谢广大读者的厚爱!

为了尽力做好本次修订工作,邀约王荣兴(高级工程师)、孙华芳(应用工程师)共同参与整个修订工作的全过程。特邀南京航空航天大学纪宗南高级工程师共同商讨修订大纲、内容提要等,特致以衷心感谢!

尽管我们在修订过程中作了很大努力,但因文学功底、技术水平所限,有疏漏、不足之处,敬请广大读者、同行批评指正!孙育才于2012年3月1绪 论本章简述单片机的诞生、现状与发展。使读者了解单片机的发展历史过程及其广泛应用的重要意义。单片机最早、而且最广泛地应用于嵌入式系统中。正确理解嵌入式应用系统的基本概念及其广泛含义,以及与单片机的密切关系。1.1 单片机的诞生、现状及其发展

20世纪70年代中期是8位微型计算机发展的极盛时期,随着大规模集成技术的飞速发展,为了满足更广泛的实时测控应用的需要,从当时的微型计算机家族中诞生出一个新的分支——单片微型计算机。由于它主要应用于测控系统,所以国际上统称为微控制器。它以体积小、价格低廉、功能完善、面向实时测控系统为特征;打破了典型微型计算机按逻辑功能划分单晶芯片的传统体系结构概念;以不求规模大、力争小而全为宗旨,在一块单晶芯片上集成了构成一台计算机的主要元件:中央处理器(CPU)、运算器(ALU)、存储器(RAM、ROM)、I/O端口以及其他功能元件。这样,一块单晶芯片就构成了一台具有一定功能的计算机,故称为单片微型计算机,现规范统称单片机。为此,在本版书中一律采用规范用语:单片机。

1976年9月,美国Intel公司研制的MCS—48单片机问世,它成为跨时代的里程碑。它标志着大规模集成技术和计算机技术的伟大成就:首先在一块单晶芯片上集成了一台具有一定功能的微型计算机。其后针对不同应用领域的需要,研制出多种相兼容的机型,组成了MCS—48系列单片机。

MCS—48系列单片机的出现,轰动了全世界的电子业,从而美国等各大公司纷纷推出自己的单片机,多种型号的单片机纷纷应运而生。

1980年,Intel公司在总结了MCS—48系列单片机的基础上推出了技术更趋完善、功能更强的8位高档MCS—51系列单片机。随着集成和计算机技术的极大发展,MCS—51系列单片机在工艺上、结构上、功能上均有了很大的改进和提高,如运算速度的提高、存储容量的扩大,特别是体系结构上的灵活性,即既可单片应用,又可外部进行功能扩展,从而可以满足各种不同应用场合、领域的不同需要。

由于单片机的广泛应用,极大地促进了工业技术的自动化、智能化的发展,深受广大应用领域的欢迎、产生了极大的市场需求,因而国际上很多公司均相继推出各有特色的、新的8位高档单片机,其中较有影响的有Motorola、Zilag、ATMEL、Microchip、TI、Rokwel、NEC、LG等公司的产品,现在市场上推出的各种类型的单片机有上百余种,其中大部分为专用或专用于某一应用领域,而只有MCS—51系列单片机最具通用性,适用领域最为广泛。

20世纪末,Intel公司已先后将8051单片机的内核技术转让给世界20多个半导体生产厂家,如美国的ATMEL、Dallas公司,荷兰的PHILIPS公司,韩国的LG公司,以及中国的无锡微电子科研中心、华邦电子等。各家公司纷纷结合自己的特点,各自推出与8051兼容的、又各具特色的高档8位单片机系列。因此,学好了MCS—51系列单片机的基本原理及其应用技术,就可很方便地选择多种与MCS—51系列兼容的,又各具特色及其功能的单片机进行开发、应用。

为了能满足高层次应用的需要,Intel公司于1983年推出了功能极强的16位MCS—96系列单片机。尽管其功能很强,经实际应用发现其内部硬件结构不尽如人意,且市场并不看好,因此在不久即告停产。目前只有少数新出版的单片机书中,还在继续介绍MCS—96(98)系列单片机。

在MCS—96(98)系列单片机停产之后,不久即推出了新的、高性能的16位MCS—196单片机。它是MCS—96系列中的CHMOS工艺的一个分支,性能上与MCS—96系列相兼容。因此,国内不少用户原选用MCS—96(98)系列单片机的,可改用MCS—196单片机。MCS—196是16位工业标准的嵌入式微控制器,它与MCS—96(98)系列单片机的指令系统相兼容,外部体系结构相同,而内部结构进行了改进,增加了许多新的功能,使数据处理速度加快,输入/输出操作方便。MCS—196系列中的主要产品型号为8XC196KB、KC、KD、KQ、KT和8XC196NQ、NT、MC等。多种机型中的存储器,分别有无ROM型、ROM型和EPROM型等,用户可根据实际需要进行选型。

之后,Intel公司又推出了与MCS—51相兼容的8/16位新型MCS—251单片机,它有如下的特征:24位(即16MB)的线性寻址能力;寄存器化的CPU,即可按字节、字、双字对寄存器进行访问;采用页面方式加速了对外部指令的提取;指令流水化作业;对原MCS—51系列的指令集作了补充,包括16位算术/逻辑运算指令,64KB的扩展堆栈空间,完成一条指令最短执行时间为二拍,支持较大的程序和数据块,使用C语言编程的代码效率得到了较大提高等等。可见其功能有了较大扩展和提高。

其他公司也都先后推出16位的单片机系列。例如Motorola公司采用新的模块化设计技术,生产出MC68HC16Z1 16位单片机,它由内部模块总线(IMB)、CPU16系统集成模块(SIM)、静态RAM(SRAM)、通用定时器模块(GPT)、队列串行模块(QSM)、模/数转换模块(ADC)等组成。CPU16是一个真正的16位高速CPU,它与8位的MC68HC11的CPU向上兼容,具有两个16位的通用累加器和三个16位的变址寄存器,支持8位、16位、32位的存储和算术运算。它可寻址1M字节的数据存储器空间和1M字节的程序存储器空间。它具有适合控制要求的数字信号处理(DSP)功能,它支持高级语言,允许使用高级语言(C语言)来编写控制程序,从而可大大缩短软件设计周期。CPU16支持位、字节、双字节(字)整数、32位长整数和16位、32位符号小数以及20位有效地址数据类型,具有极丰富的指令(共260条)系统。片内设有1KB的高速静态RAM,统一编址为1M字节(20位地址线)。其他还设有多功能输出比较/输入捕捉通用定时模块,脉宽调制输出,两个串行端口,11个中断源,12级中断优先级等功能。相比之下,这是16位单片机中功能最强的一种。

其他公司,如Mostek公司推出了68200 16位单片机,适用于微机局部网络;TI公司推出了TMS—9900系列16位单片机;日本国三菱公司研制出第一台16位CMOS工艺的单片机,其功能可与当时的一台多片机系统相媲美。

其后几家大公司又先后推出更高档的32位单片机系列,其功能极强,主要应用于复杂的高层次应用系统中。

作为电子计算机三大体系(巨型机、微型机、单片机)之一的单片机一族,必然按照其自身技术规律向前发展。

近几年,国际上又推出了新型的ARM微控制器。ARM是Advanced RISC Machines的缩写,是微处理器行业中的一家企业,它设计了大量高性能、价廉、低功耗的RISC微处理器和相关的技术软件,可适用于多种领域。ARM公司自己不生产这类微控制器芯片,而是将其设计的技术授权给国际上许多著名的半导体、软件和OEM厂家,每个厂商都获得一套独一无二的ARM相关技术和服务。利用这种合伙关系,各家厂商再生产出具有自己特点的ARM微控制器。也就是说,ARM是一家国际微控制器技术设计公司,专门为各家厂商进行ARM微控制器内核的技术设计。目前,国际上已有30多家厂商与ARM公司签订了技术合作协议,将先后生产出各具特色的ARM微控制器。

ARM的设计实现了内核极小而功能极强的结构,而且功耗很低。其设计采用了RISC(精简)指令集,设有一个大的、统一的寄存器文件,加载/存储结构;数据处理操作只针对寄存器内容,而是不直接对存储器进行操作;支持字节(8位)、半字(16位)、字(32位)的数据结构;具有高的指令吞吐量,出色的实时中断;采用流水技术,以增加指令流的速度,等等。可见,这是一种新颖的超强功能、高速度、低功耗的单片机。

由于单片机应用领域十分广大,而且不断向更高层次扩展,市场需求量一直经久不衰,极大地推动着单片机的生产和发展。1.2 单片机的广泛应用

单片机以其独特的卓越性能,得到了极其广泛的应用,已经渗透到各个应用领域,几乎已是无所不包、无所不及。单片机在实际应用中呈现出如下主要特点:(1)小巧灵活、生产成本低、易于产品化。它能极方便地嵌入到各种自动化、智能化等的测控系统中。(2)可靠性高,适应环境温度宽。单片机芯片本身就是按照工业测控环境要求设计的,能适应各种恶劣环境下工作,它与典型微机具有极大的差别。一般单片机(例如MCS—51系列)具有以下三个级别的产品:

民用级:应用场合的环境温度为0~70℃。实际要宽于此范围。

工业品级:应用环境温度范围为-40~85℃。这种芯片在生产流程上具有:

•采用密封式封装;

•在工业级规定的温度范围内进行电气特性测试;

•产品经过在125℃温度下44小时的老化处理;

•老化后100%进行电气测试及最终质量检测。

军品级:应用环境温度为-65~125℃。这类产品的处理和检测更严格。

当然,不同等级的产品其价格也相差较多。应视实际要求进行选择。(3)体系结构灵活,易于外部功能扩展,可以满足规模的应用要求。(4)串行通信功能强,可以方便地实现多机、上档机与前端机或分布式测控与管理系统之间进行通信。(5)开发与设计简单,研制周期短。

鉴于以上诸多独特优点,其广泛应用涉及各个领域。以下仅列举已广泛应用的几个方面。(1)工业自动化

工业自动化是个极大的领域,例如过程控制、数据采集、机电一体化、工业设备技术改造等等,无不有单片机的用武之地。实践证明,单片机在我国工业技术改造、实现工业自动化发挥了极大的作用。(2)智能化仪表

随着单片机的广泛应用,各类仪器、仪表的自动化、智能化程度越来越高,并有利于提高仪器、仪表的精度和准确性,简化结构、缩小体积、降低成本、方便携带,并迅速向数字化、智能化、多功能化、快速化等方向发展。(3)各种机器人

近年来各种机器人,特别是工业机器人发展迅速,而指挥、控制机器人协调动作的核心、中枢则是单片机。(4)民用消费类电子产品

由于单片机的诸多特点,特别是价格低廉,使之越来越广泛地应用于民用消费类电子产品中,如家用电器、电子玩具、电子字典、记事簿、照相机、游戏机、防盗控制、IC卡、摄像监控等等,使产品体积越来越小、自动化智能化水平越来越高,而价格却越来越便宜。(5)汽车、航空、导航与国防

汽车中的点火装置、变速器、控制仪表、计价器,民航飞机中的诸多航空仪表及其管理,国防武器装备等,都普遍应用了各类单片机,迅速提高自动化、智能化、快速化的能力。(6)数据处理及终端设备

计算机网络终端、银行终端以及计算机外部设备,图文传真机、各类驱动器、打印机等,都选用单片机进行管理和控制。(7)电信技术

调制解调、程控交换、智能线路运行控制、各类通信设备等,无不选用单片机实现数字化、自动化、智能化。

单片机的应用已遍布各个应用领域,极大地推动了我国信息化的进程。作为电子信息类专业的科技人员应责无旁贷地努力学好单片机技术,其益非浅!1.3 单片机的发展趋势与特点

随着超大规模集成技术与计算机技术的飞速发展,单片机技术亦必然按其自身的发展规律,向高速、高性能化;大容量、外部电路内装化;单一电源、低功耗,SOC(System On Chip——系统芯片)等方向发展。

今后一段时期内,单片机的发展趋势主要有以下特点。

1)不断推出高档、高性能的新型单片机

单片机作为计算机技术领域的一个分支,必然按其自身的发展规律,不断沿着新的方向飞速发展。如前所述,从4位机(日本曾着力推崇)、8位机到16位机、32位机以及ARM等,以字长代表技术进级,不断推出高技术、高性能的机种。每次进级,均代表着具有根本性的突破,并逐步向新的、更高层次的应用领域拓宽。

例如,美国Intel公司推出的32位MCS—80960系列单片机,该系列设有80960KB、KA、MC和CA 4档机型。采用SμmCHMOS工艺,新型RISC结构,主频可达33MHz,运算速度达到20MIPS,设有DMA总线,中断控制器(32级256个中断矢量),1KB(字节用“B”表示)的高速缓冲器,4个80位的浮点寄存器、多端口寄存器、多重并行执行单元、多重内部总线、浮点运算器等等。

美国Motorola公司推出的具有极高集成度的32位MC68H332单片机系列,亦采用RISC结构,由5大模块组成:指令系统进一步优化了的68020 CPU;基于RISC结构的专用定时、事件控制单元(TPU);可完成同步/异步通信的专用模块(QSM);减少系统外部逻辑元件及提供片内系统排错能力的模块(SIM);2KB高速静态RAM。CPU和TPU各自独立,TPU RISC指令可同时处理16个定时事件而无需CPU的干预。CPU与68000兼容,具有虚拟支持,循环方式操作先行指令等32位运算,具有极强的寻址能力,增强的高级语言编译器,运算速度可动态改变。

新近推出的ARM微控制器可以认为是这类微控制器的统称,因为其内核技术基本相同,只是各个厂家融入了自己的技术、功能特色,推出各不相同的微控制器。

ARM内核的技术特点是:

•采用RISC架构;

•体积小、低功耗、低成本、高性能;

•支持Thumb(16位)/ARM(32位)双指令集,能很好地兼容8位/16位器件;

•大量使用寄存器,指令的执行速度快;

•大多数的数据操作均在寄存器中完成;

•寻址方式灵活、简单,执行效率高;

•指令长度固定。

从上可见,ARM内核在结构上有了很大的改进,增加了灵活性,而且体积小、功耗低,所以其适用领域宽广。

随着超大规模集成技术的不断发展,以及在广大市场需要的推动下,还将不断推出越来越高档的、结构灵活、技术先进的新型单片机,不断拓宽新的、更高层次的应用领域。

2)成熟的高新技术下移,不断提高单片机的性能

近年来,在典型微型计算机系统中许多成熟的、高新计算机技术不断移植到单片机上,以增强和提高单片机的性能。就整体市场需求而言,8位字长的单片机基本能满足大量的实时测控应用系统的要求,而且技术成熟、成本低、研制周期短。因此,市场占有率最大,竞争最激烈。为了能保持8位单片机在更广阔的市场需要,势必不断采用新的技术,增加新的功能,推陈出新,重点发展。最显著的是将已在微型计算机,特别是已在16位和32位单片机等验证,成熟可行的新的先进技术,移植到8位单片机上,不断推动8位单片机技术和性能的发展。例如:

•采用RISC结构,简化指令集,使应用程序的设计简单、方便。

•取指令的流水技术,节省读取指令时间,提高运算速度。

•虚拟结构,扩大存储容量,增加I/O端口连接。

•配置高级(C)语言,提高编程效率,缩短程序设计周期。

•改进串行总线结构,如I2C、CAN总线等,提高串行通信能力。

•采用双CPU结构,提高数据处理能力。

另外,随着超大规模集成技术的飞速发展,不断提高集成度,把原属外部功能的器集成到芯片内部。例如,加大片内存储器容量:片内ROM可达16KB、32KB等,甚至可达64KB;RAM可达1~4KB;片内EPROM改用E2PROM或Flash存储器,实现快速和联机编程或修改,保存重要数据更加方便;片内集成10位或12位多路A/D转换器、看门狗(watch dog)、DMA以及相关的放大电路等。

随着硅片面积的增大,集成度的不断提高,片内功能元件的不断扩大,从而实现真正意义上的单片机。

3)不断采用新工艺,实现低功耗、宽电压、高速、高可靠性

随着单片机应用领域的不断扩大,低功耗要求日显突出,所以不断采用新的生产工艺。目前单片机的功耗已降到微安级,今后还将更低。主频已从4MHz、8MHz、12MHz,发展到24MHz、33MHz,大大提高了单片机的运算速度。不断拓宽供电范围,从早期的多挡电源,改成单挡+5V±10%,发展到目前的+2.1~+7V,使单片机能在很宽的供电范围内均能正常工作。今后功耗还将降得更低,供电范围更宽,以满足于电池供电的需要。为满足实时应用中高可靠性的要求,不断采用提高可靠性的措施,设置多种监视功能,以防止主机死机。不断加宽工作环境温度,一般可在-40~+85℃范围内正常工作。

今后还将采用更多新的措施,以保证应用系统的高可靠性运行。

4)日趋单片应用

随着硅片面积的不断扩大以及集成技术的发展,逐步把构成应用系统所需的功能元件集成在一块单晶芯片内,逐步减少或完全不需外部功能扩展,从而实现真正的一块芯片(单片机)就能构成一个完整的应用系统。

为了满足不同应用领域的需要,同一系列的单片机可有多种机型,以满足不同用户的最佳选择。这样就可简化应用系统的硬件设计,缩小体积,降低成本,提高可靠性。这是今后单片机发展的主要方向。

目前市场上的专用单片机,如Motorola公司的68HC05系列单片机,Microchip公司的PIC系列单片机,均属单片应用。但这类产品在应用上均有其较大的局限性。今后主要应发展通用性较强的真正意义上的单片机系列,特别是8位字长的单片机系列。

5)SOC嵌入式应用系统

随着集成技术的发展。满足应用领域的需要,单片机将进一步发展成SOC嵌入式应用系统,即一块芯片就是一个完整的以单片机为内核的嵌入式应用系统。这个应用系统是具有明确的应用对象的系统,其中包括传感器在内的所有硬件组织和全部应用软件。例如,某种类型的空调、冰箱或手机等,只需配上对应的SOC芯片,即可构成完整的应用系统。这样的应用系统,体积更小、可靠性更高、系统设计更简单。

目前,国内外正加大投入,开发、研究SOC芯片。最近,国内已开发出包括温度传感器在内的SOC应用系统芯片,不久的将来将进入这样的时代。

6)单片机应用网络化

近几年来随着网络技术的发展突飞猛进,已有很多单片机应用产品网络化,即借助网络技术实现更广泛的通信,例如,智能家庭、智能建筑等,应用系统实现大范围的多机网络测控与管理。这样可以通过网络查询相关信息,调度、控制和管理有关仪器、设备和家电等。

以上是近阶段单片机发展的趋势和主要特点。

由于单片机极适合我国的国情和需要,所以,尽管单片机在我国开发、应用仅20余年的历史,但应用却已极为广泛,已渗透到各个领域,为我国信息化建设发挥了巨大的作用,而且已经形成了一支相当规模的单片机开发、应用高科技队伍,各大专院校均已普遍开设单片机课程,源源不断地培养出大批新生力量,努力为我国科学技术与经济建设服务。1.4 嵌入式系统与单片机

随着计算机技术与超大规模集成技术的发展,就计算机整体而言,形成了三大主流:巨型机、微型机、单片机,并按各自的技术规律飞速发展。

近年来,随着计算机应用体系的不同,将计算机分成嵌入式应用和非嵌入式通用型计算机。巨型机和典型微机系统属非嵌入式通用型计算机,而工控微机、专用CPU、单片机(微控制器)等则属嵌入式应用型计算机。后者面向实时测控应用系统,一般以这类计算机为内核,嵌入到实际的应用系统中,构成完整的并实现某种特定功能要求的应用系统,故称之为嵌入式计算机应用系统,简称为嵌入式系统(Embedded System)。

嵌入式系统是个广义的概念。从军用到民用,从工业、农业、服务业到社会,从天上到地下,再到海里,所有用于实时测控的计算机应用系统,均可纳入嵌入式应用系统范畴。

嵌入式系统是一个完整的,具有实现某种特定功能的计算机应用系统。因此,它应包含应用系统的全部硬件的组成结构与应用软件。

如图1.1所示为组成嵌入式应用系统的示意图,其中计算机是整个系统的指挥、管理、测控、处理的核心,嵌入在整个系统之中。图1.1 嵌入式应用系统

1)嵌入式系统的硬件结构

嵌入式系统的硬件主要由以下几部分组成。(1)嵌入式系统的计算机内核

嵌入式计算机是构成应用系统的核心部分,它是整个系统的指挥、测控和协调中心。嵌入式计算机类型广泛,可以是工控机、可编程控制机、专用CPU或处理器芯片、DSP(数字信号处理器)、单片机等,配置外部功能元件(RAM、ROM、I/O口……)。目前应用得最多、最广泛的应属单片机(微控制器)。实际选用何种机型取决于用应用系统功能的需要和综合评价。

外部功能元件扩展是指计算机本身(或芯片内部)功能不足,需外部扩展,如RAM、ROM、I/O口、A/D或D/A、看门狗、中断源等。就目前的单片机而言,由于受集成度的限制,为了能满足广泛的应用领域的需要,在结构上特为外部功能的扩展提供了方便。(2)常规外围设备

除计算机内核所需的功能元件之外,根据应用系统的不同需要,还需配置有关的外围设备,如各种各样的输入/输出设备,如键盘、扫描仪、触摸屏、打印机、绘图仪等。(3)专用外围设备

这类设备名目繁多,应根据不同的应用系统需要而配置的相关专用设备,常用的有电动机、步进电机、动力机械、各类传感器等。专用外围设备一般均需通过相应的接口电路或元件与计算机内核相连通。由于外设的多样性和复杂性,给接口电路的设计会带来一定的难度,这也是嵌入式应用系统的设计具有一定的难度和复杂部分。(4)人机对话

一般嵌入式应用系统均需人工对系统运行情况进行干预、调整和操作,一般常用的有键盘、鼠标、显示屏、控制台等。(5)网络连接

越来越多的嵌入式应用系统已实现联网管理,如智能家居、智能建筑、智能仪器、大范围的数据采集、管理,包括各系统之间、系统与上档机之间网络通信等。

不同的嵌入式应用系统,其硬件配置也各不相同,有简单的、复杂的、很复杂的。显然,以单片机为内核的应用系统是最典型的嵌入式应用系统。

2)嵌入式系统的软件配置

一个完整的嵌入式应用系统,除了针对确定的应用对象而配置的硬件组成系统外,还必须配备对应的软件系统。两者相辅相成,才能使应用系统正确、有效和可靠地工作。硬件系统相当于一个人的躯体,而软件则是储存在这个人大脑中的知识和技能,灌输的知识和技能越多、越丰富,就能水平越高,能完成和处理更多、更复杂的工作。同样,一个嵌入式应用系统,它必须配备对应的软件系统。

由于嵌入式计算机的应用领域极为广泛,不同的应用对象,其功能要求也不相同,其规模大小不一,配置和包含的软件系统也各不相同。(1)嵌入式系统软件

对于采用高档嵌入式计算机的高层次应用,需配备实时多任务操作系统。由于嵌入式应用系统一般都要求具有实时性,即对事件作出实时处理,而且在操作系统的管理下的多个事件,应按规定的时间内做出响应。对于较大规模的嵌入式应用系统,需处理的事件和任务较多,常常需要同时或分时处理多个任务,这就必须配置实时多任务操作系统。它与一般常见的通用分时操作系统不同。即在时间上要求达到实时处理。

要开发一个好的,功能完善的实时多任务操作系统需花费巨大的技术和精力,目前我国正大力进行开发和研制,已有部分软件企业先后推出了多套实时多任务操作系统供用户选用。一般国内开发、研制嵌入式应用系统的用户,多购买现成的实时多任务操作系统,在既定的实时多任务操作系统的环境下研制应用程序,并在此环境下运行应用程序。

对于规模较小、不太复杂、任务较少的嵌入式应用系统,一般不配置实时多任务操作系统,可以开发一个简单的实时监控程序,用以对任务进行管理,对系统中的突发事件采用实时响应处理。

对于大量的、功能不复杂、任务不多的单片机嵌入式应用系统,对硬件资源的管理和事件的实时响应,以及功能的实现,全部融合在应用程序中完成。

目前,很多嵌入式计算机都配置有高级语言(C语言)。不同的单片机系列,其硬件配置不完全相同,或者有较大的不同,或者有较大的不同其配置的C语言软件也不完全相同。由于嵌入式系统计算机,特别是单片机,涉及硬件资源的管理,因此,它与通用型C语言不完全相同。目前国内用得较普遍、较成熟的是C51语言。(2)应用软件

在嵌入式应用系统中,其全部应用功能的实现,都必须由相应的应用软件来完成。由于嵌入式应用系统的多样性和广泛性,不同的应用软件存在着极大的差异性,所以一般均为专一的。

目前,尚没有嵌入式应用系统应用程序的生成软件,都必须由应用系统的开发者自行开发、设计。

对于单片机的嵌入式应用系统,其应用软件可以选用汇编语言或者C语言来设计和编程。应用软件的设计与硬件系统的配置有着密切的关系,整个应用系统的功能最终要由应用软件来完成和实现。因此,应用软件的优劣,将直接影响应用系统的功能要求、技术质量和可靠性。所以,设计出一个优良的应用软件至关重要,是开发、技术的关键。

3)单片机是嵌入式系统中应用最典型、最广泛的内核

20世纪70年代,微型计算机的飞速发展,极大地满足了大量的、普通而广泛的数据处理和事务管理等要求。但由于它体积大、价格贵、可靠性不高等原因,不能满足更大量的、更广泛的电子类产品中实时应用的需要。随着超大规模集成技术的发展,MCS—48单片机成功问世,它以体积小、价格低廉、功能完整、面向实时测控应用为特征、不求规模大、力争小而全为宗旨,在一块单晶芯片上集成了一台计算机。所以,从单片机诞生之日起,就是为了满足广大电子产品领域实时应用的需要,以单片机为内核,嵌入到具体的电子产品应用系统中,构成一个完整的、具有某种特定功能的实体应用系统。实现产品自动化、智能化,成为最基本、最典型的嵌入式应用系统。

随着单片机技术的发展,功能的不断增强及其应用的广泛性,目前应用于嵌入式系统的计算机内核的绝大部分是单片机。所以说,单片机是当前构成嵌入式应用中最典型的主流机型。学好单片机基本理论及其技术,是开发、设计各类嵌入式应用系统的基础。1.5 MCS—51系列单片机

美国Intel公司自推出MCS—48系列单片机以后,陆续推出了MCS—51系列、MCS—96系列、MCS—196系列以及MCS—960系列单片机。有些系列派生出很多机型以满足广大用户的需要。本书仅论述MCS—51系列单片机。

1)MCS—51系列单片机

MCS—51系列单片机是继MCS—48系列单片机之后推出的高档8位单片机,它的出现直接与半导体HMOS工艺的发展有关。在总结MCS—48系列单片机与扩大应用功能的基础上,扩大了片内存储器容量及外部存储器寻址空间,增强了指令系统与寻址能力,扩大了I/O端口和新增设了全双工串行通信端口,增加了中断源及优先级,新增了乘、除算术运算及比较和位操作等功能指令。克服了MCS—48系列存储容量小、运算功能弱的不足,提高了全机的操作功能与速度。在体系结构上增强了灵活性,以满各个领域、不同用户在功能上的不同需要。

HMOS是高性能的NMOS工艺,一般的MCS—51系列产品(如8051/8751/8031等)均属之。将CMOS和HMOS工艺相结合,产生了CHMOS工艺的机型,如80C51/87C51/80C31等均属之。这类产品既保持了HMOS高速和高封装密度的特点,又具有CMOS低功耗的优点。两者结合,特别适合某些应用场合。

CHMOS工艺的单片机还具有掉电保护和休眠运行两种独特的节电处理方式。

MCS—51系列单片机的主要机型所具有的功能参数如表1.1所述。表1.1 MCS—51系列主要机型功能参数表

MCS—51系列单片机既适用于简单的测控系统,又可组成复杂的应用系统,特别适用于逻辑控制。由于它性价比高,可以灵活地组成各种规模的应用系统,开发、设计简单、方便,故而是当前国内普遍选用的机种。

表1.1所列是MCS—51系列的基本型,随着计算机和集成技术的发展,该系列相继派生出很多种高性能的机型,但其内核的基本技术和功能原理是一致的、相兼容的。故不一一详述了。

除了MCS—51系列单片机外,还有MCS—196系列、MCS—151/251、MCS—960系列等。1.6 MCS—51已成为国际经典

尽管单片机技术发展很快,先后推出了高档的16位、32位、ARM等多种系列单片机,但就绝大部分实时测控等应用领域而言,8位字长的单片机,足以满足用户的实际需要,加上8位单片机在性能上不断提高、拓宽,所以8位单片机的市场需求经久不衰,仍占市场的绝对主流。

近年来,Intel公司已先后将MCS—51系列单片机的内核技术转让给国际著名的单片机生产厂家。如荷兰的PHILIPS、美国的ATMEL、韩国的LG、中国无锡微电子中心、中国台湾的华邦等共20余家,它们各自推出以MCS—51为内核,并融进本公司技术特色的单片机系列。例如新近推出的Winbond——W78×××系列,其内置EPROM、Flash 64KB、SRAM 1280B、3个定时/计数器、9个中断源、32/36 I/O口、WDT(看门狗)、ISP(在线编程)、4个PWM,工作电压为4.5~5.5V、主频为25~40MHz,适应工作环境温度为-40~+80℃,可外部扩展存储器64KB。工业级W781E×××系列,内置EPROM Flash为8KB/16KB/32KB,RAM为256B或256B+1KB,工作电压为2.4~5.5V或2.7~5.5V,主频为40MHz等。再如STC89系列,其特点是低功耗、超低价、高速(0~90M),3个定时/计数器、双数据指针,高速A/D转换等。还有全新的SST8051单片机家族等。再有最新技术SOC(片上系统),其内核大多是8051。例如:高速度、片内外三时钟、微封装片上系统——C8051F330/330D等不胜枚举。

Intel公司的后继产品,如MCS—151/251均与8051向上兼容。

从上可见,由于8051内核技术完整,体系结构灵活,得到了绝大多数用户的认可。再加上8051内核技术的广泛转让,使之在单片机技术领域占有绝对优势,从而成为单片机技术经典。

另外,由于8051内核技术几乎包含了单片机理论基础和技术的全部,具有较好的系统性和完整性。再加上20多年来,国内已积累了丰富的技术资料、完整的实验环境与开发设备,因此,MCS—51系列单片机技术非常适合课堂教学。并且,学懂、弄通了MCS—51单片机的基本理论与应用技术,也就打好了学习、应用单片机的基础,即使学、用其他系列单片机也就不难了。

在ARM微控制器刚推向市场时,曾有人断言,它将独占单片机市场。而几年来市场销售情况证明,8位字长的单片机市场主流地位没有发生变化,而且,在今后相当长一段时期内不会改变。同样,作为一门应用科学,选用MCS—51系列单片机作为课堂教学的内容,是合理的,在今后的一段时期内不大可能改变。这也正是本书仍以MCS—51系列单片机进行第5版再版,充实新的内容,编排得更符合教学规律和要求,力求论述精练、正确、由浅入深、重点突出、理论联系实际、着重应用,进一步提高全书的系统性、完整性和实用性。力争把本书再版成经典著作。思考题与习题

1.单片机是在怎样的历史背景下诞生和发展起来的?它与典型微机在结构上、发展宗旨上有何不同?它们在各自的应用领域中的重要区别是什么?

2.单片机具有哪些突出优点?今后发展的重要方面有哪些?

3.何谓嵌入式应用系统?如何正确、全面理解嵌入式应用系统的含义?

4.嵌入式内核计算机有哪些?为什么说单片机是最早、最典型、应用最广泛、最基本的嵌入式内核计算机?

5.为什么8位字长的单片机应用经久不衰?为什么MCS—51能成为当今国际典型的8位单片机?2 MCS—51系列单片机系统结构2MCS—51系列单片机系统结构本章以MCS—51系列单片机为主线,详细阐述其系统组成结构。熟悉并掌握单片机的硬件组成结构及其功能原理,是嵌入式应用系统开发、设计的首要条件和基础。有部分内容将另立章、节进行详细论述。2.1 MCS—51系列单片机的基本结构

单片机的技术理论与基本概念与典型微机相比并无太大的差别,而硬件的组成结构则有所不同。典型微机的硬件结构是按逻辑功能划分芯片,如CPU芯片、RAM/ROM芯片、I/O芯片、定时/计数器芯片等等,然后按组成系统组装在一块印制板上,称主机板,再配上外围设备,如电源、硬盘、显示器、键盘等,组成一台完整的计算机硬件系统。这种结构必然是体积大、价格贵、可靠性差。而单片机则不然,它把构成一台计算机的主要功能部、器,如CPU、RAM/ROM、I/O口、定时/计数器、振荡电路、中断系统等,集成在一块芯片上,构成一块单晶芯片即一台具有一定功能的计算机。这种结构的突出优点是体积很小、价格低廉、可靠性高、应用设计简单,特别适用于各类电子产品的嵌入式实时测控应用系统中。为了区别于典型微机,把它称为单片微型计算机,简称单片机,国际上常称为微控制器。

如图2.1所示为典型的单片机逻辑结构示意图。图2.1 典型单片机逻辑结构示意图

如图2.2所示为MCS—51系列单片机内部组成结构示意图。目前各家公司均推出了与MCS—51相兼容的单片机系列,如AT89C51、AT89S51、STC89、HSM8051等系列,其内部硬件组成结构基本相同,仅融进了具有自己特色的功能部件、相对扩展了某些功能。因此,学懂、弄通了MCS—51系列单片机的基本技术原理,对其他与其相兼容的单片机系列的问题也就迎刃而解了。图2.2 MCS—51系列单片机内部组成结构示意图

注“*”号者为8052增强型

随着集成技术的发展,单片机在制造工艺上进行了不断的改进,例如采用CHMOS工艺,使单片机不仅提高了运算速度,又大大降低了功耗。为了方便用户的选择和需要,在功能结构上又分成ROM型(8051)、EPROM型(8751)、无ROM/EPROM型(8031),采用CHMOS工艺的单片机,其型号为80C51/87C51/80C31等,以示区别。目前很多产品将片内程序存储器改成Flash或E2PROM,实现快速电擦写和联机改写程序代码,提高重要数据代码的可靠性。

MCS—51系列单片机片内包含如下功能部件:

•8位字长的CPU;

•振荡器和时钟电路;

•4KB/8KB/16KB的程序存储器ROM、EPROM或Flash;

•128B/256B/512B的数据存储器RAM;

•可寻址外部扩展程序存储器和数据存储器各64KB;

•20多个特殊功能寄存器;

•32线并行I/O口;

•1个全双工的串行I/O口;

•2/3个16位定时/计数器;

•5/6/9个中断源,2个优先级,同级中断请求则按优先顺序查询;

•具有较强功能的位处理(布尔)能力;

•有些产品已将ADC、看门狗等功能部件集成在单片机芯片内。

从上可见,以MCS—51为内核的单片机系列,其硬件结构具有功能部件多、功能强等特点。值得一提的是,除了8位CPU外,还具备一个很强的位处理器,组成一个完整的位处理微计算机,因为它包含有完整的位CPU、位RAM、ROM(EPROM)、位寻址的寄存器、I/O口和位处理指令集,所以MCS—51是一个双CPU的单片机。位处理在开/关决策、逻辑处理、过程测控等方面具有独到之处。MCS—51把8位和位处理的硬件资源组合在一起,两者相辅相成,一套设备,可两种用法。这是单片机技术上的一个突破,大大简化了实时测控应用系统中大量的位处理操作,加强了位处理的实时性,这也是MCS—51单片机的突出优点之一。2.2 MCS—51系列单片机的外特性——引脚功能说明

单片机通过封装引脚与外部功能元件或电路相连接,实现信息的连通。单片机的功能与特性通过诸多引脚来体现,称为单片机的外特性。为了减少封装体积,尽量压缩引脚数量,很多引脚是双功能或多功能的。因此,熟悉和理解每条引脚的功能、特性和用法十分重要。

目前,MCS—51的封装有多种形式,现以40线双列直播式封装为例进行详细介绍,如图2.3所示。图2.3 MCS—51外部引脚和逻辑符号图(1)主电源引脚

VCC——40脚。正常运行和编程校验主电源为+5V,有些产品可放宽至2.7~6.0V,请参照产品说明。

VSS——20脚。电路接地。(2)时钟源

时钟引脚XTAL1和XTAL2内接反相放大电路构成一个振荡器,为单片机运行提供时钟信号。

XTAL1——19脚。一般外接晶振的一个引脚,它是片内反相放大器的输入端口。当单片机直接采用外部振荡信号时,此引脚接地电平。

XTAL2——18脚。外接晶振的另一个引脚,它是片内反相放大器的输出端口。当直接采用外部振荡信号源时,此引脚为外部振荡信号的输入端口,直接与外部振荡信号源相连接。(3)控制、选通或复用

此类引脚为单片机对外部提供控制、选通信号。有些引脚具有复用功能。

RST/VPD——9脚。RST(RESET)单片机复位信号输入端口。当单片机处于正常运行状态时,由该引脚输入脉宽为2个机器周期以上的高电平复位信号,则将单片机进行复位,使单片机处于原始状态;在VCC掉电期间,此引脚(即VPD)接通备用电源,以保持片内RAM信息不受破坏。因此,此引脚是双功能的。

ALE/——30脚。输出允许地址锁存信号。当单片机在访问外部存储器时,ALE输出的负跳变电平信号将P0口上的低8位地址打入地址锁存器。在非访问外部存储器期间,ALE仍以振荡频率固定不变的速率输出,因而它可用于对外部输出但对频率要求并不十分精确的脉冲信号。这是因为当单片机访问外部数据存储器时,两个机器周期只出现一次ALE信号,即少了一个ALE信号。如果应用系统无外部数据存储器的扩展,不访问外部数据存储器时,则ALE输出的信号频率是固定的。ALE信号可驱动8个LS型TTL负载。为第二功能,对片内程序存储器(片内EPROM型,如8751)进行编程写入时,此引脚用于编程脉冲的输入端。——29脚。访问外部程序存储器的选通信号,低电平有效。当单片机外部扩展的程序存储器,读取指令代码时,每个机器周期输出两次信号;在访问片内程序存储器时,则不产生信号,即保持高电平的无效状态。在访问外部数据存储器时,也不产生有效信号,而是保持高电平(无效状态)。/VPP——31脚。为单片机访问内部或外部程序存储器的选择信号,低电平有效。当引脚与VCC(+5V电源)引脚相连接,使引脚保持高电平时,单片机开始工作首先访问从0000H地址开始的片内程序存储器,当程序指针PC值超过片内程序存储器最大容值(如片内程序存储器的容量为4KB时,当PC值超过0FFFH)。则单片机将自动转向外部程序存储器继续而顺序(即1000H)访问和运行;当引脚直接接地(低电平、有效),则单片机直接访问外部扩展的程序存储器,并从0000H地址编码单元读取指令代码进行运行程序。这表明所有运行程序均应全部编制在外部扩展的程序存储器中,例如8031型单片机。VPP为片内EPROM型(8751)单片机作为编程电压输入端口用。对片内EPROM型(8751)进行编程时,由此引脚提供编程电压。具体编程电压值,应参阅相应的单片机使用说明。(4)多功能I/O端口

MCS—51配置有众多的I/O端口,具有多种功能,使用灵活,这是单片机的独特优点之一。

P0口——32~39脚。8位漏极开路双向I/O口。当单片机访问外部扩展的存储器时,它是低8位地址总线和8位数据总线分时复用;外部不扩展存储器类元件或单片应用时,为双向I/O口;在对片内程序存储器(8751型EPROM)进行编程和程序校验时,用于指令代码的输入/输出。可见,P0口是多功能的,不同的场合具有不同的功能。P0口可驱动8个LSTTL负载。

P1口——1~8脚,具有内部上拉电路的8位准双向I/O口,这是一个真正的、实用的I/O口。只有在对片内程序存储器(8751型EPROM)进行编程和程序校验时,作低8位地址总线用。对于增强型(8052)单片机而言,其中的P1·0和P1·1两位端口用于第二变异功能,即另有他用。P1口可驱动4个LSTTL负载。

P2口——21~28脚,具有内部上拉电路的8位准双向I/O口。当单片机访问外部扩展的存储器时,用作高8位地址总线,它与P0口合成16位的地址总线;对片内程序存储器(8751型EPROM)进行编程和程序校验时,亦用作高8位地址总线,它与P1口组合成16位的地址总线;无外部扩展存储器类元件(单片应用)时,则用作准双向I/O口。在实际应用中,主要作高8位地址总线。可驱动4个LSTTL负载。

P3口——10~17脚,具有内部上拉电路的准双向I/O口,实际上它是一个特殊的第二变异功能端口。它的每一位均可独立定义为第一功能的I/O口或第二变异功能口。第二变异功能口的具体含义如下:

P3·0——10脚,RXD,串行通信数据接收端口。

P3·1——11脚,TXD,串行通信数据发送端口。

P3·2——12脚,,外部中断源0请求端口,低电平有效。

P3·3——13脚,,外部中断源1请求端口,低电平有效。

P3·4——14脚,T0,定时/计数器0外部事件计数信号输入端口。

P3·5——15脚,T1,定时/计数器1外部事件计数信号输入端口。

P3·6——16脚,,外部数据存储器写选通信号端口,输出低电平有效。

P3·7——17脚,,外部数据存储器读选通信号端口,输出低电平有效。

从上可见,P3口实际上就是通常的8位控制总线。它与P0口和P2口组合成计算机的三总线:8位数据总线、16位地址总线和8位控制总线,为外部功能元件的扩展提供了方便。当P3口中的某一位不用时,可单独用作准双向的I/O口。

MCS—51系列单片机就是通过这外部封装的40条脚组合成各不相同的嵌入式应用系统。2.3 中央处理器——CPU

MCS—51单片机的核心部件是一个8位字长的高性能中央处理器、CPU,它是计算机中的运算器和控制器组合的总称,是计算机的中枢,故称之为中央处理器。它是单片机的指挥中心,执行机构。在单片机的运行过程中,它的作用是读入和分析每条指令代码的功能要求,指挥并控制各有关元件,具体执行指定的操作。它是由8位运算器(算术/逻辑运算部件)ALU、布尔(位)处理器、定时/控制部件和若干寄存器等主要部件所组成。2.3.1 运算器

单片机的运算器主要包括8位算术/逻辑运算部件、累加器A、寄存器B、程序状态寄存器等。其功能是实现数据的算术/逻辑运算(数据处理)和数据传输等操作。

1)算术/逻辑运算部件——ALU

单片机的算术/逻辑运算部件(ALU)的主要功能是实现8位数据的+、-、×、÷的四则运算和“与”、“或”、“异或”逻辑运算,包括位操作以及循环、清“0”、置“1”、加“1”、减“1”等若干基本操作。

2)累加器A

MCS—51单片机的运算器是累加器型结构。累加器A是运算、处理数据时的暂存寄存器,用于对ALU提供操作数和存放运算结果。凡需经ALU进行操作的数,如逻辑运算、移位等,均需通过累加器A。所以它是运算器中应用最为频繁的寄存器。在结构上,它直接与运算部件(ALU)和内部总线相连,连一般的数据传送和交换也均需通过累加器A,这就是累加器型结构的特点。MCS—51单片机是属于以累加器A为中心的系统结构形式。

MCS—51单片机的系统结构,从总体上说是属于以累加器A为中心的组成结构,绝大部分的数据处理和操作均需通过累加器A进行。为了能更好地满足实时性要求,简化操作过程,提高处理速度,在内部结构上又采取了改进措施,使部分操作通过累加器A旁路,将数据信息直接传送到目的单元,从而省略了先送累加器A再送目的单元这样前一个中间环节。这样,由直接寻址或间接寻址方式的数据信息可以从片内的任意地址单元直接传送到另一个目的单元中,不需经过累加器A转送,有些操作也可在寄存器和变量之间直接进行,从而节省了中间环节的转送指令,加快了数据传送和处理的速度,增强了实时性。

3)寄存器B

寄存器B是进行乘(×)、除(÷)算术运算时的辅助寄存器。在进行乘法运算时,累加器A和寄存器B分别存放两个相乘的数据,乘积的高位字节数(高8位)存放在B寄存器中,而乘积的低位字节数(低8位)存放在累加器A中;在进行除法运算时,被除数存放在累加器A中,除数存放在寄存器B中,相除运算的结果,商数存放在累加器A中,而余数则存放在寄存器B中。在不作乘、除运算的其他情况下,B寄存器可作一般的寄存器或中间结果暂存器等灵活使用。

4)程序状态字寄存器——PSW

程序状态字PSW是一个8位的寄存器,它用于寄存当前指令执行后的相关状态标志,为下一条或以后的指令执行提供状态条件。因此,许多指令的执行结果将影响状态字寄存器(PSW)中某些相对应位的状态标志。MCS—51单片机的程序状态字(PSW)的重要特点在于可以用软件编程,即通过软件编程可以改变PSW的状态字标志。PSW的结构以及各位状态标志的定义如下:

Cy——最高位进位标志位。当运算结果最高位产生进位(或借位)时,标志位Cy置成1,否则为0。另外,在进行布尔(位)处理时,Cy作累加器用,称布尔累加器。一般常用“C”表示。

AC——辅助进位标志位,又称半字节进位标志位。当运算结果从D3(第3位)产生进位(或借位)时,置位AC为1,否则为0。此标志位常用于BCD码运算调整。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载