5255094074电磁炉单片机控制系统的设计.doc

上传人:仙人指路1688 文档编号:4143913 上传时间:2023-04-07 格式:DOC 页数:58 大小:957KB
返回 下载 相关 举报
5255094074电磁炉单片机控制系统的设计.doc_第1页
第1页 / 共58页
5255094074电磁炉单片机控制系统的设计.doc_第2页
第2页 / 共58页
5255094074电磁炉单片机控制系统的设计.doc_第3页
第3页 / 共58页
5255094074电磁炉单片机控制系统的设计.doc_第4页
第4页 / 共58页
5255094074电磁炉单片机控制系统的设计.doc_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《5255094074电磁炉单片机控制系统的设计.doc》由会员分享,可在线阅读,更多相关《5255094074电磁炉单片机控制系统的设计.doc(58页珍藏版)》请在三一办公上搜索。

1、毕业设计(论文)课 题 名 称 电磁炉单片机控制系统的设计 学 生 姓 名 学 号 系、年级专业 信息工程系、电子信息工程 指 导 教 师 职 称 讲 师 2009年 5 月 22 日摘 要本文介绍了电磁炉的功能控制系统,它利用单片机的多功能控制优势对电磁炉进行智能控制,使之具有高效节能、健康环保、安全可靠等一系列优点。电磁炉成为目前发展最快的,市场增长幅度最高的家电产品之一。本设计以AT89C51为核心,实现电磁炉的数码管显示控制、多种安全保护功能、功率自动控制、温度自动控制、定时控制以及各种自动检测报警功能的控制;对单片机AT89C51在系统控制上的应用,从软硬件两方面对控制系统的设计方案

2、做了简单的介绍。在软件设计上,采用模块化程序设计的思想,对电磁炉控制系统的各个功能模块进行划分和设计。研究智能锅具检测技术,提高了锅具检测的快速性和准确性,减少电磁污染并节约了电能。最后,对整个系统进行仿真、调试和性能测试。测试结果表明,该控制系统设计合理,稳定,安全、可靠性高。关键词:电磁炉;单片机;多功能;控制Abstract This paper introduces the functions Control System of the Induction cooker, which uses the multi-functional control advantages of sin

3、gle-chip microcomputer to realize an intelligent control of induction cooker so that they have a series of advantages such as high efficiency, energy-saving, healthy environmental protection,high security and reliability. It become one of household electrical appliances whose development is quickest

4、 and the market growth rate is highest at the present.This design uses AT89C51 as the core processor which realizes many functions as nixietube display,varies of safety protection,output power ato-controllation,time setting ato-controllation and detection alarming; and simply introduces the applicat

5、ion of single-chip AT89C51 in control system , elaborates the design from both handware and software. In the software design,it uses the ideas of modularized program design to carve up and design each function module in the induction cooker. Intelligent cooker testing technology enhances the rapid d

6、etection and accuracy for the pan and reduces electromagnetic pollution and saving electricity.Finally, the equipment is entire simulated and debugged. After many times testing and running, it has proven that this system features with reasonable,output power steady, safety and reliable. Keywords: In

7、duction cooker;Single-chip microcomputer;Mult-function;Control目 录摘 要IABSTRACTII前 言1第1章 系统总体方案21.1方案设计21.2 方案论证3第2章 硬件设计42.1 芯片介绍42.2电磁炉无锅检测模块92.3 定时控制模块102.4 功率控制模块122.5 温度自动控制模块132.6 显示模块142.7 保护电路162.8 按键模块172.9报警模块172.10 电源电路18第3章 程序设计193.1 主程序流程193.2 无锅检测程序流程203.3 A/D转换程序流程213.4外部中断213.5 定时模块流程2

8、23.6 温度控制程序流程263.7 基本显示模块流程263.8 报警模块流程27第4章 系统仿真与调试294.1 系统仿真294.2 系统调试31第5章 PCB板设计与制作335.1 PCB板设计335.2 PCB板制作34结束语37参考文献38致 谢39附录 程序清单40附录 系统原理图49附录 PCB图50附录 元器件清单51前 言当今,随着电子技术的高速发展,单片机的应用已经渗透到生产和生活中的各个方面,有力的推动了社会的发展。单片机以其体积小,集成度高,价格便宜,在数据处理、实时控制等方面无与伦比的强大功能而受到广大科研工作者及生产厂家的亲睐。目前,市场热销的电磁炉就是单片机控制系统

