1、毕 业 论 文基于51单片机的温度控制系统设计摘 要随着电子技术的迅速发展,特别是随大规模集成电路的出现,给人类生活带来很大的改变,尤其是有关单片机技术应用的产品走进了千家万户,其中温度更是工业生产中常见的被控参数,因此对温度控制系统进行研究是具有很广泛的意义。智能温度测量装置将广泛地应用于工业现场、农业生产及我们生活环境之中。目前常用的温度测量系统大多存在缺点,研究和开发温度测量装置既可为人民生活服务,也满足工业生产的要求。本文从硬件和软件两方面介绍MCS-51单片机温度控制系统的设计思路。通过本次设计了解到如何设计单片机温度控制及设计的方法和步骤,同时也进一步加深了对单片机温度控制的了解。
2、本设计主要利用单总线数字温度传感器DS18B20为测量器件、以LCD液晶显示为显示器件,AT89S52微处理器为控制核心,构成了温度实时测量装置。关键词MCS-51单片机; 温度传感器; 液晶显示 AbstractAlong with the rapid development of electronic technology, especially with a large-scale integrated circuits, to human life has been a fundamental change. Especially SCM technology applications
3、 has entered the tens of thousands of households. Industrial production in the temperature is charged with common parameters, the typical temperature control system to study with a very broad meaning.The intelligence temperature survey installment widely will apply in the industry scene, the agricul
4、tural production and our living conditions. At present the commonly used temperature survey system mostly has shortcomings.The research and the development temperature survey installment already may serve for the lives of the people, also satisfies the industrial production the request. In this pape
5、r from both hardware and software introduced the MCS-51 microcontroller temperature control system design, hardware schematic diagram and the process was simple description. Through this design makes me understand how to design SCM temperature control and design of methods and steps to achieve。This
6、design mainly uses single main line digit temperature sensor DS18B20 is surveys the component, take the LCD liquid crystal display as the display device, AT89S52 the microprocessor is the control core, constituted the temperature real-time measurement installment. Keywords MCS-51 monolithic integrat
7、ed circuit ;temperature sensor ;liquid crystal display 前言本论文介绍MCS-51 单片机结合DS18B20设计的温度控制系统,系统用一种新型的“一总线”可编程数字温度传感器(DS18B20),不需复杂的信号调理电路和AD转换电路能直接与单片机完成数据采集和处理,实现方便、精度高、功耗低、微型化、抗干扰能力强,可根据不同需要用于各种温度监控及其他各种温度测控系统中。AT89S52系列单片机与MCS-51系列兼容,它是在MCS-51的技术内核为主导的基础上倾注了ATMEL公司优良技术进行新的设计和开发,使之功能更强、更具特色。AT89S52单
8、片机是AT89S系列中的增强型高档机产品,AT89S系列单片机是继AT89C系列之后推出的功能更强的新产品。AT89S系列与AT89C系列相比,运算速度有了较大的提高,它的静态工作频率为033MHz,片内集成有双数据指针DPTR、定时监视器(watch dog timer,又称看门狗)、低功耗休闲状态及关电方式、光电方式下的中断恢复等诸多功能,极大地满足了各种不同的应用要求。AT89S52片内存储器容量是AT89S51的一倍,即片内8KB的Flash程序存储器和256B的RAM。另外,它还增加了一个功能极强的、具有独特应用的16位定时/计数器2等多种功能。美国DALLAS最新单线数字温度传感器
9、DS18B20,具有微型化低功耗、高性能、可组网等优点,新的“一线器件”体积更小、适用电压更宽、更经济 Dallas 半导体公司的数字化温度传感器DS1820是世界上第一片支持 “一线总线”接口的温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20的测温分辨率较高,DS18B20可直接将温度转化成串行数字信号,因此特别适合和单片机配合使用,直接读取温度数据。目前DS18B20数字温度传感器已经广泛应用于恒温室、粮库、计算机机房。测量温度范围为 -55C+125C,在-10+85C范围内,误差为0.5C。现场温度直接以“一线总线”的数
10、字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。新的产品支持3V5.5V的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小。 DS18B20可以程序设定912位的分辨率,精度为0.0625C。可选更小的封装方式,更宽的电压适用范围。分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS18B20的性能是新一代产品中最好的!性能价格比也非常出色!DS18B20使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。在传统的模拟信号远距离温度测量系统中,需要很好的解决引线误差
11、补偿问题、多点测量切换误差问题和放大电路零点漂移误差问题等技术问题,才能够达到较高的测量精度。另外一般监控现场的电磁环境都非常恶劣,各种干扰信号较强,模拟温度信号容易受到干扰而产生测量误差,影响测量精度。因此,在温度测量系统中,采用抗干扰能力强的新型数字温度传感器是解决这些问题的最有效方案,新型数字温度传感器DS18B20具有体积更小、精度更高、适用电压更宽、采用一线总线、可组网等优点,在实际应用中取得了良好的测温效果。传统的测温元件测出的一般都是电压,再转换成对应的温度,需要比较多的外部硬件支持,电路复杂,软件调试复杂,制作成本高。所以本人改用一种智能传感器DS18B20作为检测元件,可以直
12、接读出被测温度值。1线制与单片机相连,减少了外部硬件电路,具有低成本和易使用的特点。目 录第一章 绪论71.1研究目的和意义71.2单片机概述81.2.1单片机简介81.2.2单片机的特点81.3单片机的发展和应用91.3.1单片机的发展91.3.2单片机的应用10第二章MCS-51单片机122.1 MCS-51单片机概述122.2 AT89S52 单片机132.2.1 AT89S52单片机的硬件结构142.2.2 AT89S52单片机的引脚功能说明152.2.3 AT89S52 中央处理器192.2.4 AT89S52存储器结构202.2.5 AT89S52 复位电路212.2.6 AT89
13、S52 振荡器、时钟电路232.2.7 AT89S52 单片机的中断242.2.8 AT89S52 单片机定时/计数器26第三章 DS18B20温度传感器293.1 DS18B20基本情况293.1.1 DS18B20 特点293.1.2 单线技术303.2 DS18B20描述313.2.1 DS18B20 引脚功能313.2.2 DS18B20 供电方式333.2.3 DS18B20 数据输出格式343.3 DS18B20单线协议和相关命令353.4 DS18B20的应用373.4.1 DS18B20使用须知373.4.2 DS18B20电路图38第四章 显示器394.1 LCD液晶显示器简
14、介394.1.1 LCD液晶显示器的特点394.1.2 LCD液晶显示器的分类394.2 1602液晶显示器简介404.2.1 1602液晶显示器基本特性404.2.2 1602液晶显示器引脚404.2.3 1602液晶显示器指令424.2.4 LCD1602液晶接口电路434.3 DS18B20及 LCD1602温度显示434.3.1 51单片机温度控制原理图说明434.3.2 51单片机温度控制软件设计45结论51参考文献52致 谢52第一章 绪论1.1研究目的和意义在近四十年的时间里,电子计算机的发展经历了从电子管、晶体管、中小规模集成电路到大规模集成电路这样四个阶段,尤其是随着半导体集
15、成技术的飞跃发展,七十年代初诞生了一代新型的电子计算机微型计算机,使得计算机应用日益广泛;而单片微型计算机的问世,则更进一步推动了这一发展趋势,使计算机应用渗透到各行各业,达到了前所未有的普及程度。一个由微电子技术为先导,计算机技术为标志,包括新材料、宇航、生物工程、海洋工程等多种学科在内的新技术革命正在兴起。在国内,由于单片机具有功能强、体积小、可靠性好、和价格低廉等独特优点,因此,在智能仪器仪表、工业自动控制、计算机智能终端、家用电器、儿童玩具等许多方面,都已得到了很好的应用,因而受到人们高度重视,取得了一系列科研成果,成为传统工业技术改造和新产品更新换代的理想机种,具有广阔的发展前景。考
16、虑到利用单片机控制在以上方面的重要性,研究利用单片机来控制温度是非常有意义的。温度是一种基本的环境参数,人们的生活和环境的温度息息相关。在工、农业生产过程中需要实现实时测量温度,因此研究温度的测量方法与装置也具有重要的意义。在现代化的工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。例如:在冶金工业、化工生产、电力工程、造纸行业、机械制造和食品加工等诸多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。采用MCS-51单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高
17、产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的问题。随着电子技术以及应用需求的发展,单片机技术得到了迅速的发展,在高集成度,高速度,低功耗以及高性能方面取得了很大的进展。伴随着科学技术的发展,电子技术有了更高的飞跃,我们现在完全可以运用单片机和电子温度传感器对某处进行温度检测,而且我们可以很容易地做到多点的温度检测。1.2单片机概述1.2.1单片机简介单片微型计算机简称单片机。它在一块芯片上集成了计算机的所有基本功能部件,包括中央处理器(CPU)、随机读写存储器RAM、只读存储器ROM、输入输出(I/O)接口电路、中断系统、定时/计数器(T/C)和串行通信接口电路等
18、。因此,单片机只需要和适当的软件及外部设备相组合,就可以成为一个完整的单片机系统。单片机(SCMC)是早期Single Chip Micro Computer的直译,它忠实的反应了早期单片机(甚至到MCS-51系列单片机)的形态和本质。随着单片机技术进一步发展到MCS-96、80C51、M68HC05、M68HC11系列单片机时,着力扩展了控制功能,在芯片内集成了许多外围电路及设备接口,如模/数转换器A/D、脉宽调制器(PWM)、计数器、捕捉/比较逻辑、高速I/O接口、程序监视定时器(WDT)等,从而突破了传统意义上的计算机结构,发展成为Micro Controller的体系结构。因此,最能准
19、确的反应单片机的设计思想、并且有长远技术眼光的词汇是“微控制器”,目前国外已普遍称之为微控制器MCU(Micro Controller Unit)。鉴于单片机在应用时,通常是处于被控系统的核心地位并融入其中,即以嵌入被控对象的方式进行使用,为了强调其嵌入式应用的特点,又称之为嵌入式微控制器EMCU(Embedded Micro Controller Unit)。因在汉语中,单片机的称呼更简洁通俗,以致单片机一词已约定俗成,仍沿用至今。1.2.2单片机的特点单片机的主要特点表现在以下几个方面:功能强、体积小、功耗低、价格便宜、低电压、低功耗、易于产品化;有较强的抗干扰性和较高的可靠性,温度适用范
20、围较广,能够在各种恶劣环境下正常工作;可以方便地实现多机、分布式的集散控制,从而使整个控制系统的效率和可靠性大大提高。单片机的主要特点:l 在结构上把中央处理器(CPU)、存储器、定时器和各种输入/输出接口电路集成在一块超大规模集电路芯片上,其集成度高,一块单片机芯片就是一台计算机。l 为了满足工业控制的要求,单片机的指令系统中均有极丰富的转移指令、I/O口的逻辑操作及位处理功能。单片机的逻辑控制功能及运行速度均高于同一档次的微机,控制功能强。l 单片机把各功能部件集成在一块芯片上,内部采用总线结构,减少了个各芯片之间的连线,大大提高了单片机的可靠性与抗干扰能力。对于强磁环境易于采取屏蔽措施,
21、单片机功能扩展性强,单片机的系统扩展和系统配置较典型、规范,容易构成各种规模的应用系统。同时,其外部总线丰富 有的机型增加了SPT、I2C、Micro wire、I-Wire等串行总线方式,进一步缩小了体积,简化了体积。l ,能方便地组成各种智能化的控制设别和仪器,做到机电仪一体化,它运用灵活、易于产品化。1.3单片机的发展和应用1.3.1单片机的发展 1.3.2单片机的应用单片机广泛应用于国民经济的各个领域。广泛应用于家用电器、智能化仪器仪表、医用设备、汽车电子产品、航空航天、专用设备的智能化管理及工业生产过程控制等领域。单片机的一些典型应用如下:l 单片机广泛应用于仪器仪表中,结合不同类型
22、的传感器,可以实现诸如电压、功率、频率、湿度、温度、流量、速度、角度、压力等物理量的测量。单片机的使用加速了仪器仪表向数字化、智能化、多功能化和柔性化方向发展。l 单片机作为机电一体化产品中的控制器,能大大提高产品的自动化、智能化水平。例如,可编程控制器是一个典型的机电控制器,其核心常常就是由单片机构成的。l 单片机的实时数据处理能力和控制功能,使其广泛地应用于工业测控、航天航空、尖端武器等各种实时控制系统中。在现代化的飞机、军舰、大炮、导弹火箭和雷达等各种军用装备上,都有单片机深入其中。l 在比较复杂的系统中,常采用分布式多机系统。单片机在这种系统中经常作为一个终端机,安装在系统的某些节点上
23、,对现场信息进行实时测量和控制。l 消费类电子产品控制。该应用主要反映在家用电器反面,例如,在洗衣机、电冰箱、空调机、微波炉、电饭煲、电视机、点热水器、音响、影碟机、游戏机、电子计价秤、汽车电子与保安系统等产品中使用单片机后,其控制功能和性能大大提高,并且实现了智能化、最优化控制。l 计算机网络终端设备(如银行终端、商业自动收款机等)和计算机的外部设备(如键盘、鼠标、打印机、磁盘驱动器等),以及自动化办公设备(如传真机、复印机、绘图仪、考勤机等)都使用了单片机,使其具有输入、计算、存储、显示等功能,并具有和计算机连接的接口。第二章MCS-51单片机2.1 MCS-51单片机概述尽管8位单片机种
24、类很多,但无论是从世界范围还是从全国范围来看,51系列都是使用最为广泛、影响深远的,51系列单片机实际上已经成为一个公认的8位单片机的标准,一直占用最大是市场,与MCS-51内核兼容的单片机仍是嵌入式低端应用的主流产品。MCS-51系列单片机是Intel 公司在MCS-48系列单片机的基础上于20世纪80年代初推出的高档8位单片机。MCS-51系列单片机及其兼容单片机有许多种型号的芯片可供选择,有Intel公司生产的8051、8052基本型单片机系列产品,还有Philips、Dallas、Siemens、Atmel、华邦和LG等公司生产的80C51系列兼容单片机。他们都以8051为内核,具有相
25、同的指令系统。根据其内部结构和功能的不同分为两个子系列:51子系列和52子系列。2.1.1 51子系列和52子系列51系列分为51和52两个子系列,是以芯片型号的最末位数字为标志。其中51子系列为基本型,而52子系列位强化型。51子系列单片机有Intel公司生产的三个HMOS工艺的基本型号8031、8051、8751,以及对应的CHMOS工艺低功耗型号80C31、80C51、87C51;另外,还有比较常用的Atmel公司生产的AT89C51等型号。这些是基本的几种型号,其特点如下:l 一个8位CPU;l 一个片内振荡器及时钟电路;l 4KB程序存储器(8031、80C31没有片内ROM);l
26、128字节片内数据存储器(另有128字节特殊功能寄存器单元);l 64KB程序存储器地址空间;l 64KB数据存储器地址空间;l 两个16位可编程的定时器/计数器;l 一个可编程的全双工通用异步串行接口UART;l 32条可按位寻址的双向I/0线;l 两级优先级嵌套,5个中断源的中断结构;l 具有很强的布尔处理能力,即按位处理能力。其中,8031(或80C31)没有片内程序存储器,8051(或80C51)有4KB掩膜片内程序存储器,8751(或87C51)有4KB EPROM片内程序存储器,AT89C51有4KB Flash片内程序存储器。52子系列单片机52子系列单片机与51子系列向上兼容,
27、其特点如下:l 256字节片内数据存储器;l 8KB的片内程序存储器;l 3个16位可编程定时器/计数器;l 中断源增加到6个;52子系列单片机的主要型号有:没有片内存储器的8032(或80C32)、掩膜片内存程序存储器的8052(或80C52)、EPROM片内程序存储器的8752(或87C52)和采用Flash片内程序存储器的AT89C52及具有AT89S52等。MCS-51系列常用芯片性能如表所示。表2-1 MCS-51系列及其兼容单片机及性能表子系列51子系列 52子系列 型号803180C31805180C51875187C51AT89C51803280C32805280C528752
28、97C52AT89C52AT89S52(ISP)片内ROM无4KB掩膜4KBEPROM4KBFlash无8KB掩膜8KBEPROM8KBFlash8KBFlash片内RAM片外寻址范围并行I/O串行接口定时/计数器中断源 128B 64KB 48位 1UART 216位 5个 256B 64KB 48位 1UART 316位 6个2.2 AT89S52 单片机AT89S52的功能特性:AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K系统可编程Flash 存储器。该器件采用Atmel的高密度非易失性存储器技术制造,与工业上标准的80C51指令系统及引脚完全兼容。片上Flash允许
29、程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,3个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 设有静态逻辑,可用于运行到零频率,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机
30、一切工作停止,直到下一个中断或硬件复位才恢复正常工作。2.2.1 AT89S52单片机的硬件结构AT89S52机的主要性能如下:l 8K字节在系统可编程Flash存储器;l 1000次擦写周期;l 全静态操作:0HZ33HZ;l 三级加密程序存储器;l 32个可编程I/O口线;l 三个16位定时器/计数器;l 八个中断源;l 全双工可编程的UATR串行通道;l 低功耗空闲及掉电模式;l 掉电后中断可唤醒;l 看门狗定时器;l 双数据指针;l 掉电标示符; 图2.1 AT89S52结构框图2.2.2 AT89S52单片机的引脚功能说明AT89S系列与MCS-51系列兼容,也是40条引脚,共3种封
31、装,即PIDP、PLCC和TQFP。现以PDIP(双列直插式)封装为介绍各引脚功能。AT89S52单片机引脚功能说明如下: 图2.2 AT89S52的PIDP封装图1. 主电源引脚VCC(40脚):电源供电电压4.05.0V。VSS(GND)(20脚):接地端。2. 外接晶振或外部振荡器引脚XTAL1(19脚):当外接晶振时,接外接晶振的一个印脚。片内振荡器由一个单级反相器组成,XTAL1为反相器的输入。当外部振荡器提供时钟信号时,则由XTAL1输入。XTAL2(18脚):接外部晶振的另一引脚,片内为单级反相器的输出。当由外部时钟源提供时钟信号时,则本引脚浮空。3. 控制、选通和复位引脚RST
32、(9脚):复位信号输入端,高电平有效,在此引脚上出现两个机器周期以上的高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平,特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效,DISRTO默认状态下,复位高电平有效。ALE/(30脚):地址锁存允许信号端。当访问外部存储器时,ALE信号的输出用于锁存低8位地址的控制信号,此信号频率为振荡器的1/6,当不访问片外存储器时,ALE信号可用做对外部输出时钟或定时信号。然而,特别强调在每次访问外部数据存储器时,ALE脉冲将会跳过,如果需要通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效,这一位置“1”,
33、ALE仅在执行MOVX或MOVC指令时有效,否则,ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置,对微控制器处于外部执行模式下无效。在对Flash存储器编程时,此引脚用于输入编程脉冲信号()。(29脚):片外程序存储器读选通信号输出端。当AT89S52从外部程序存储器执行外部代码时,在每个机器周期内被激活两次,而在访问外部数据存储器时,将不被激活。/VPP(31脚):访问外部程序存储器控制信号,为了能从0000HFFFFH的外部存储器读取指令,必须接GND。为了执行内部程序指令,应该接VCC。在Flash存储器编程期间,使用该引脚的第二功能,也接受12V VPP
34、电压。4. 多功能输入/输出(I/O)引脚P0口(3932脚)(P0.0P0.7):P0是一个8位漏极开路的双向I/O口。在作为输出口时,每条引脚可以带动8个TTL输入负载。当把“1”写入P0口时,则它的引脚可用做高阻抗输入。当对外部程序或数据进行编程时,P0可用做多路复用的低字节地址/数据总线,这种模式下,P0具有内部上拉电阻。在对Flash存储器进行编程时,P0用于接收代码字节;在校验时,则输出代码字节;这时,需要外部上拉电阻。P1口(18脚)(P1.0P1.7):P1是8位双向I/O口,且带内部上拉电阻。P1的输出缓冲器可以带4个TTL负载。当把“1”写入P1时,其引脚的电平会由内部上拉
35、电阻拉高,故可以用做输入引脚。当作为输入时,由于内部上拉电阻的作用,那些被输入信号拉低的引脚会输出电流IIL 。另外,P1.0和P1.1引脚可以配置为定时/计数器2的外部计数输入(P1.0/T2)和触发输入(P1.1/T2EX),如表2-2所列。在Flash存储器编程和校验时,P1同样接收低字节地址。 表2-2 P1口的第二功能引脚第二功能P1.0P1.1P1.5P1.6P1.7T2(定时/计数器T2的外部计数输入)时钟输出T2EX(定时/计数器T2的捕捉/重载触发信号和方向控制)MOSI(用于系统编程)MISO(用于系统编程)SCK(用于系统编程) P2口(2128脚)(P2.0P2.7):
36、P2也是一个内部带上拉电阻的双向I/O口。它的输入输出特性和P1相同。不同的是在用16位地址存取外部程序或数据存储器时,用于发送高字节地址。当用8位地址存取时,P2发送P2特殊功能寄存器的内容。在Flash存储器编程或校验时,P2接收高位地址及一些控制信号。P3口(1017脚)(P3.0P3.7):P3口是一个具有内部上拉电阻的8位双向I/O口,P3的输出缓冲器能驱动4个TTL 逻辑电平。当输入“1”时,其引脚的电平会由内部上拉电阻拉高,故可以用做输入引脚。当作为输入时,由于内部上拉电阻的作用,那些被输入信号拉低飞引脚会输出电流(IIL),在Flash编程或效验时,P3口也接收一些控制信号。P
37、3口作为特殊功能(第二功能)使用,如下表所示: 表2-3 P3口的第二功能P3口引脚第二功能P3.0RXD(串行数据输入口)P3.1TXD(串行数据输出口)P3.2(外部中断0输入)P3.3(外部中断1输入)P3.4T0(定时器/计数器0外部输入)P3.5T1(定时器/计数器1外部输入)P3.6(外部数据存储器写选通信号输出)P3.7(外部数据存储器读选通信号输出)2.2.3 AT89S52 中央处理器AT89S52单片机的核心部件是一个字长为8为的高性能中央处理器(CPU),它是计算机的运算器和控制器组合在一起的总称,是计算机的中枢,故称为中央处理器。它是AT89S52单片机的指挥中心、执行
38、机构。它的作用是读取和分析指令,并根据指令的功能要求,指挥和控制单片机的有关部件具体地、有步骤地执行指定的操作,完成指令所要求的处理功能。CPU 一般由运算器ALU、定时控制部件、若干寄存器等通过内部总线连成一个整体组成。1.算术/逻辑运算部件AT89S52的算术/逻辑运算部件(ALU)包括运算器、累加器A、寄存器B、暂存器TMP、程序状态字PSW、堆栈指针SP、数据指针DPTR等。 AT89S52的ALU与8051的ALU完全兼容,其位处理功能非常强,这对“面向控制”特别有用,指令功能功能极为丰富,8位并行处理能力极强。2.专业寄存器简介寄存器是用来寄存信息的单元,其特点是存取速度快、方便,
39、在处理过程中起着重要作用。寄存器的数量是衡量一台计算机处理能力的重要标志之一。AT89S52单片机的寄存器可以分为工作寄存器(也称为通用寄存器)、专用寄存器和特殊功能寄存器(SFR)。特殊功能寄存器是专为对应的功能部件服务的。累加器A:是运算过程中的暂存寄存器,用于提供操作数和存放操作结果,其他大部分的操作也都要用到累加器A,所以它是应用最为频繁的寄存器。在结构上通过内部总线直接与ALU相连,一般信息的传递和交换都需要通过累加器A,这类计算机称为以累加器A为中心结构的计算机。寄存器B:寄存器B一般用于乘、除法操作指令,与累加器A配合使用。寄存器B中存放第二操作数,乘积的高位字节或除法的余数部分
40、。其他情况下可作一般寄存器或中间结果暂存器使用。特殊状态寄存器PSW:是一个8位的寄存器,它用于寄存当前指令执行后的有关状态,为以后指令的执行提供状态条件。AT89S52单片机的PSW是可编程的,即可以通过软件改变PSW的状态标志。其结构如下:CyACF0RS1RS0OV-PPSW:堆栈指针SP:堆栈是一组编有地址码的特殊的存储的单元。AT89S52是在片内RAM中开辟的一个存储空间,栈顶的地址码由栈指针SP 指示。SP是一个8位的增量寄存器,它指示的堆栈深度位0255个存储单元。AT89S52允许用户通过软件定义片内RAM的某一个连续区域单元作为堆栈。数据进栈时SP先自动加“1”,然后将欲进
41、栈的数据压入由SP所指示的堆栈单元;弹出时将SP所指示的堆栈单元内的数据推出栈,然后SP自动减“1”。因而,SP总是指向装有数据的栈顶,即栈顶总是满的。数据指针DPTR:数据指针DPTR是个独特的16位寄存器,它由两个独立的8位寄存器DPH和DPL组合而成,既可以作16位数据指针(DPTR)用,也可分开以8位的寄存器(DPH、DPL)各自单独使用。16位的数据指针DPTR常用于访问64KB范围内的任意地址单元。 AT89S52设有两个DPTR,分别为DP0(DP0H、DP0L)和DP1(DP1H、DP1L),通过软件对特殊功能寄存器AUTR1(片内RAMSFR区,地址为A2H)的DPS进位设置
42、选择,当DPS=0,选择DP0,DPS=1则选择DP1。两个DPTR便于访问内部或外部的有关数据单元。3.通用工作寄存器R0R7AT89S52在片内RAM的00H1FH(共32B)空间开辟了4组通用工作寄存器区,每组共有8个8位的寄存器R0R7,通过软件对PSW的RS1和RS0位进行设置,选择任意一组作为前台使用,其余3组被屏蔽。其优点是免去进栈保护,可减少堆栈深度,节省出入栈指令和时间。多余不用的工作寄存器组可作为片内RAM访问。2.2.4 AT89S52存储器结构AT89S系列存储器结构与AT89C系列相同,程序存储器和数据存储器分开,各自有专用地址空间、选通信号。片内配置8KB的系统内可
43、编程(ISP)Flash,256B的RAM,还可外部扩展,程序存储器可扩展至64KB,数据存储器可单独扩展64KB(包括外部扩展的功能部件地址在内)。 图2.3 AT89S52存储器结构示意图AT889S5的存储器结构分为独立的两部分,程序存储部分,当引脚接高电平(=1)时,存储器地址从片内程序存储器0000H开始,当外部扩展有程序存储器时,程序在执行过程中自动平滑转向外部继续执行;当接低电平(=0)时程序存储器全面在外部,由进行读选通,AT89S52内部设置8KB的Flash,如不够用,还可向外扩展。 AT89S52片内RAM共256B,高128B(80HFFH)既是128B的RAM ,又是
44、特殊功能寄存器(SFR)区,两者地址重叠,但物理层分开。通过规定的寻址方式访问特殊功能寄存器(SFR)区。外部还可单独扩展64KB的地址空间,包括外部扩展的需寻址的功能部件。用/进行读写选通,用16位DPTR 数据指针指示访问地址。128B的特殊功能寄存器(SFR)区是一个特殊的物理层地址空间,其地址编码与片内发高128B的RAM重叠,通过专门的寻址方式,才能访问特殊功能寄存器。2.2.5 AT89S52 复位电路RST是Eeset(复位)的缩写,复位是使CPU以及喜用各部件处于确定的初始化状态,并使系统从初始态开始工作。AT89S52的复位信号是从RST脚输入到片内施密特触发器中的复位电路,
45、当系统处于正常工作状态,且振荡器工作稳定后,如在RST脚上有低电平上升到高电平并维持2个机器周期(24个振荡周期)以上,CPU九可以相应并将系统复位1.复位方式 常用的复位方式有:上电复位、电平式开关与上电复位,电路如路所示。这两种简单的复位电路中,干扰易串入复位端,在大多数情况下不会造成单片机的错误复位,但有可能引起内部某些寄存器的错误复位。这时,可在RST脚接一个去藕电容。 图2.4 常用复位电路 定时监视器(WDT 看门狗)复位 WDT可以根据应用程序正常运行周期进行设定,当应用程序在运行过程中受到干扰或进入非正常运行状态时,WDT定时计数器产生溢出信号,复位主机,恢复正常运行状态。2.
46、省电方式AT89S52单片机提供两种省电工作方式:休眠方式和节电保持方式。其目的是尽可能地降低系统的功耗。在省电方式下VCC可后备电源供电。AT89S52单片机的两种省电方式可通过软件对特殊功能寄存器PCON的PD和IDL位的选择来实现。PCON寄存器的控制格式如下:D7D6D5D4D3D2D1D0字节地址87HSMODGF1GF0PDIDL可位寻址SMOD:串行口波特率加倍位。:保留位,未定义。DF1、GF0:通用标志位,供程序设计使用。PD:省电保持方式控制位。通过软件将PD位置1,则主机进入省电保持状态。IDL:休眠方式控制位。通过软件将IDL位置1,则主机进入休眠状态。休眠和省电保持方式期间外部引脚状态如表所示