基于AT89C51单片机的微波炉控制系统设计.docx
《基于AT89C51单片机的微波炉控制系统设计.docx》由会员分享,可在线阅读,更多相关《基于AT89C51单片机的微波炉控制系统设计.docx(75页珍藏版)》请在冰豆网上搜索。
![基于AT89C51单片机的微波炉控制系统设计.docx](https://file1.bdocx.com/fileroot1/2023-7/17/e00db6fc-8c1d-49e6-bcfd-d97b86be6ef9/e00db6fc-8c1d-49e6-bcfd-d97b86be6ef91.gif)
基于AT89C51单片机的微波炉控制系统设计
摘要
近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,再根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。
微波炉控制系统设计采以微控制器(MCU)为核心,基于MCU编制软件系统,结合8位数码管(LED)显示以及必要的外围电路,完成微波炉的可编程智能控制。
系统由计时控制、火力设定、用户界面、音响发生几大模块组成。
能够根据键盘输入完成相应的功能,同时使用LED显示系统状态,并进行响铃提示。
关键词:
微控制器;微波炉;控制器
ABSTRACT
Withthecomputerpenetrationinthesocialsphereinrecentyears,andthedevelopmentoflargescaleintegratedcircuits,microcontrollerapplicationsarecontinuallydevelopingdeeply,becauseofitspowerfulfunction,smallsize,lowpowerconsumption,cheapprice,reliableperformance,easilyusing,etc,itisparticularlysuitableforsystemswithcontrol.Itisusedmoreandmorewidelyinautomaticcontrol,intelligentinstruments,meters,dataacquisition,militaryproductsandhomeappliancesetc,SCMisoftenusedasacorecomponentinaccordingtothespecifichardwarearchitecture,anditisoftencombinedwithapplication-specificfeaturesofthesoftwareobjectstomakeperfect.
Microwaveovencontrolsystemdesignusedthemicrocontrollerasthecore,basedonMCUpreparationsoftwaresystem,combinedwitheightdigitaltube(LED)displayandnecessaryperipheralcircuitstocompletethemicrowaveovenprogrammableintelligentcontrol.Systemconsistedofseveralmodulessuchasthetimecontrolling,firesetting,theuserinterface,sounddesign.Itcouldcompletethefunctionunderthekeyboard,meanwhileusedtheLEDtodisplaythestatusofsystem,andpromptedusthrougharinger.
Keywords:
microcontroller;microwaveoven;controller
绪论
1.1引言
现在可以说单片机是百花齐放,百家争鸣的时期,世界上各大芯片制造公司都推出了自己的单片机,从8位、16位到32位,数不胜数,应有尽有,有与主流C51系列兼容的,也有不兼容的,但它们各具特色,互成互补,为单片机的应用提供广阔的天地。
目前,在生活、生产的各领域中,凡是有自动控制要求的地方几乎都会有单片机的身影;从简单到复杂,从空中、地面到地下,凡是能想象到的地方几乎都有使用单片机的需求。
现在尽管单片机的应用已经很普遍了,但仍有许多可以用单片机控制而尚未实现的项目,因此,单片机的应用大有前景和拓展空间。
单片机的应用有利于产品的小型化、多功能化和智能化,有助于提高劳动效率,减轻劳动强度,提高产品质量,改善劳动环境,减少能源和材料消耗,保证操作安全等。
随着数字集成电路技术的发展,加上采用了先进的石英技术,自动控制具有计算准确、性能稳定、携带方便等优点。
单片机应用的意义绝不仅限于它的广阔范围以及所带来的经济效益上,更重要的意义还在于:
单片机的应用正从根本上改变着传统的控制系统设计思想和设计方法。
从前必须有模拟电路或数字电路实现的大部分功能,现在已能使用单片机通过软件方法实现了。
这种以软件取代硬件并提高系统性能的控制系统“软化”技术,称之为微控制技术。
微控制技术是一种全新的概念,是对传统控制技术的一次革命。
随着单片机应用的推广普及,微控制技术必将不断发展、日益完善和更加充实。
[1][2]
1965年,乔治·福斯特对微波炉进行大胆改造,与斯本塞一起设计了一种耐用和价格低廉的微波炉。
1967年,微波炉新闻发布会兼展销会在芝加哥举行,获得了巨大成功。
从此,微波炉逐渐走入了千家万户。
由于用微波烹饪食物又快又方便,不仅味美,而且有特色,因此有人诙谐地称之为“妇女的解放者”。
传统的微波炉容易产生设定误差,定时不够准确,会造成过快或者过慢,这样会影响食物的美味。
基于单片机的微波炉控制系统设计,正是利用单片机的多功能控制的特点,进行微波炉的系统控制设计,改变了传统微波炉时间不明显,控制零件繁多的局面,所以利用微处理器进行定时、准点控制,具有很大的应用市场潜力。
1.2课题背景
单片机自1976年由Intel公司推出MCS-48开始,迄今已有二十多年了。
由于单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。
单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广大领域。
单片机有两种基本结构形式:
一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿结构。
另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。
20世纪80年代中期以后,Intel公司以专利转让的形式把8051内核技术转让给许多半导体芯片生产厂家,如ATMEL、PHILIPS、ANALOG、DEVICES、DALLAS等。
这些厂家生产的芯片是MCS-51系列的兼容产品,准确地说是与MCS-51指令系统兼容的单片机。
这些兼容机与8051的系统结构(主要是指令系统)相同,采用CMOS工艺,因而,常用80C51系列来称呼所有具有8051指令系统的单片机,它们对8051单片机一般都作了一些扩充,更有特点。
其功能和市场竞争力更强,不该把它们直接称呼为MCS-51系列单片机,因为MCS只是Intel公司专用的单片机系列型号。
MCS-51系列及80C51单片机有多种品种。
它们的引脚及指令系统相互兼容,主要在内部结构上有些区别。
目前使用的MCS-51系列单片机及其兼容产品通常分成以下几类:
基本型、增强型、低功耗型、专用型、超8位型、片内闪烁存储器型。
本文讨论的单片机多功能数字钟系统设计的核心是目前应用极为广泛的51系列单片机,多功能数字钟配置了外围设备,构成了一个可编程的计时定时系统,具有体积小,可靠性高,功能强等特点。
不仅能满足生产、生活需要而且还有很多功能可供开发,有着广泛的应用前景。
1.3课题研究来源
在日常生活和工作中,我们常常用到定时控制,如扩印过程中的曝光定时、洗衣机定时警报等。
早期常用的一些时间控制单元都使用模拟电路硬件设计制作的,其定时准确性和重复精度都不是很理想,精确度低,不能实现准点控制。
现在基本上都是基于数字技术的新一代产品,随着单片机性能价格比的不断提高,新一代产品的应用也越来越广泛,大可构成复杂的工业过程控制系统,如数控机床控制系统,自动化生产线系统等,完成复杂的控制功能。
小则可以用于家电控制,甚至可以用于儿童电子玩具。
单片机功能强大,体积小,质量轻,灵活好用,配以适当的接口芯片,可以构造各种各样、功能各异的微电子产品。
随着电子技术的飞速发展,家用电器和办公电子设备逐渐增多,不同的设备都有自己的控制器,种类繁多,这样使用起来很不方便。
根据这种实际情况,设计了一个单片机多功能定时系统,它可以避免多种控制器的混淆,利用一个控制器对多路电器进行控制,既减少了繁多的多控制器,同时又可以进行时钟校准和定点打铃。
它可以执行不同的时间表的打铃,可以任意设置时间。
这种具有人们所需要的智能化特性的产品减轻了人的劳动,提高了生产率,扩大了数字化的范围,为家庭数字化提供了可能。
1.4本文主要研究工作
本课题主要是对家用微波炉控制系统的研究,确定系统的整体方案,编写程序来实现微波炉控制的基本功能。
主要工作是掌握单片机应用技术,显示技术,电子技术等相关知识,设计制作一个微波炉控制器电路,具有三档微波加热功能,分别表示微波加热为大火、中火、小火,模拟仿真中用不同颜色LED模拟。
实现工作步骤:
复位待机——〉检测显示电路——〉设置输出功能和定时器初值——〉启动定时和工作开始——〉结束加热、音响提示。
在上电或手动按复位键时,控制器输出的微波功率控制信号为0,微波加热处于待机状态,时间显示电路显示为00-00-00。
具有8位时间预置电路,按键启动时间设置,最大预设数为23小时59分59秒。
设定时间初值后,按档位选择键,启动相应的微波加热;另一方面使计时电路以秒为单位作倒计时。
当计时到时间小于20s(可以通过软件修改任意响铃提示时间)则断开微波加热器,并给出声音提示,即扬声器输出提示音。
设计中具体的问题有:
(1)如何进行时间设置(时、分、秒)和时钟倒计时功能;
(2)如何设计智能火力控制
(3)如何设计显示模块显示时间;
(4)如何设计按键设置;
(5)如何设计音响提示声音;
(6)如何设计微波炉工作或者停止
1.5本文结构
本文以微波炉的控制系统设计为研究对象,以单片机的应用为背景,对微波炉系统基本功能进行设计与研究。
全文主要分七章,各章的主要内容如下:
第一章主要介绍了单片机的特点、概念、发展背景以及微波炉的发展背景;
第二章主要研究了微波炉控制系统的总体概述、工作原理、电路设计及软件设计总体要求;
第三章主要根据微波炉的工作原理确定控制系统的各个控制模块,以及对各个控制模块设计方案进行比较,然后作出最优选择;
第四章根据前一章的分析比较论证进行系统硬件电路设计;
第五章主要进行系统的软件设计,根据流程图设计相应的合理的程序,并进行调试;
第六章依据设计好的硬件电路和软件程序,用Proteus软件进行仿真验证;
第七章总结了全文的研究工作,给出了存在的问题和进一步的研究方向。
控制系统总述
2.1工作原理
2.1.1系统框图
一般的家用微波炉操作流程都包括定时、档位选择、启动等。
所以微波炉工作大致可以四个步骤:
系统待机——用户时间、档位、火力设置——系统工作——完成、提示。
具体系统框图如图2.1.1。
图2.1.1系统框图
2.1.2系统功能实现
系统启动时,8位数码管显示零时、零分、零秒,即00-00-00。
火力输出档位通过三个不同颜色的发光二极管显示(分别表示大火、小火、中火)。
键盘分按键K0,K1,K2,K3,K4,K5,K6,RESET八个按键(RESET复位键采用独立式键盘)。
K0键为微波炉的启动与关闭。
K1、K2、K3键为档位选择键,分别代表大火、中火、小火,选择后相应的发光二极管会发亮。
K4键为时、分、秒设定选择键。
K5、K6键分别为时间的加减设定。
RESET为复位键。
每次按下按键后系统都会启动音响发生模块发出“嘀”的声音。
选择合适的档位,微波炉启动数码管开始倒计时,当倒计时到软件程序设定的固定时间(20s)会进行倒计时提醒,此时会发出提示声音。
各功能实现如图2.1.2。
图2.1.2系统功能图
2.2控制电路设计
微波炉控制系统以AT89C51单片机为核心,通过外接设备进行微波炉的显示、火力输出、定时设计,来完成系统设计的要求。
具体框图如图2.2.1。
图2.2.1系统的总体框图
控制电路设计部分以AT89C51单片机控制电路为核心,由定时器电路,显示电路,键盘电路,门电路,电源电路,音响发声电路,火力输出电路,档位显示电路共同组成微波炉控制系统电路,在本设计中,我们对火力输出电路原理只作解释,不作硬件电路的设计。
2.3软件设计
随着科技的飞速发展,C语言的地位显得日益重要。
C语言是一种结构化的语言,它层次清晰便于按模块化方式组织程序。
它可以用于系统软件的开发,同样也适用于应用软件的开发。
C语言具有效率高,可移植性强等特点。
如果以前采用的是汇编语言写的程序,在日后升级和维护相当困难,别人写的程序不易被读懂,但用C语言写程序时,相当便利。
所以本次程序设计采用C语言编写,既能保证设计的精度,又能使程序通俗易懂。
本次设计采用Keil4作为编写软件,并通过Keil4进行编译调试。
软件界面如图2.3.1。
图2.3.1软件界面
KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。
运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。
如果你使用C语言编程,那么Keil几乎就是你的最佳选择,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。
KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。
另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
用过汇编语言后再使用C来开发,体会更加深刻。
KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。
2009年2月发布KeilμVision4,KeilμVision4引入灵活的窗口管理系统,使开发人员能够使用多台监视器,并提供了视觉上的表面对窗口位置的完全控制的任何地方。
新的用户界面可以更好地利用屏幕空间和更有效地组织多个窗口,提供一个整洁,高效的环境来开发应用程序。
新版本支持更多最新的ARM芯片,还添加了一些其他新功能。
2011年3月ARM公司发布最新集成开发环境RealViewMDK开发工具中集成了最新版本的KeiluVision4,其编译器、调试工具实现与ARM器件的最完美匹配。
基于Keil的完美性能,我们将采用Keil4作为本设计软件程序的编写、编译、调试工具,因为本次设计将使用C语言编写程序,C语言编写程序通俗易懂、便于后期修改完善、灵活性高,满足设计精度要求所以使用Keil作为编写、编译、调试的工具,是不二之选。
2.4本章小结
通过对微波炉控制系统的整体概述,我们已经基本熟悉了微波炉的工作原理、硬件电路设计、软件设计等各个方面。
硬件电路大体包括定时电路、门电路、键盘电路、显示电路、响铃电路、火力输出电路几个主要模块。
软件设计也将从这几个模块入手。
因此,我们对微波炉控制系统有了初步的了解,并且确定了微波炉控制系统的大致研究方向,了解了微波炉控制的各个模块的功能,为进一步研究、细化各模块功能奠定了坚实的基础。
各模块设计方案
微波炉控制系统设计是以AT89C51单片机为核心的。
系统具体包含显示电路,键盘电路,计时控制电路,火力输出电路,响铃提示电路等多个部分,根据我们所了解的,每个部分都可以采用不同的方案来实现,但不同的方案有实现的难易的不同,不同的设计要求所采取的方案也各不相同,有的需要考虑高精度,有的需要保证低功耗等等,所以通过思考分析,最终做出最合理的选择,使之更加科学和合理,达到设计要求。
下面对各模块设计方案做分析和选择。
3.1档位输出方案
方案一:
我们可以通过扩展芯片对单片机的I/O口进行扩展,将单片机的一个I/O端口扩展成三个输出端口以便节省单片机的I/O口资源。
方案一如图3.1.1。
方案二:
直接利用单片机的三个I/O口进行档位控制。
方案二如图3.1.2。
I/OI/OI/O
图3.1.1方案一图3.1.2方案二
结论:
鉴于单片机含有丰富的I/O口资源,所以我们采用方案二,无须扩展。
3.2计时控制方案
方案一:
使用专门的时钟芯片控制,我们可以采用专门的时钟控制芯片能够保证高精度、操作简单等,能够实现单片机的准点定时控制。
方案二:
AT89C51单片机内部就含有定时器,我们可以使用一个定时器和计数器结合,加上12M晶振的驱动,实现定时、计数控制。
结论:
我们采用方案二,单片机灵活性高,方案二节省器件,使电路简化,有很高的性价比,对于计时的精度我们可以通过软件设计来弥补调整。
3.3键盘设计方案
方案一:
独立式键盘,每个独立按键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,此类键盘采用端口直接扫描方式。
缺点是当按键较多时占用单片机的I/O数目较多,优点是电路设计简单,且编程极其容易。
在按键不多的情况下我们可以采用独立式键盘。
独立式键盘如图3.3.1。
方案二:
4×4矩阵式键盘,此类键盘是采用行列扫描方式,优点是当按键较多时可以降低占用单片机的I/O口数目,节省单片机的I/O口资源。
结论:
我们采用方案二,因为本次设计采用了多个按钮,如果使用独立式键盘,将占用大量的I/O口资源,所以我们采用4×4矩阵式键盘,这样可以节省大量的I/O口资源。
矩阵式键盘如图3.3.2。
图3.3.1独立式键盘图3.3.2矩阵式键盘
3.4显示设计方案
方案一:
采用数码管显示,数码经济适用,只需简单的驱动芯片,即可驱动显示,但是信息量少。
方案二:
采用液晶显示,某些液晶显示器具有汉字显示功能,用液晶来实现显示功能,不仅可以实现基本的显示信息,而且可以显示丰富的符号指示信息以及文字指示信息,如AM/PM,闹钟符号等,信息量丰富且直观易懂。
而且液晶显示有功耗低,体积小,重量轻,寿命长,绿色环保等优点。
结论:
根据设计要求,我们只需实现定时显示,只要能显示时间即可,信息量少,只需显示时、分、秒。
所以我们采用8位数码管进行显示,完全能够达到设计要求。
3.5火力输出方案
3.5.1微波炉火力输出原理
微波炉内部含有一个器件叫功率调节器,也称火力调节器,它实际上也是个时间开关,功能是在微波炉工作期间周期性地不断接通和断开磁控管的电源,使磁控管有规律地间歇工作,即工作时间和休止时间有一定的比例关系,改变这个比例,就使磁控管在微波炉整个加热时间段中的工作时间得以相应改变,从而起到调节微波输出功率的作用。
功率调节器也由定时器所用的同一电机驱动。
实际工作时,当设定好功率值后,功率调节器便控制磁控管工作一段时间再休止一段时间,并按一定周期不断循环这个过程,直至微波炉工作结束。
这里假设磁控管在—个循环周期内的工作时间为t1,休止时间为t2,则一个循环周期T=t1+t2,可清楚地看出功率调节器控制微波输出功率的方式。
循环周期T取值很有讲究,从加热角度考虑取短些好,但太短将使功率调节开关频繁动作,影响磁控管的工作稳定和使用寿命。
通常机械式功率调节器的T都取30s左右,实践证明比较理想。
当T=30s时,若设磁控管工作时间t1分别为6、12、15、24、30s,那么对应6s的微波输出功率为保温功率,这是炉子额定微波输出功率Po的20%的功率,又称温火挡。
对应12s的为解冻功率(40%Po,又称低功率或低火)、对应15s的为中功率(50%Po,又称中火)、对应24s的为中高功率(80%Po,又称中高火)、对应30s的为高功率(100%Po,又称高火或全功率)。
普通微波炉大多设有这样的5挡功率(火力)调节挡,当然各挡的功率设定值可能有所不同。
少数微波炉有更多功率挡,可达8~12挡之多,以求更适应烹饪和解冻不同食品之需。
3.5.1微波炉火力输出方案
根据设计要求,只需设计高、中、低三档功能,无需多档位控制。
只需输出大火、中火、小火三档火力。
因此,我们只需模拟出三档火力即可。
我们通过三种不同颜色的发光二极管即可达到设计要求。
3.5响铃提示方案
我们可以使用单片机的一个I/O端口,然后接上扬声器,通过软件方式,修改延时、周期,来达到响铃提示的效果。
3.6本章小结
经过比较和分析,得出了较理想的方案:
(1)计时单元由软件编程来实现。
定时采用单片机内部定时器来实现,即通过单片机内部定时器产生中断,再通过软件编程实现进行计数,从而实现时、分、秒的倒计时。
(2)时间显示采用8位LED数码管显示时、分和秒。
档位显示采用3个不同颜色的发光二极管显示,分别表示大火、中火、小火三档火力。
(3)键盘采用单片机4×4矩阵式键盘,端口输入电平,通过单片机扫描相应端口电平来判断按键的抬起与按下。
(4)响铃提示直接由单片机控制输出,连接在扬声器在电阻上叠加推动扬声器发声。
通过各种方案的比较和论证之后,明确了各个模块的实现方案。
然后,对整个系统总体进行设计,形成一个清晰的设计方向,并构思出系统总体设计的工作原理和系统的框图,使整个设计方案具有总体性。
硬件设计
4.1系统核心AT89C51介绍
4.1.1AT89C51主要性能
·4KB可改编程序Flash存储器(可经受1000次的写入/擦除周期)
·全静态工作:
0Hz~24MHz
·三级程序存储器保密
·128×8字节内部RAM
·32条可编程I/O线
·2个16位定时器/计数器
·5个中断源
·可编程串行通道
·片内时钟振荡器
4.1.2AT89C51的引脚及功能
AT89C51单片机的管脚说明如图4.1.2所示。
图4.1.2AT89C51的管脚
(1)电源引脚
VCC电源端
GND接地端
(2)外接晶体引脚XTAL1、XTAL2
XTAL1接外部晶体的一个引脚。
在单片机内部,它是构成片内振荡器的反相放大器的输入端。
当采用外部振荡器时,该引脚接收振荡器的信号,既把此信号直接接到内部时钟发生器的输入端。
XTAL2接外部晶体的另一个引脚。
在单片机内部,它是上述振荡器的反相放大器的输出端。
采用外部振荡器时,此引脚应悬浮不连接。
(3)控制或与其它电源复用引脚RST、A