9、的一个典型应用,其品牌繁多、功能强大且多样。作为一个毕业设计的课题,对单片机控制系统的应用做了一些初步的尝试和探讨。以往家用电器采用模拟电路和数字电路设计的整体电路的规模较大,用到的器件多,造成故障率高,难调试,而且电路复杂,维修和生产测试不太方便;而今,采用单片机系统完成设计使电路设计简单可靠,工作可靠性很好,功能强大,实现控制智能化。为此我们采用了单片机进行设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。针对各种功能的控制,通过软件编程就可以轻易而举的实现。本设计以AT89C51为核心,实现电磁炉的定时控制

10、、温度自动控制、功率自动控制、保护功能、数码管显示控制以及无锅检测报警功能的控制;对单片机AT89C51在系统控制上的应用,从软硬件两方面阐述了控制系统的设计方案做了简单的介绍。在软件设计上,采用模块化程序设计的思想,对电磁炉控制系统的各个功能模块进行划分和设计,提高了控制系统的快速性和准确性。最后,对整个系统进行组装、调试和性能测试。实验结果表明,该控制系统设计合理,稳定,安全,可靠性高。第1章 系统总体方案1.1方案设计方案一:控制部分的核心采用传统的数字逻辑芯片来实现。系统的逻辑状态以及相互转移更是复杂,用纯粹的数字电路或小规模的可编程逻辑电路来实现该系统有一定的困难,需要用中大规模的可

11、编辑逻辑电路。这样,系统的成本就会急剧上升。方案结构图如图1.1:电源AC/DC按键控制电磁炉控制板驱动电路主谐振电路锅具显示保护检测电路图1.1方案一结构图方案二:以AT89C51系统为核心,利用单片机丰富的I/O端口,及其控制的灵活性,使其实现电磁炉数码管显示控制、多种安全保护功能、功率自动控制、温度自动控制、定时控制以及各种自动检测报警功能的控制。此系统的硬件和软件都比较容易实现,且满足本题的精度要求,性价比较高的AT89C51具有以下特点:其8K的EPROM可在固化程序上是方便地多次擦写,独有的低功耗性能保证器件的长时间工作;采用最小应用系统设计,电路可靠、稳定。方案结构图如图1.2:

12、 单 片 机定时控制温度自动控制功率自动控制检测报警控制安全保护控制数码管显示控制电源电路图1.2 方案二结构图1.2 方案论证方案一采用模拟电路和数字电路设计的整体电路的规模较大,用独立振荡单元,多个功率管并联、驱动放大电路采用分立元件,如:定时采用555构成的单稳态触发器控制,但是该单稳态电路对输入的脉冲宽度有一定的要求,即触发脉冲宽度要小于暂稳时间,而实际应用中则大于暂稳时间,于是还要先经微分电路后再加到电路的低电平触发端。仅一个定时控制电路就已经如此复杂,若加上其它的温度、功率、显示等电路,系统电路更为繁杂,由此一来,用到的器件多,造成故障率高,难调试,而且电路复杂,维修和生产测试不太

13、方便;虽然容易实现,但控制和性能方面都很差,硬件设计任务比较麻烦,而且设计的产品实际操作也不方便。方案二是采用以AT89C51为核心的单片机系统,可以实现数码显示、定时控制、温度功率自动控制等功能,大大提高了智能化自动控制的速度。显示采用8位一体数码管,既显示定时又显示温度,其中,数码管的前四位显示定时的时和分,后三位显示温度;定时采用单片机内部定时和外部中断结合控制实现;温度和功率控制选用ADC0808和电位器联合控制实现。由此一来,系统利用单片机强大功能对各个模块进行系统控制,减少分立元器件的使用,使其效率高、体积小、重量轻、噪音小、省电节能、并且系统所测结果的精度和性能都很高,该方案完全

14、具有可行性,同时体现了技术的先进性,经济上也有很大的优势。综上所述,经比较,本设计采用方案二。第2章 硬件设计2.1 芯片介绍2.1.1 AT89C51AT89C511单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。如果按功能划分,它由如下功能部件组成,即微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器。它们都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围芯片的传统结构模式。但对各种功能部件的控制是采用特殊功能寄存器的集中控制方式。AT89C51引脚如图2.1所示。图2.1 主芯片AT89C51引脚图微

