基于单片机的PID温度控制系统.doc

上传人:可****阿 文档编号:42299767 上传时间:2022-09-15 格式:DOC 页数:56 大小:1.06MB
返回 下载 相关 举报
基于单片机的PID温度控制系统.doc_第1页
第1页 / 共56页
基于单片机的PID温度控制系统.doc_第2页
第2页 / 共56页
点击查看更多>>
资源描述

《基于单片机的PID温度控制系统.doc》由会员分享,可在线阅读,更多相关《基于单片机的PID温度控制系统.doc(56页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、.南京工业大学毕业设计题目:基于单片机的温度控制系统2011年6月51 / 56基于单片机的温度控制系统设计摘要近年来随着计算机在社会领域的渗透,单片机的应用正在不断深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统时,经常作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及具体应用对象特点的软件结合,以作完善。本文从硬件和软件两方面来讲述水温的自动控制过程,在控制过程中主要应用AT89C51、DS18B20、MAX232等,而主要是通过DS18B20数字温度传感器采集环境温度,以单片机为核心控制部件。软件方面采用汇编语言来进行程序设计,这样可

2、以使指令的执行速度快,节省存储空间。为了便于扩展和更改,软件设计采用模块化结构,使程序设计的逻辑关系更加的简洁明了,使硬件在软件的控制下协调运作。而系统的过程则是:首先,设定恒温运行时的温度值。然后,在运行过程中将采样的温度数字量送入单片机,最后用单片机来控制加热器,进行加热或停止加热,直到能在规定的温度下恒温加热。关键词:单片机系统传感器数据采集模数转换器温度DESIGN OFTEMPERATURECONTROLSYSTEM BASEDON SCMAbstractIn recent years,with the puter penetration in the social field,th

3、e application of SCM is to keep at the same time,traditional control testing update on Crescent benefits.Inreal-time detection and automatic control system of single-chip applications,often as a single-chip core ponent to use only single-chip is not enough knowledge,but also the specific hardware st

4、ructure and the specific features of application software objects bine to make perfect.In this paper,both hardware and software for automatic control of water temperature on the process,in the control of the main application of the process of AT89C51, DS18B20,MAX232 and so on,but mainly through the

5、digital temperature sensor DS18B20 collecting ambient temperature to single-chip microputer as the core control ponents. Software using assembly language for programming, so that the implementation of Directive speedto save storage space.To facilitate the expansion and change, software design using

6、modular structure, make the program design logical relationship more succinctly, make the hardware in the software under the control of the coordination of operations.And systematic process is: First of all, set the thermostat temperature at the time of operation.Then,in the running temperature of t

7、he process of sampling digital into thesingle-chip microputer, the last single-chip microputer to control the heater used for heating or stop heating until the temperature in the provisions under the constant temperature heating.Keywords:Single-chipmicroputersystem; Sensor;Data Acquisition;ADC; Temp

8、erature目 录摘要IAbstractII第一章 绪论11.1 文献综述11.1.1课题的背景及其意义11.1.2 单片机温度控制系统的国内外现状21.1.3 展望21.2 课题的主要内容31.3 课题的研究方案4第二章 设计理论基础62.1单片机的发展概况62.2 AT89C51系列单片机介绍72.2.1 AT89C51系列基本组成及特性72.2.2 AT89C51系列引脚功能82.2.3 AT89C51系列单片机的功能单元102.3 数字温度传感器 DS18B20132.3.1 DS18B20简介132.3.2 DS18B20的引脚图及引脚说明152.3.3 DS18B20的内部结构1

9、62.3.4 DS18B20的工作原理162.4 RS-232总线接口芯片 MAX232172.4.1 RS-232接口172.4.2 MAX232简介192.4.3 MAX232的管脚图及管教说明192.4.4 MAX232的内部功能框图21第三章 硬件电路设计233.1硬件系统功能模块设计233.2硬件系统电路连接设计253.2.1 温度检测电路253.2.2 继电器控温电路263.2.3 串口通信接口电路263.2.4 外部电路27第四章 PID控制算法284.1 PID控制的发展284.2 PID控制理论284.3 PID控制算法29第五章 软件设计335.1 软件设计综述335.2

10、软件流程图335.2.1 主程序流程图335.2.2 DS18B20实现温度转换和温度数值读取流程图345.2.3 显示流程图35结语36参考文献37致谢38附录 温度控制系统源程序39第一章 绪论1.1 文献综述温度是日常生活、工业、医学、环境保护、化工、石油等领域会经常遇到的一个物理量。在工业生产过程中为了高效地进行生产,必须对生产工艺过程中的主要参数,如温度,压力,流量,速度等进行有效的控制。其中温度控制在生产过程中占据了相当大的比例1。采用单片机控制,这些控制技术会大大提高控制精度,不但可以使控制简捷,降低产品的成本,更提高了生产效率。2单片机是指芯片本身,而单片机系统则是为实现某一个

11、控制应用需要由用户设计的,是一个围绕单片机芯片而组建的计算机应用系统。单片机自问世以来,其性能就在不断提高和完善,其资源又能满足很多应用场合的需要,加之单片机具有集成度高、功能强、速度快、体积小、功耗低、使用方便、价格低廉等特点,因此,应用日益广泛,并且正在逐步取代现有的多片微机应用系统。1.1.1课题的背景及其意义二十一世纪是科学技术高速发展的信息时代,电子技术、微型单片机技术的应用更是空前广泛,伴随着科学技术和生产的不断发展,需要对各种参数进行温度测量。温度一词在生产生活中所出现的频率日益增多,与之相对应的,温度控制和测量也成为了生活生产中频繁使用的词语,同时它们在各行各业中也发挥着重要的

12、作用。如在日趋发达的工业生产中,利用测量与控制温度来保证生产的正常运行;在农业中,用于保证蔬菜大棚的恒温保产等。温度是表征物体冷热程度的物理量,温度测量则是工农业生产过程中一个十分重要且普遍的参数。温度的测量及其控制对保证产品质量、提高生产效率、节约能源、生产安全、促进国民经济的发展起到非常重要的作用。由于温度测量的普遍性,温度传感器的数量在各种传感器中占据了首位。而且随着科学技术和生产的不断发展,温度传感器的种类还是在不断增加丰富来用于满足生产生活中的需要。单片机温度测量系统中的关键是测量温度、控制温度和保持温度,温度测量是工业对象中主要的被控参数之一。因此,单片机温度测量则是对温度进行有效

13、的测量,并且能够在工业生产中可以得到广泛的应用,尤其在电力工程、化工生产、机械制造、冶金工业等重要工业领域中担负着重要的测量任务。在日常生活中,也能广泛实用于地热、空调器、电加热器等各种家庭室温测量及工业设备温度测量场合。但温度是一个模拟量,如果采用相适当的技术和元件,将模拟的温度量转化为数字量虽不困难,但却成本较高,电路复杂。31.1.2 单片机温度控制系统的国内外现状(1)国外温度测控系统研究国外对于温度控制技术研究较早,始于20世纪70年代。先是采用模拟式的组合仪表,采集现场信息并进行指示、记录和控制。80年代末出现了分布式控制系统。目前正在开发和研制计算机数据采集控制系统的多因子综合控

14、制系统。现在世界各国的温度测控技术都发展很快,一些国家在实现自动化的基础上正向着完全自动化、无人化的方向发展。4(2)国内温度测控系统研究我国对于温度测控技术的研究则较晚,始于20世纪80年代。我国工程技术人员在吸收发达国家温度测控技术的基础上,才掌握了温度室内微机控制技术,该技术仅限于对温度的单项环境因子的控制。我国的温度测控设施计算机应用,在总体上正从消化吸收、简单应用阶段向实用化、综合性应用阶段过渡和发展。在技术上,以单片机控制的单参数单回路系统居多,尚无真正意义上的多参数综合控制系统,与发达国家相比,存在较大差距。我国温度测量控制现状还远远没有达到工厂化的程度,生产实际中仍然有许多问题

15、困扰着我们,存在着装备配套能力差,产业化程度低,环境控制水平落后,软硬件资源不能共享和可靠性差等缺点。51.1.3展望单片机为我们改变了什么?纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。以前没有单片机时,这些东西也可以做,但是必须使用复杂的模拟电路,然而这样做出来的产品不仅体积大,而且成本高,并且由于长期使用,元器件不断老化,控制的精度自然也会达不到标准。在单片机产生后,我们就将控制这些东西变为智能化了,我们只需要在单片机外围接一

16、点简单的接口电路,核心部分只是由人为的写入程序来完成。这样产品的体积变小了,成本也降低了,长期使用也不会担心精度达不到了的问题了。据统计,我国的单片机年容量已经达到了3亿片,且每年以大约20%的速度增长,但相对于世界市场我国的占有率还不到1%。特别是沿海地区的玩具厂等生产产品多数用到单片机,并不断的向内地辐射。所以,学习单片机在我国是有着十分广阔的前景。目前,测温控温系统得到快速的发展,国外的测量控制系统已经成熟,产品也较多。近两年,国内也出现了许多高精度的温度控制系统产品,但相对于用户来说,价格还是偏高。而由于竞争越来越激烈,现在企业发展的趋势是如何最有效的提高生产效率,降低生产成本。寻求性

17、能可靠、价格低廉,且应用广泛的元器件是生产过程中需首先要考虑的问题,因此像本设计这种控制简单、精度较高、价格低廉的控制系统会有很好的发展前景,所以学好单片机技术也十分重要。通过本次的设计,让我感觉到单片机的应用会越来越广泛,而且,在医疗事业的发展中,单片机也会越来越重要。以后的医疗服务会急速的向现代化,智能化等方向发展,从而增加了安全性,减少了操作的繁琐性。学习并使用单片机为核心进行设计,将会为我们电子工作者打开一扇通往电子设计新出路的大门。1.2课题的主要内容本课题以水为测量对象,温度测量电路接收传感器的信号,并将模拟信号通过模/数转换器转换为数字信号,送入单片机系统,与预设的温度对比,通过

18、一定的控制算法,控制继电器的通断,从而控制加热器的工作,使得水温维持在设定的温度。温度控制算法精确控制温度加热,以温度最小为优化目标。温度是工业控制对象的主要的被控参数之一,如冶金,机械,食品,化工各类工业中广泛使用的各种加热炉,热处理炉,反应炉等。在过去多是采用常规的模拟调节器对温度进行控制,本课题采用了单片微型机对温度实现自动控制。6使用单片机对其进行温度自动控制,难度就在于测量温度和单片机输出的温度误差是不是太大,导致无法输出,利用ATMEL单片机核心程序对其进行编码,实现温度在一段X围内的变化,实验成功控制语言的代码,并进行烧片,烧片成功后,运行实验,若能看到实验的结果,则实验完成。1

19、.3 课题的研究方案温度控制系统是一种比较常见和典型的过程控制系统。温度是工业生产过程中重要的被控参数之一,当今计算机控制技术在这方面的应用,已使温度控制系统达到自动化、智能化,比过去单纯采用电子线路进行PID调节的控制效果要好得多,可控性方面也有了很大的提高。温度是一个非线性的对象,具有大惯性的特点,在低温段惯性较大,在高温段惯性较小。对于这种温控对象,一般认为它具有以下的传递函数形式:(1.1)方案一(如图1-1):信号采集信号放大固态继电器信号放大负载温度预置比较器图1-1方案一框图此方案是传统的一位式模拟控制方案,选用模拟电路,用电位器设定值,反馈的温度值和设定值比较后,决定加热或不加

20、热。其特点是电路简单,易于实现,但是系统所得到的结果的精度不高并且调节动作频繁,系统静态差大、不稳定。系统受环境影响较大,不能实现复杂的控制算法,不能用数码管显示,不能用键盘设定。方案二(如图1-2):信号采集温度预设固态继电器信号处理信号放大上线比较下线比较负载图1-2方案二框图此方案是传统的二位式模拟控制方案,其基本思想与方案一相同,但由于采用上下限比较电路,所以控制精度有所提高。这种方法还是模拟控制方式,因此也不能实现复杂的控制算法使控制精度做得较高,而且不能用数码管显示,对键盘进行设定。方案三(如图1-3):AT89C51单片机数据采集输入电源温度控制算法控制图1-3方案三框图此方案采

21、用89C51单片机系统来实现。单片机软件编程灵活、自由度大,可用软件编程来实现各种控制算法和逻辑控制。单片机系统可以使用数码管来显示水温的实际值,能用键盘输入设定值。本方案选用了AT89C51芯片,不需要外扩展存储器,可使系统整体结构更为简单。前两种方案采用的是传统的模拟控制方式,而模拟控制系统难以实现复杂的控制规律,控制方案的修改也较为繁琐。而方案三则是采用以单片机为控制核心的控制系统,尤其对温度控制,可达到模拟控制所达不到的效果,并且实现显示和键盘设定功能,大大提高了系统的智能化。这也使得系统所测得结果的精度大大提高。所以,经过对三种方案的对比,本次毕业设计采用了方案三。第二章 设计理论基

22、础2.1单片机的发展概况1970年微型计算机研制成功之后,随之便出现了单片机(即单片微型计算机) 美国Intel公司1971年生产的4位单片机4004和1972年生产的雏形8位单片机8008,这也可以算是单片机的第一次公众亮相。1976年Intel公司首先推出了可以称为单片机的MCS-48系列单片微型计算机。它以体积小、功能全、价格低等特点,赢得了非常广泛的应用,同时一些与单片机有关的其他公司都争相推出各自的单片机。1978年下半年Motorola公司推出M6800系列单片机,Zilog公司相继推出Z8单片机系列。1980年Intel公司在MCS-48系列的基础之上又推出高性能的MCS-51系

23、列单片机。这类单片机均带有串行I/O口,定时器/计数器为16位,片内存储容量(RAM,ROM)都相应增大,并有优先级中断处理功能,单片机的功能、寻址X围都比早期的扩大了,它们是当时单片机应用的主流产品。1982年Mostek公司和Intel公司又先后推出了更高性能的16位单片机MK68200和MCS-96系列,NS公司和NEC公司也分别在原有8位单片机的基础上推出了16位单片机HPC16040和PD783系列。1987年Intel公司又宣布了比8096性能高两倍的CMOS型80C196单片机,1988年推出带EPROM的87C196单片机。由于16位单片机推出的时间比较迟、价格昂贵、开发设备有

24、限等多种原因,至今还不能得到广泛应用。而8位单片机已经可以满足大部分应用的需要,因此,在推出16位单片机的同时,高性能的新型8位单片机也不断问世。纵观这短短的20年,已经经历了4次更新换代,单片机正朝着集成化、多功能、多选择、高速度、低功耗、扩大存储容量和加强I/O功能及结构兼容的方向发展。新一代的80C51系列单片机除了上述的结构特性外,其最主要的技特点是向外部接口电路扩展,以实现微控制器(microcontroller)完善的控制功能为己任。这一系列单片机为外部提供了非常完善的总线结构,为系统的扩展和配置打下了良好的基础。由于80C51系列单片机所具有的一系列优越的特点,获得广泛使用是指日

25、可待的7。下面我们就来重点介绍一下本毕业论文讨论的系统所用的AT89C51系列单片机。2.2AT89C51系列单片机介绍2.2.1 AT89C51系列基本组成及特性AT89C51是一种带4k字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。而在众多的51系列单片机中,要算 ATMEL 公司的AT89C51更实用,也是一种高效微控制器,因为它不但和8051指令、管脚完全兼容,而且其片内的4K程序存储器是FLASH工艺的,这种工艺的存储器,用户可以用电的方式

26、达到瞬间擦除、改写。而这种单片机对开发设备的要求非常低,开发时间也能大大缩短。AT89C51基本功能描述如下:AT89C51是一种低损耗、高性能、CMOS八位微处理器,而且在其片种还有4k字节的在线可重复编程快擦快写程序存储器,能重复写入/擦除1000次,数据保存时间为十年。它与MCS-51系列单片机在指令系统和引脚上完全兼容,不仅可完全代替MCS-51系列单片机,而且能使系统具有许多MCS-51系列产品没有的功能。AT89C51可以构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低了系统成本。只要程序长度小于4k,四个I/O口就会全部提供给用户。可采用5V的电压来编程,而且写

27、入时间仅10毫秒,仅为8751/87C51的擦除时间的百分之一,与8751/87C51的12V电压擦写相比,不易损坏器件,没有两种电源的要求,改写时不拔下芯片,适合许多嵌入式控制领域。AT89C51 芯片有三级程序存储器锁定加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制。另外,AT89C51还同时具有MCS-51系列单片机的所有优点。1288位内部RAM,32位双向输入输出线,两个十六位定时器/计时器,5个中断源,两级中断优先级,一个全双工异步串行口及时钟发生器等。AT89C51具有间歇、掉电两种工作模式。间歇模式是由软件来设置的,当外围器件仍然处于工作状态时,CPU可根

28、据工作情况适时地进入睡眠状态,内部RAM和所有特殊的寄存器值将保持不变。这种状态会被任何一个中断所终止或通过硬件复位。掉电模式是指VCC电压低于电源下限,当振荡器停止振动时,CPU停止执行指令。该芯片内RAM和特殊功能寄存器值会保持不变,一直到掉电模式被终止。只有在VCC电压恢复到正常工作X围内并且在振荡器稳定振荡后,通过硬件复位、掉电模式才可被终止。2.2.2 AT89C51系列引脚功能AT89C51有40引脚双列直插(DIP)形式。其结构与80C51引脚结构基本相同,其逻辑引脚图如图2-1。图2-1 AT89C51逻辑引脚图各引脚功能叙述如下:电源和晶振VCC运行和程序校验时加+5VGND

29、接地XTAL1输入到振荡器的反向放大器XTAL2反向放大器的输出,输入到内部时钟发生器(当使用外部振荡器时,XTAL1接地,XTAL2接收振荡器信号)1RST:复位输入。当振荡器复位器件时,需要保持RST脚两个机器周期的高电平时间。2I/O(4个口,32根)P0口8位、漏极开路的双向I/O口。当使用片外存储器(ROM、RAM)时,作地址和数据分时复用。在程序校验期间,输出指令字节(需加外部上拉电路)。P0口(作为总线时)能驱动8个LSTTL负载。P1口8位、准双向I/O口。在编程/校验的时候,用于输入低位字节地址。P1口可驱动4个LSTTL负载。对于80C51,P1.0T2,是定时器的计数端且

30、位输入;P1.1T2EX,是定时器的外部输入端。这时候,读两个特殊输入引脚的输出锁存器应由程序置1。P2口8位、准双向I/O口。当使用片外存储器(ROM及RAM)时,输出高8位地址。在编程/校验的时候,接收高位字节地址。P2口可以驱动4个LSTTL负载。P3口8位、准双向I/O口,具有内部上拉电路。P3口可以提供各种替代功能。在提供这些功能的时候,其输出锁存器应由程序置1。P3口可以输入/输出4个LSTTL负载。3串行口P3.0RXD(串行输入口),输入。P3.1TXD(串行输出口),输出。4中断P3.2INT0外部中断0,输入。P3.3INT1外部中断1,输入。5定时器/计数器P3.4T0定

31、时器/计数器0的外部输入,输入。P3.5T1定时器/计数器1的外部输入,输入。6数据存储器选通P3.6WR低电平有效,输出,片外存储器写选通。P3.7RD低电平有效,输出,片外存储器读选通。7控制线(共4根)输入:EA/VPP片外程序存储器访问允许信号,低电平有效。在编程时,其上需要施加21V的编程电压。注意:在加密方式为1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也可以用于施加12V编程电源(VPP)。输入、输出:ALE/PROG地址锁存允许信号,输出。在ALE以1/6的振荡频率稳定速率输出时,可用作对外输出的时钟或用于定时。在EP

32、ROM编程的时候,作输入,输入编程脉冲(PROG)。ALE可以驱动8个LSTTL负载。当访问外部存储器的时候,地址锁存所允许的输出电平用于锁存地址的低位字节。在FLASH编程的时候,此引脚用于输入编程脉冲。在平时的时候,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。注意:每当用作外部数据存储器的时候,将跳过一个ALE脉冲。如果想要禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX指令,而MOVC指令是ALE才起作用。另外,该引脚会被略微的拉高。如果微处理器处于外部执行状态ALE禁止,置位无效。输出:PSE

33、N片外程序存储器选通信号,低电平有效。在从片外程序存储器取址的时候,在每个机器周期中,当PSEN有效的时候,程序存储器的内容被送上P0口(数据总线)。PSEN可以驱动8个LSTTL负载。2.2.3 AT89C51系列单片机的功能单元1并行I/O接口:单片机芯片内具有一项主要功能就是并行I/O口。51单片机系列共有4个8位的并行I/O口,分别记作P0、P1、P2、P3每个口都包含一个锁存器,一个输出驱动器和输入缓冲器。实际上,它们已经被归为专用寄存器之列,并且具有字节寻址和位寻址功能。在访问片外扩展存储器的时候,低八位地址和数据由P0口分时传送,高八位地址由P2口传送。2定时器/计数器:定时器/

34、计数器(timer/counter)是单片机中的重要部件,其工作方式灵活、编程简单,使用它对减轻CPU的负担和简化外围电路都大有好处。C51单片机系列包含有两个16位的可编程定时器/计数器分别称为定时器/计数器T0和定时器/计数器T1;在C51部分产品中,还包含有一个用做看门狗的8位定时器。定时器/计数器的核心是一个加1计数引脚上施加器,其基本的功能是加1功能。在单片机的定时器T0或T1中,有一个定时器在发生由0到1的跳变时,计数器增1,即为计数功能;在单片机内部对机器周期或其分频进行计数,从而得到定时,这就是定时功能。在单片机中,定时功能和计数功能的设定和控制都是需要通过软件来进行的。定时器

35、/计数器的内部结构及其原理:由定时器0、定时器1、定时器方式寄存器TMOD和定时器控制寄存器TCON组成。当定时器/计数器设置为定时工作方式时,计数器会对内部机器周期计数,每过一个机器周期,计数器加1,直至计满溢出。定时器的定时时间与系统的振荡频率紧密相关,因为C51系列单片机的一个机器周期由12个振荡脉冲组成,所以,计数频率fc=fosc/12。如果单片机系统采用12MHz晶振,则计数周期为:(2.1)这是最短的定时周期,适当选择定时器的初值可获取各种定时时间。当定时器/计数器设置为计数工作方式时,计数器对来自输入引脚T0(P3.4)和T1(P3.5)的外部信号计数,外部脉冲的下降沿将触发计

36、数。在每个机器周期的S5P2期间采样引脚输入电平,若前一个机器的周期采样值为1,后一个机器的周期采样值为0,则计数器加1。新的计数值是在检测到输入引脚电平发生从1到0的负跳变后,于下一个机器周期的S3P1期间装入计数器中的,可见,检测一个由1到0的负跳变需要两个机器周期,所以最高检测频率为振荡频率的1/24。计数器对外部输入信号的占空比没有什么特别的限制,但必须保证输入信号的高电平与低电平的持续时间在一个机器周期以上。3振荡器:XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可被配置为片内振荡器。石晶振荡和陶瓷振荡均可以采用。如果采用外部时钟源驱动器件,XTAL2应不接。当输入

37、至内部时钟信号时需要通过一个二分频触发器,而对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4芯片擦除:整个PEROM阵列和三个锁定位的电擦除可以通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片被擦除操作中,代码阵列全被“1”并且在任何非空存储字节被重复编程以前,该操作必须被执行。AT89C51设有稳态逻辑,可以使其在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM、定时器、计数器、串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止用其他芯片功能,直到下一个硬件复位为止。5中断系

38、统:中断系统是单片机的重要组成部分之一。实时控制、故障自动处理、单片机与外围设备之间的数据传送往往采用中断系统。中断系统大大的提高了系统的效率。C51系统有关于中断的寄存器有4个,分别为中断源寄存器TCON和SCON、中断允许控制寄存器IE和中断优先级控制寄存器IP;中断源有5个,分别为外部中断0请求INT0、外部中断1请求INT1、定时器0溢出中断请求TF0、定时器1溢出中断请求TF1和串行中断请求R1或T1。5个中断源的排列顺序由中断优先级控制寄存器IP和顺序查询逻辑电路共同决定,5个中断源分别对应5个固定的中断入口地址。中断的主要特点是分时操作,实时处理和故障处理8。简单介绍一下本次设计

39、所需的单片机芯片AT89C51的中断系统中要用到的中断类型。(1) 外部中断源AT89C51具有INT0和INT1两条外部中断请求输入线,用于输入两个外部中断源的中断请求信号,并允许外部中断源以低电平或负边沿两种中断触发方式来输入中断请求信号。AT89C51究竟工作于哪种中断触发方式,可由用户对定时器控制寄存器TCON中IT0和IT1位状态的设定来选取。AT89C51在每个机器周期的S5P2时对INT0、线上中断请求信号进行一次检测,检测方式和中断触发方式的选取有关。若设定AT89C51为电平触发方式(IT0=0或IT1=0),则CPU检测到INT0、INT1上低电平时就可认定其上中断请求有效

40、;若设定为边沿触发方式(IT0=1或IT1=1),则CPU需要两次检测INT0、INT1线上电平方能确定其上中断请求是否有效,即前一次检测为高电平和后一次检测为低电平时中断请求才有效。(2) 定时器溢出中断源定时器溢出中断是由AT89C51内部定时器分的中断源产生,故它们属于内部中断。AT89C51内部具有两个16位定时器/计数器,受内部定时脉冲(主脉冲经12分频后)或T0/T1引脚上输入的外部定时脉冲计数。定时器T0/T1在定时脉冲的作用下从全“1”变成全“0”的时候可以自动向CPU提出溢出中断请求,以表明定时器T0或T1的定时时间已到。(3) 串行口中断源串行口中断是由AT89C51内部串

41、行口的中断源产生,也是一种内部中断。串行口中断分为串行口发送中断和串行口接收中断两种中端。在串行口进行发送/接收数据的时候,每当串行口发送/接收完一组串行数据时串行口电路自动使串行口控制寄存器SCON中的RI或TI中断标志位置位,并自动向CPU发出串行口中断请求,CPU响应串行口中断后便立即转入串行口中断服务程序执行。因此,只需要在串行口中断服务程序中安排一段对SCON中RI和TI中断标志位状态的判断程序,便可区分串行口发生了接收中断请求还是发送中断请求。(4) 中断标志AT89C51在S5P2时检测(或接收)外部(内部)中断源发来的中断请求信号后先使相应中断标志位置位,然后便在下个机器周期检

42、测这些中断标志位状态,以决定是否响应该中断。92.3 数字温度传感器 DS18B202.3.1 DS18B20简介DS18B20是DALLAS公司所生产的一线式数字温度传感器,它具有微型化、低功耗、高性能抗干扰能力、强易配处理器等优点,特别适合用于构成多点温度测控系统,可直接将温度转化成串行数字信号(按9位二进制数字)给单片机处理,且在同一总线上可以挂接多个传感器芯片。它具有独特的单总线接口方式,仅需使用1个端口就能实现与单片机的双向通讯。采用数字信号输出提高了信号抗干扰能力和温度测量精度。它的工作电压使用X围宽3.05.5 V,可以采用外部供电方式,也可以采用寄生电源方式,即当总线DQ为高电

43、平时,窃取信号能量给DS18B20供电。它还有负压特性,电源极性接反时,DS18B20不会因接错线而烧毁,但不能正常工作。可以通过编程而实现912位的温度转换精度设置。设定的分辨率越高,所需要的温度数据转换时间就越长,在实际应用中要将分辨率和转换时间权衡考虑。DS18B20采用的是3脚TO-92封装,形如三极管,同时也有8脚SOIC封装,还有6脚的TSOC封装。测温X围为-55+125,在-1085X围内,精度为0.5。每一个DS18B20芯片的ROM中都存放了一个64位ID号:前8位是产品类型编号,随后48位是该器件的自身序号,最后8位是前面56位的循环冗余校验码。又因其可以采用寄生电源方式

44、供电。因此,一条总线上免可以同时挂接多个DS18B20,实现多点测温系统。另外用户还可根据实际情况设定非易失性温度报警上下限值TH和TL。DS18B20所检测到的温度值转换为数字量后,自动存入存储器中,并与设定值TH或TL进行比较,当测量温度超出给定X围时,就输出报警信号,并自动识别是高温超限还是低温超限。图2-2温度芯片DS18B20主要特性:(1)DS18S20的适应电压X围更宽,其X围为:3.0-5.5V,而且它能够直接由数据线获取电源(寄生电源),无需外部工作电源。(2)DS18S20提供了9位摄氏温度测量,具有非易失性、上下触发门限用户可编程的报警功能。(3)DS18S20通过1-W

45、ire总线与中央微处理器通信,仅需要单根数据线(或地线)。同时,在使用过程中,它不需要任何的外围的元件,全部的传感元件和转换电路集成在形状如一只三极管的集成电路内。(4)DS18S20具有-55至+125的工作温度X围,在-10至+85温度X围内精度为0.5。(5)每片DS18S20具有唯一的64位序列码,这些码允许多片DS18S20在同一条1-Wire总线上工作,因而,可方便地使用单个微处理器控制分布在大X围内的多片DS18S20器件。(6)DS18S20的测量结果直接输出数字温度信号,以“一线总线”串行传送给CPU,同时还可以传送给CRC校验码,它具有极强的抗干扰纠错的能力。(7)DS18

46、S20具有负载特性,当电源极性接反时,芯片不会因发热而烧毁,但是不能正常的工作。2.3.2 DS18B20的引脚图及引脚说明TO-92封装的DS18B20的引脚排列见下图,其引脚功能描述见下:图2-3 DS18B20的引脚图引脚说明:TO-92封装符号说明1GND接地2DQ数据输入/输出引脚。对于单线操作:漏极开路。当工作在寄生电源模式时用来提供电源。3VDD可选的VDD引脚。工作在寄生电源模式时VDD必须接地。2.3.3 DS18B20的内部结构DQVDD图2-4 DS18B20内部结构图DS18B20内部功能模块主要由4部分组成:64位光刻R0M、温度传感器、非易失性的温度报警触发器TH和

47、TL、配置寄存器。R0M中的64位序列号是出厂前被光所刻好的,它可以看作是该DSISB20的地址序列码,每个DSI8B20的64位序列号均不相同。高低温报警触发器TH 和TL,配置寄存器均由一个字节的E2PROM组成,使用一个存储器功能命令可对 TH,TL或配置寄存器写入。配置寄存器中R1,R0决定温度转换的精度位数:R1、R000,9位精度,最大转换时间为93.75 ms;R1、R0 =01,10位精度,最大转换时间为187.5 ms;R1、R0=10,11位精度,最大转换时间为375 ms;R1、R0 =11,12位精度,最大转换时间为750 ms;未编程时默认为12位精度。本系统所采用的也是12位的精度。2.3.4DS18B20的工作原理DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。DS18B20测温原理如图所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作计划

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