15、处理器:该单片机中有一个8位的微处理器,与通用的微处理器基本相同,同样包括了运算器和控制器两大部分,只是增加了面向控制的处理功能,不仅可处理数据,还可以进行位变量的处理。数据存储器:片内为128个字节,片外最多可外扩至64k字节,用来存储程序在运行期间的工作变量、运算的中间结果、数据暂存和缓冲、标志位等,所以称为数据存储器。程序存储器:由于受集成度限制,片内只读存储器一般容量较小,如果片内的只读存储器的容量不够,则需用扩展片外的只读存储器,片外最多可外扩至64k字节。中断系统:具有5个中断源,2级中断优先权。定时器/计数器:片内有2个16位的定时器/计数器, 具有四种工作方式。串行口:有1个全

16、双工的串行口,具有四种工作方式。可用来进行串行通讯,扩展并行I/O口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。并行I/O口:共有4个并行8位I/O口(P0、P1、P2、P3),每个口都有1个锁存器和1个驱动器组成。并行I/O口主要是用于实现与外部设备中数据的并行输入/输出,有些I/O口还具有其他功能。 特殊功能寄存器:共有21个,用于对片内的各功能的部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区。复位电路的设计复位电路的实现通常有两种方式: RC复位电路和专用P监控电路。前者实现简单,成本低,但复位可靠性相对较低;后者成本

17、较高,但复位可靠性高,尤其是高可靠重复复位。对于复位要求高、并对电源电压进行监视的场合,大多采用这种方式。本次设计采用了上电按钮电平复位电路。电路图如图2. 2所示。图2. 2 复位电路图由上可见,单片机的硬件结构具有功能部件种类全,功能强等特点。特别值得一提的是该单片机CPU中的位处理器,它实际上是一个完整的1位微计算机,这个1位微计算机有自己的CPU、位寄存器、I/O口和指令集。1位机在开关决策、逻辑电路仿真、过程控制方面非常有效;而8位机在数据采集,运算处理方面有明显的长处。MCS-51单片机中8位机和1位机的硬件资源复合在一起,二者相辅相承,它是单片机技术上的一个突破,这也是MCS-5

18、1单片机在设计的精美之处。2.1.2 模数转换器ADC0808 对系统精度至关重要的A/D转换换器,采用的是ADC08082。(1)内部结构ADC0808片内带有锁存功能的8路模拟多路开关,可对8路0-5V的输入模拟电压信号分时进行转换,片内具有多路开关的地址译码和锁存电路、比较器、256R电阻T形网络、树状电子开关、逐次逼近寄存器SAR、控制与时序电路等。输出具有TTL三态锁存缓冲器,可直接连到单片机数据总线上。(2)引脚及功能ADC0808的芯片引脚如图2.3所示。图2.3 ADC0808的芯片引脚图引脚功能介绍如下所述: IN0IN7:8路模拟量输入通道的端口。输入信号为单极性,电压范围

19、为0-5V。START,ALE:START为启动控制输入端口,START上跳沿时,所在内部寄存器清零;START下跳时,开始进行A/D转换;在A/D转换期间,START就保持低电平。ALE为地址锁存控制信号端口。这两个信号端可连接在一起,当通过软件输入一个正脉冲,便立即启动模/数转换。 EOC,OE:EOC为转换结束信号脉冲输出端口,OE为输出允许控制端门。这两个信号亦可连接在一起表示模/数转换结束。OE端的电平由低变高,打开三态输出锁存器,将转换结果的数字量输出到数据总线上。REF(+)、REF(-)、VccGND:REF(+)和REF(-)为参考电压输入端,Vcc为主电源输入端,GND为接

20、地端。一般REF(+)与Vcc连接在一起,REF(-)与GND连接在一起。CLK:时钟输入端。ADC0808的内部没有时钟电路,所需时钟信号由外界提供,因此有时钟信号引脚。通常使用频率为500KHz以下时钟信号。ADDA、ADDB、ADDC:8路模拟开关的3位地址选通输入端,以选择对应的输入通道。ADC0808功能如下所述:分辨率为8位; ADC0808最大不可调误差小于1/2LSB,ADC0809小于1LSB;由单一的+5v电源供电,模拟输人范围为05V;具有锁存控制的8路模拟开关;可锁存三态输出,输出与TTL兼容;功耗为15mW;不必进行零点和满度调整;转换速度取决于芯片的时钟频率,时钟频

21、率范围:10-1280kHz,当CLK=500kHz时,转换速度为128us。ADC0808与单片机AT89C51接口连接如图2.4。图2.4 ADC0808与单片机AT89C51接口连接图2.1.3 译码器74LS13874LS1382是最常用的集成译码器之一,其引脚图如图2.5所示。图2.5 74LS138引脚图74LS138译码器有3个输入端A、B和C,8个输出端Y0Y7,因此又称为3-8译码器。如图中E1、E2和E3是3个控制输入端(使能控制端),组合控制译码器的选通和禁止,其中E2和E3为低电平有效。当= =0,E1=1时,译码器处于工作状态,否则,当+=1或E1=0时,译码器被禁止

22、(即译码器不工作),此时,无论输入的A、B、C为何状态,译码器都无输出。在分析具有控制输入端的组合电路时,要分清功能输入信号(如74LS138的A、B、C)和控制输入信号(如74LS138的E1、E2、E3)。只有控制输入处于有效(使能)状态时,功能输入与输出之间才有相应的逻辑关系。74LS138译码器的真值表如表2.1所示。由真值表知,当+=1或E1=0时,译码器处于禁止状态,输出全为1;当= =0,E1=1时,译码器被选通,处于工作状态,译码器输出与输入之间的逻辑关系为: = ; = ;= ; = ; = 。表2.1 74LS138译码器的真值表控制输入译码输入输出E1+ABC111111

23、11101111111110000011111111000110111111100101101111110011111011111010011110111101011111101110110111111011011111111110 如选用共阴极数码管,则74LS138 与LED接口方法如图2.6所示。图2.6 74LS138与LED连接2.2电磁炉无锅检测模块无锅检测电路的任务是检查电磁炉上是否有锅,若放有合适的锅,便进行连续加热工作或者保温工作;若没有锅,便停止加热并发出无锅报警,提示用户现在无锅,以便做相应处理;如果在无锅报警中途有锅放上去了,则继续加热工作。如图2.7所示,本系统检锅模

24、块通过电流检测电路来实现,检测原理38:R17分压,D4、C10构成一个滤波电路,LM339作为电压比较器;当LM339的7脚电压高于6脚时,输出一个高电平,可通过测定一个无锅检测电压临界值(0.94V),若当系统启动50ms以上时,电压小于此临界值,则认为是无锅,若无锅,则从电磁炉工作原理上进行解释,即认为是内部加热线圈没有负载,也就没有功耗,所以主回路只有很小的输入电流,取样电压也很低,即单片机检测到的电压将很低。系统自动报警,关断控制线;若电压高于临界值,则认为有锅,恢复原来的工作状态;无锅检测时,按关机键,仍能关机。无锅检测电路设计如图2.7。 图2.7 无锅检测电路图2.3 定时控制

25、模块电路包括信号发生器、时间显示电路、按键电路以及指示电路等几部分。按键功能说明:K1:用来设置定时时间的小时,设置小时每按一下,时钟加一。K2:设置定时的分钟,每按一下,分钟加一。K3:定时设定确认键,设置完后按一下K3确认并退出。显示会自动从00:00开始计时。K4:定时设置,起始时间为00:00;设置首先按一下K4,然后按其他键设置定时时间。时钟电路设计,原理图中的C1、C2电容起着系统时钟频率微调和稳定的作用,因此,在本定时模块中C1、C2选择30 pF,晶振频率为12MHz。其电路设计如图2.8。 图2.8 定时控制电路图定时指示可以有声或光两种形式,本系统采用声音指示。关键元件是扬

26、声器,扬声器有无源和有源两种,前者需要输入声音频率信号才能正常发声,后者则只需外加适当直流电源电压即可,元件内部已封装了音频振荡电路,在得电状态下即起振发声。市场上的有源扬声器分为3V、5V、6V等系列,以适应不同的应用需要。定时电路是用比较器来比较计时系统和定时系统的输出状态,如果计时系统和定时系统的输出状态相同,则发出一个脉冲信号,再和一个高频信号混合,送到放大电路驱动扬声器发声,从而实现定时报警的功能。本次设计的定时时间可达到24小时,用户可根据自己的意愿任意设置定时的时间,当定时时间到时,系统会自动报警以提示用户进行相应的操作。若定时时间还没到,而用户又想要中止时,则可通过面板上的相应

27、按键进行中断。2.4 功率控制模块本设计的功率控制是基于控制PWM占空比来实现的,模块主要由单片机和ADC0808组成。根据电源电压(市电压)利用相关公式并通过调节RV1的大小来实现功率控制。结合实际,功率的测量用户设定的5档炒、炸、煮、煎、保温火力所对的功率分别为1600W、1400W、1200W、1100W、800W。设计预先实现以下几个步骤:(1) 控制公式4要根据所设定的功率及当时所测市电电压,来确定要输出的占空比,将I=P/V代入上式,得:占空比=0.156P/V-0.222 (2.1)为了便于计算机处理,将占空比表示为PWM/128,128为一个PWM信号周期计数值,32us为一个

28、周期;功率P表示为Ptab10,Ptab为火力档功率查表值,由高至低分别为160(A0H)、140(8CH)、120(78H)、110(6EH)、80(50H);将V的测量解析式代入,得:PWM=128Ptab/VOLADC28 (2.2)市电电压值与ADC转换值的近似解析公式:V=VOL220/2.66=VOLADC79.4/51=1.557VOLADC (2.3)VOLADC为VOL电压ADC值。比较电压VCMP与负荷电流的关系。比较电压VCMP的大小可以直接控制负荷电流,PWM信号正是通过控制VCMP来达到控制负荷电流的目的。根据电路图可得出它们之间的关系为:VCMP=5(1+20占空比

29、)/21,它是线性且单调的,每一个PWM占空比都可以得到唯一的一个VCMP 。因此,只要得到比较电压VCMP与负荷电流的关系,就可以得到PWM占空比与负荷电流的关系。本设计通过调整可变电阻来改变PWM占空比,用PWM信号来控制负荷电流,从而达到控制功率的目的。(2) 功率调节与控制如电路图2.9所示,市电的交流电源经桥式整流器变换为直流电,再经电压谐振变换器变换成频率为2040KHz的交流电。桥式整流器BR1(见电源电路)的将市电的工频电源变换为单向脉动的直流电,通过加热线圈L1、二极管D5-D9和功率管Q3-Q10等构成电压谐振变换器。二极管D8、D9的作用是为部分谐振电流提供通路,保护功率

30、开关管。功率管是电压谐振变换器的主开关。Q3-Q6将PWM(PWM信号由单片机C51的P3.4口输出)进行信号放大,Q7-Q9相当于一个功率开关(用Q表示)。当主开关Q导通时,使直流电压加在L1上,L1中的电流由开始按指数规律上升,通过Ll向负载传输能量,L1发热,同时,Ll中也储存能量。当主开关Q关断后,Ll中的能量向Cl中转移而发生谐振。通过调节RV1转轴或滑柄,改变动触点在电阻体上的位置,则改变了动触点与任一个固定端之间的电阻值,来确定要输出的PWM占空比5。最后用软件具体实现时,是用PWM信号来控制负荷电流,即可自由调节和控制功率。由PWM信号得到的比较电压恒定,而电流负反馈信号随输出

31、功率变化。当输出功率大于设定功率时,得到低电平的控制电平,输出窄脉冲;当输出功率小于设定功率时,得到高电平的控制电平,输出宽脉冲。这样,就达到了按设定的功率稳定输出的目的。功率控制电路设计如图2.9: 图2.9 功率控制电路图2.5 温度自动控制模块温度控制模块包括定温设置即电磁炉保温,调温和上、下限控制。定温设置通过调节电位器(RV1)的“” 、“”进行设置定温的大小,按一下“”即温度值加1,按一下“”即温度值下降1。本系统可以在温度限制范围内无限级选择要设置的温度大小,设定后,系统自动处于保温状态。调温时,同样可以通过调节RV1的两个键改变RV1电阻大小,经A/D0808转换后输出温度5,

32、温度变化为每级23度。温度上、下限控制:若温度高于上限或低于下限则自动报警,同时超温警示灯亮。本次设计温度上限为250度,下限为70度。当温度达到250度或低于70度时,峰鸣器会自动发出“B”的报警声,同时超温(红)灯亮。温度控制电路设计如图2.10。图2.10 温度控制电路图2.6 显示模块本次设计显示分为数码管显示和LED灯显示。数码管显示主要有定时显示和温度显示,采用了8位数码管6和一个常用的3-8译码器74LS138实现系统定时时间和温度的数据显示。在8位LED显示时,为了简化电路,降低成本,采用动态显示的方式,8个LED显示器共用一个8位的I/O,8位LED数码管的位选线分别由相应的

33、P2.0P2.2控制, 由74LS138的输出口A、B、C输入经译码器译码输出端Y0Y7输出,然后依次输入到数码管的位选81口。而将其相应的段选线由P0.0P0.7依次输入至数码管的ADP。系统中的数码管集时间显示和温度显示于一体,不但减少元器件的数量,降低设计成本,而且用户可更直观的运用显示功能,使用更方便,实现产品人性化设计。LED灯显示主要有无锅指示,超温指示和系统工作正常指示。如图2.11 中所示,D1为无锅指示灯,当系统检测到无锅时,D1灯亮;D2为正常指示灯,当系统工作正常时,D2亮;D3为超温指示灯,当系统温度值大于250或小于70时,D3亮。显示电路如图2.11: 图2.11

34、显示电路图(1) 显示时间:译码显示电路将“时” 、“分”计数器的输出状态七段显示译码器译码,通过8位LED七段显示器高四位分别显示时间的时十位、时个位、分十位、分个位。校时电路时用来对“时” 、“分” 显示数字进行校对调整的。当电磁炉开机时,显示00:00,若要定时,则通过按键进行相应的设置:按一下K4,进入定时设置,数码管显示相应的时间,设置退出时显示从00:00开始计时的时间;按一下K1、K2分别显示时间分、时的变化。(2) 显示温度:温度由8位数码管的低四位显示(注:本系统中温度显示只用到数码管的低3位,分别显示温度百、十、个位)。温度显示的范围为:0255。通过调节可变电阻的大小来调

35、节温度的高低,并由数码管显示具体温度数据。根据设计要求,结合电磁炉工作的实际情况,本设计另设置了报警上下限,即上限为250,下限为70。用一个LED可显示达到温度上下限,当达到温度上或下限时,该警示灯亮。2.7 保护电路在实际生活中,受多种因素的影响往往会出现市电过压、欠压现象,因此,作为一种家用烹饪电器,其具有相应的保护功能。如图2.12所示,其中RV2,LM324的1、2、3脚和外围组件组成欠压保护电路79。其中RV3,LM324的5、6、7脚和外围组件组成过压保护电路。电阻R5 R8为比较器提供基准电压, R4、R5、R6、R12、R14、R16为分压电阻,VDl、VD2为耦合二极管。电

36、源电压正常时,RV2输出电压使LM324的2脚电位大于3脚电位,其1脚输出低电平,单片机判断电源电压正常。当电源电压低于160V时,RPl输出电压使LM324的2脚电位小于3脚电位,其1脚输出高电平,经VD1、R12、R16分压送入单片机进行欠压判断控制。电源电压正常时,RV3输出电压使LM324的5脚电位大于6脚电位,其7脚输出低电平,单片机判断电源电压正常。当电源电压高于245V时,RV3输出电压使LM324的5脚电位小于6脚电位,其7脚输出高电平,经VD2、R12、R16分压送入单片机进行过压判断控制。图2.12 保护电路图过热检测和保护可参照温度控制模块,当系统温度高于预定值时,系统自

37、动报警并作相应的处理。2.8 按键模块按键设计如图2.13所示, 图2.13 按键设计图 其中按键功能为:K4:定时设置,起始时间为00:00,设置首先按一下K4,然后按其他键设置定时时间;K1:用来设置定时时间的时,设置小时每按一下,时钟加一; K2:设置定时的分钟,每按一下,分钟加一; K3:定时设定确认键,设置完后按一下K3确认并退出。RV1的“” 、“”键分别控制RV1阻值增加、减小,它主要有控制系统两大模块即温度和功率模块,而且都是通过控制RV1的电阻来控制模块功能。在温度控制中,调节RV1的“” 、“”键改变其阻值经A/D转换实现控制;在功率控制中,调节RV1的“” 、“”键改变其

38、阻值经CPU输出改变PWM的输出占空比则可实现功率控制。2.9报警模块利用程序来控制单处机某个口线的“高”电平或“低”电平,则在该口线上就能产生一定频率的矩形波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”、“低”电平的持续时间,就能改变输出频率,从而改变音调。系统报警信号由单片机P3.4口接入扬声器,有报警信号输入时扬声器发出“B”的声音。系统产生报警信号的情况:(1)当定时时间达到时;(2)当温度上限或下限达到时;(3)当系统检测到无锅时。报警电路由一个扬声器驱动电路8和一个扬声器组成。报警电路如图2.14:图2.14 报警电路图2.10 电源电路电源是整个系统的能量来源,它

39、直接关系到系统能否运行。在本系统中单片机、数码管显示、定时、报警等电路需要5V的电源,因此电路中选用稳压芯片7805,其最大输出电流为1.5A,能够满足系统的要求,其电路9 10如图2.15所示。图2.15 电源电路图第3章 程序设计系统程序设计说明在进行微机控制系统设计时,除了系统硬件电路设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。因此,程序设计在微机控制系统设计中占重要地位。对于本系统,软件更为重要。在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制系统准确高效地实现各功能。为了完成上述

40、任务,在进行设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,这种程序设计方法叫模块程序设计法。模块程序设计法的主要优点是:(1)单个模块比起一个完整的程序易编写及调试;(2)模块可以共存,一个模块可以被多个任务在不同条件下调用;(3)模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。本系统软件采用模块化结构,由主程序定时子程序、温度控制子程序显示子程序等构成。3.1 主程序流程如图3.1所示,系统启动后,对整个系统进行初始化,进入主程序循环。初始化包括:口线初始化、测试键检测、键盘显示初始化、定时器中断初始化、A/

41、D转换初始化。开机启动即开启显示,A/D转换和系统内部定时;随着系统工作的进行,用户可启用中断即可自行设置定时,定温;当定时时间到或系统温度超出设定范围时,系统自动开启报警功能,提示用户进行相应操作。程序代码见附录。调用报警子程序调用中断子程序调用转换子程序开启定时、控温调用显示子程序置位初始化标志系统初始化开始结束 如图3.1 主程序流程图3.2 无锅检测程序流程程序流程如图3.2所示,本系统中的无锅检测利用电流检测电路进行检测,系统检测到无锅检测标志EMPTY 为1时,系统认为是无锅;否则为有锅。无锅时,无锅警示灯(D1红灯)亮。检测入口电流检测置无锅检测标志为1无锅检测标志为1?判为无锅

42、无锅指示灯亮判为有锅系统继续工作YN图3.2 无锅检测流程图3.3 A/D转换程序流程A/D转换流程如图3.3所示,首先系统自动转换复位,启动A/D转换,将模拟值通过ADC0808转换为具体可视化数字,并可以通过数码管显示出来。本次设计将温度和压力转换为数值。程序代码见附录。转换复位启动转换允许转换输出读转换结果有转换结束信号NY子程序返回图3.3 A/D转换流程图3.4外部中断外部中断程序流程图如图3.4所示,系统进行定时设置时,启动外部中断。开始扫描按键,当K4按下,可进行定时设置; K1设置定时的分钟,按一K1则分钟加一; K2设置定时的时钟的时,按一下K2则时钟加一;K3设置定时确定并

43、退出。程序代码见附录。设置定时的分关T1标志位清0P2口数据送累加器入口K4按下?K1按下?设置定时的时K2按下?NNNNNNYNNNNNYNN中断返回YNN确定定时设置K3按下?NNNYNN图3.4 外部中断流程图3.5 定时模块流程时间控制主模块的程序框图如图3.5所示,程序代码见附录。CPU系统初始化定时初始化中断初始化始化串行口初始化显示待机指示符设置定时时间显示刷新启动计时有关变量初始化刷新显示报警设置好定时时间定时时间到?1秒钟到了吗?时或分变化了吗延时11NNNNYYYY 图3.5 定时控制主流程图3.5.1内部定时中断内部定时器中断如图3.6所示,由于定时器中断可能发生在主程序的任何地方,因此对主程序和中断服务程序都要用到的资源必须加以保护,如累加器A,在退出中断服务程序时将其恢复。此定时中断还可被用于任何需要不是很严格的定时控制的场合。例如,扬声器延时,可在程序的任何地方打开扬声器,同时设置延时时间计数器在每次1分钟,1分钟过后,扬声器立即自动关断。此外,定时计数、无锅检测延时等,均可在此中断中进行,一般情况下,在主程序中可不必为实现一个与时间控制有关功能而专门编写一段软件延时程序。程序代码见附录。其程序流程图如图3.6:入口数据保护出栈,返回时钟清0时钟加1分钟加1开始秒计时P3.4取反

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号