1、微波炉语音控制系统毕 业 论 文(设 计)题 目: 微波炉语音控制系统 (Title): Voice control system for microwave oven 微波炉语音控制系统摘要本系统是由单片机、语音识别模块、键盘、显示等的组成部分,用来模拟微波炉控制电路及其功能实现。主控部分是由单片机和语音模块部分构成,显示部分是由LCD显示模块和LED工作模拟部分构成。 微波炉控制器系统以AT89S52单片机为核心,由液晶显示模块、 语音识别电路模块、键盘模块、掉电存储模块、电源模块等功能模块组成。本系统对语音功能和定时功能进行了重点设计。此外,还设置了微波火力八级档位设定、烹调模式、语音识
2、别、烹调预约时间设置,对微波炉的基本功能进行设计与实现。本系统把语音识别模块内嵌到微波炉中,设计出一种语音识别控制微波炉。用户只需用简单、 人性化的语音指令告诉微波炉它要执行的任务之后它就愉快地帮主人完成系统操作。关键词: AT89C52单片机;语音控制系统Voice control system for microwave oven SummaryThe system is composed of microcomputer, a speech recognition module, keyboard, display, used to simulate microwave oven con
3、trol circuit and its realization. The main control part is composed of single-chip computer and voice module, display part is composed of a LCD display module and LED analog parts.Microwave oven controller system based on AT89S52 microcontroller as the core, by the liquid crystal display module, voi
4、ce recognition circuit module, keyboard module, power-down memory module, power supply module. The system is focused on the design of function sets the basic and timing functions. In addition, extend the microwave power level eight gear set, cooking mode, speech recognition, cooking appointment time
5、 setting, the basic function of the microwave oven is designed and implemented. The speech recognition module is embedded into the microwave oven, design a speech recognition control of microwave oven. After the user only need a simple, user-friendly voice instructions that tell the microwave oven -
6、 which task to perform it happy to help the master to complete the system operation.Keyword: AT89S52 microcontroller;Voice control system目录1 绪论111设计的背景212设计的意义22 设计任务与要求321设计路线322设计方案323实现功能43总体方案论证与比较531芯片选择532语音识别模块选择633显示模块方案选择1134键盘模块选择1335语音电路方案选择1436电源方案选择1637定时方案选择1738掉电存储模块选择1839火力输出方案选择184
7、系统设计及操作说明2141系统软件设计2142硬件电路设计235 总结31参考文献36致谢38附录A40附录B41附录C42附录D43语音控制微波炉系统一、 绪论1.1设计的背景随着人们生活水平的不断提高,现代化的厨房电器已成为人们日常不可缺少的家用电器。不断更新的现代化家用厨房电器,极大地方便和丰富了们的家庭生活。如微波炉已经成为现代城市生活中人们不可缺少的烹饪工具,现在的微波炉已经可以做到煎、煮、烤、烘、焖、炖、蒸、烩等多种烹饪方式,做出各种营养美味的食物。与其他烹饪工具相比,微波炉具有热效率高、耗电量少、烹调速度快等优点。合乎经济原则,也比传统烹饪节省时间。由于独特的加热原理,它可以有效
8、保持食物原有的色、香、味与营养成份,还可以迅速解冻食物,保持食物的水分与鲜嫩。而且微波炉使用中绝少产生油烟与炽热空气,使厨房保持清洁。微波炉有如此强大的功能与新技术的不断应用是分不开的。例如,微波炉的智能化、多功能化、节能化、健康化、操作简便化的发展,使得微波炉的发展前景越来越好,越来越受到人们的欢迎。微波炉,顾名思义是用微波来加热,用的频率是24. 5亿赫左右的超短波,它由磁控管产生,经微波炉金属器壁反射再反射后,被炉中的食物吸收。食物能吸收微波是因为食物中含有水分1。水分子为极性分子,一端为正极,一端为负极,而微波是电磁波,有正半周与负半周。24. 5亿赫即表示该微波在一秒钟内变换正负极达
9、24. 5亿次,每换一次,水分子即跟随反转一次;由于水分子一直振动反射,也就摩擦生热,热被食物分子吸收,食物就会变热、变熟2。微波炉控制器系统以AT89C52单片机为核心,由液晶显示模块、语音电路模块、键盘模块、掉电存储模块、电源模块等功能模块组成。本系统对基本的功能设置、语音识别控制功能、数据装入和定时功能进行了重点设计。此外,还扩展了微波火力八级档位设定、烹调模式、语音提示、烹调预约时间设置等功能,对微波炉的基本功能进行设计与实现。1.2设计的意义在现代人快节奏生活中,微波炉已成为便捷生活的一部分,为人们节省了时间,为社会节约了能源随着控制技术和智能技术的发展。微波炉也向着智能化、信息化发
10、展除了可以实现常规解冻,烹调烘烤三项基本功能外,又进行了创新设计,增加了温度涮量和压力测量,定时,防微波泄漏检测,自定义烹调,程序烹调等功能。采用数码显示工作状态和时闻,预留液晶显示端口,显示更直观更人性化 微波炉是一种用微波加热的现代化烹调灶具,它由电源、磁控管、控制电路和烹调腔组成。其中,微波炉控制器部分完成和工作状态之间的切换功能。虽然现今之微波炉的功能巳大大不同与以前。也由于此,更多的控制按键及不同要求的屏幕出现以配合不同的要求。系统的操作变得更烦琐。在市场上有些高档次的微波炉用了非常复杂的温度感应器加上高准及高灵敏度的湿度控制器,这类产品使生产成本大为提高, 同时软件结构变得更加复杂
11、直接影响系统的稳定性。然而语言是人类传递信息的主要手段,语音识别技术是目前世界上最热门和最具发展前景的新型信息技术之一。采用语音识别作为人机接口的设备能够具有简便、快捷、灵活的优点,其在军事、民用和商业领域都发挥了巨大的作用,并在未来一定会成为新一代操作系统的接口。语音控制技术在声控汽车、智能家电操作、自动导航、自动售票系统和智能玩具等方面有着广泛的应用。本文以嵌入式微处理器为核心,采用ICRoute公司的高性能LD3320语音识别芯片和相关控制电路,设计实现了微波炉的语音控制系统。由于LD3320芯片集成了语音识别处理器和外部电路,包括AD和DA转换器、麦克风、声音输出等接口,且不需要外接任
12、何的辅助芯片如Flash、RAM等。在现有的产品中直接集成即可实现语音识别声控,人机对话功能,识别的关键词语列表是可以任意动态编辑的,因而满足了小体积、低功耗和可通用的要求,因而本声控系统有着广泛的应用前景。本课题把语音识别模块内嵌到微波炉中,设计出一种语音识别控制微波炉。用户只需用简单, 人性化的语音指令告诉微波炉-它要执行的任务之后它就愉快地帮主人完成系统操作。 二、设计任务与要求2.1设计路线本项目详细分析微波炉控制器的原理和组成结构,设计一个语音识别控制的具有定时和信息显示功能的微波炉控制器。微波控制器系统可由以下五个电路模块组成:语音识别控制模块:其功能是识别微波炉工作过程中语音指令
13、并执行操作;显示模块:其功能是显示各种工作模式、微波炉火力档的设定、预约时间和工作时间等等图文复杂的信息;语音电路模块,其功能是在按键模式工作时,芯片可以通过 LED 管脚给出信号来提示芯片的工作状态,并且伴随有提示音,用户也可自定 4 种提示音效; 计时电路,其功能是对时钟进行减法计数,提供烹调完成时的状态信号;显示译码电路,其功能是显示微波炉控制器的各状态信息。单片机及外围电路单片机及外围电路单片机及外围电路2.2设计方案设计一个语音识别控制的具备定时和信息显示功能的微波炉控制器。要求:(1) 该微波炉控制器能够在任意时刻取消当前工作,复位为初始状态。(2)可以根据需要设置烹调时间的长短,
14、系统最长的烹调时间为 59 分 59 秒;开始烹调后能 够显示剩余时间的多少。 (3) 显示微波炉控制器的烹调状态。 (4) 语音通过语音识别芯片和单片机的结合,实现输出控制,实现语音控制微波炉各种操作。(5) 设计适当的外围电路,实现微波炉系统功能。2.3实现功能 (1) 语音识别菜单功能:识别微波炉工作过程中语音指令并执行操作。例如:语音输入命令:“上”、“下”、“左”、“右”、“确定”、“返回”可语音识别控制液晶显示屏选择对应的模式,确定烹饪模式和火力大小,调节定时并开始微波。(2) 烹饪功能:烹饪模式有几种可选:有烧烤、解冻、汤类、蒸菜模式,同时人性化的增加了自定义模式,可自行选择适合
15、的模式进行微波。可通过语音识别或加、减按键和确定键来对时间进行设置或预约,首先是对时间的设置,按确定键再对分进行设置,接着对秒进行设置,每次设置完就要按一次确定键,以完成对时间的设置。时间设置完毕返回等待系统开始烹饪。(3) 火力调节功能:火力模式有对应的烹饪模式中有固定的火力大小,也可自定义选择火力大小。固定的烹饪模式的火力大小有:烧烤模式6档火力、解冻模式3档火力、汤类模式7档火力、蒸菜模式5档火力。可通过语音识别或加、减键来设置烹饪时间,最高是8档,最低是1档,流程同预约时间的设置相同,时间设置完毕就直接开始烹饪(4) 液晶显示功能:液晶显示屏使用12864显示屏,液晶显示子程序显示各模
16、式的工作状态,如显示火力模式、烹饪模式、预约时间和烹饪时间、也可显示“作者名”和“欢迎使用 语音控制微波炉系统”。液晶显示器采用的是并行通讯的工作方式。(5) 定时服务功能:程序检测系统是否开始烹饪,当系统已经进入烹饪状态,定时服务子程序开始工作,首先通过按键扫描判断预约时间标志按键是否被按下,当有按键按下进入预约时间的定时服务,如果没有按键按下,直接进入烹饪时间的定时服务。各固定烹饪模式的定时时间为烧烤模式定时十分钟、解冻模式定时五分钟、汤类模式定时一分三十秒、蒸菜模式定时八分钟。三、总体方案论证与比较3.1芯片选择方案一:采用数字逻辑芯片本系统有功能设置、数据装入、定时、显示、音响控制多个
17、功能模块。各个状态保持或转移的条件依赖于键盘控制信号。由于键盘控制信号繁多,系统的逻辑状态以及相互转移更是复杂,用纯粹的数字电路或小规模的可编程逻辑电路实现该系统有一定的困难,需要用中大规模的可编程逻辑电路。这样,系统的成本就会急剧上升相对于方案二。因此,本设计并未采用这种方案。方案二:采用单片机作为整个控制系统的核心鉴于市场上常见的51系列8位单片机的售价比较低廉,我们的设计采用了P89V51RB2FN单片机作为主控制器,AT89C52 是一款微控制器,包含16kB Flash 和256 字节的数据RAM ,3 个16 位定时器/计数器,8 个中断源,4 个中断优先级,2 个DPTR 寄存器
18、3;主要负责系统的控制与协调工作。具体方案如下:首先,利用单片机检测各种模拟信号,通过接收键盘送来的命令,确认功能设置,实现数据装入和实时监控,其次,根据CPU发出的信号控制语音播报、显示等功能,用软件实现系统定时功能,节省了硬件成本的开销。这样的设计使安装和调试工作可以并行进行,极大地缩短了总体设计和制造的时间,综合考虑以上因素。我们采用了方案二,本方案的基本原理如图1所示,控制系统的原理图见附录。单片机及外围电路交流输入整流虑波输出调整单元液晶显示模块图1 系统原理框图掉电存储模块键盘模块语音模块3.2 语音识别模块选择语音识别模块选用LD3320语音识别模块(图2),该模块有16个单片机
19、IO口,其中有一组8位IO扩展接口、1个定时器、1个外部中断,可做为单片机最小系统实现控制功能,可配套其他单片机也可独自完成工作。LD3320芯片(图3)是一款“语音识别”专用芯片,由ICRoute公司设计生产。该芯片集成了语音识别处理器和一些外部电路,包括AD、DA转换器、麦克风接口、声音输出接口等。本芯片在设计上注重节能与高效,不需要外接任何的辅助芯片如Flash、RAM等,直接集成在现有的产品中即可以实现语音识别声控人机对话功能。并且,识别的关键词语列表是可以任意动态编辑的。 图2 语音识别模块图3 语音识别芯片3.2.1 功能介绍(1)通过ICRoute公司特有的快速而稳定的优化算法,
20、完成非特定人语音识别。不需要用户事先训练和录音,识别准确率95%。(2)不需要外接任何辅助的Flash芯片,RAM芯片和AD芯片,就可以完成语音识别功能。真正提供了单芯片语音识别解决方案。(3)每次识别最多可以设置50项候选识别句,每个识别句可以是单字,词组或短句,长度为不超过10个汉字或者79个字节的拼音串。另一方面,识别句内容可以动态编辑修改,因此可由一个系统支持多种场景。(4)芯片内部已经准备了16位A/D转换器、16位D/A转换器和功放电路,麦克风、立体声耳机和单声道喇叭可以很方便地和芯片管脚连接。立体声耳机接口的输幽功率为20mW,而喇叭接口的输出功率为550mW,能产生清晰响亮的声
21、音。(5)支持并行和串行接口,串行方式可以简化与其他模块的连接。(6)支持MP3播放功能,无需外围辅助器件,主控MCU将MP3数据依次送入LD3320芯片内部就可以从芯片的相应PIN输出声音。产品设计可以选择从立体声的耳机或者单声道喇叭来获得声音输出。支持MPEGI(ISO/IEC11172-3), MPEG2(ISO/IEC13818-3)和MPEG 2.5 layer 3等格式。(7)工作供电为3. 3V,如果用于便携式系统,使用3节AA电池就可以满足供电需要。3.2.2 电路说明 图4 内部电路的简单逻辑图(1)电压要求:VDD 数字电路用电源输入 3. 0 V - 3. 3 VVDDI
22、O 数字1/0电路用电源输入 1. 65 V - VDDVDDA 模拟电路用电源输入 3. 0 V - 4. 0 V芯片管脚输入电压范围:高电压(逻辑“1”):0. 7;lcVDDIOVDDIO 低电压(逻辑“0”):00. 3VDDIO(2)时钟(Clock)芯片必须连接外部时钟,可接受的频率范围是4-48MHz;而芯片内部还有PLL频率合成器,可产生特定的频率供内部模块使用。(3)复位对芯片的复位信号(RSTB:1:)必须在VDD/VDDA/VDDIO都稳定后进行。无论芯片正在进行何种运算,复位信号都可以使它恢复初始状态,并使各寄存器复位。如果没有后续的指令(对寄存器的设置),复位后芯片将
23、进入休眠状态。此后,一个CSB:1:信号就可以重新激活芯片进入工作状态。(4)并行接口本芯片可通过并行方式和外部主CPU连接,此时使用8根数据线(PO-P7),4个控制信号(WRB#,RDB#,CS冰,AO),以及一个中断返回信号(INTB#)。(5)串行接口串行接口通过SPI协议和外部主CPU连接,首先要将MD接高电平,而将(SPIS:1:)接地。此时只使用4个管脚:片选(SCS冰)、SPI时钟(SDCK)、SPI输入(SDI)和SPI输出(SDO)。(6)寄存器对芯片的设置和命令,包括传送数据和接受数据,都是通过对寄存器的操作来完成的。例如进行语音识别时,设置识别的关键词语列表,设定芯片的
24、识别模式,谀别完成后获得识别结果都是通过读写寄存器来完成。播放声音时,就是将MP3格式的数据循环放入FIFO对应的寄存器。(识别结果是通过寄存器返回识别出的关键词语在关键词语列表中的排列序号Index数值,该Index数值是在设置关键词语列表时指定)。(7)喇叭音量的外部控制除了特定寄存器来控制音量以外,芯片外部的电路可以控制喇叭的音量增益。使用的是EPI、EP2、EP3对应的管脚。3.2.3 管脚分布图图5 管脚分布图3.3 显示模块方案选择单片机应用系统最常用的显示器是LED(发光二极管显示器)和LCD(液晶显示器)2。这两种显示器可显示数字、字符及系统的状态。它们的驱动电路简单、易于实现
25、且价格低廉,因此得到了广泛应用。现在就这两种显示模块进行分析,选择符合微波炉控制器的模块。方案一:数码管LED显示模块常用的LED显示器有LED状态显示器(俗称发光二极管)、LED七段显示器(俗称数码管)和LED十六段显示器。发光二极管可显示两种状态,用于系统状态显示;数码管用于数字显示;LED十六段显示器用于字符显示。无论是单个LED(发光二极管)还是LED七段码显示器(数码管),都不能显示字符(含汉字)及更为复杂的图形信息,这主要是因为它们没有足够的信息显示单位。所以,在一些要求显示图文的系统中,不适宜用LED显示模块。方案二:液晶显示器LCD模块LCD是一种被动显示器,具有功耗低,显示信
26、息大,寿命长和搞干扰能力强等优点,它不仅省电,而且能显示大量的信息如文字、曲线、图形等,其显示界面较之数码管有了质的提高,在低功耗的单片机系统中得到大量使用。4随着液晶显示技术的发展,LCD显示器的规格众多,其专用驱动芯片也相互配套,使LCD在控制和仪表系统中广泛应用提供了极大的方便。本微波炉控制器系统要显示各种工作模式、微波炉火力档的设定、预约时间和工作时间等等图文复杂的信息,故选择液晶显示器作为显示模块。本系统采用的是FYD12864-0402B17型号的液晶显示器。FYD12864-0402B液晶显示器是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字
27、库的点阵图形液晶显示模块;其显示分辨率为12864, 内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示84行1616点阵的汉字,也可完成图形显示;低电压低功耗是其又一显著特点。6由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。本系统中,液晶显示的工作方式是采用并行的工作方式。3.4键盘模块选择方案一:独立式按键结构独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根
28、I/O口线,每个按键的工作不会影响其它I/O口线的状态。独立式按键的典型应用如图3.1所示。图中按键输入均采用低电平有效,些外,上拉电阻保证了按键断开时,I/O口线有确定的高电平。当I/O口线内部有上拉电阻时,外电路可不接上拉电阻。独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口线,因此,在按键较多时,I/O口线浪费较大,不宜采用。12方案二:矩阵式按键单片机系统中,若使用按键较多时,通常采用矩阵式(也称行列式)键盘。矩阵式键盘由行线和列线组成,按键位于行、列线的交叉点上。一个4*4的行、列结构可以构成一个含有16个按键的键盘,显然,在按键数量较多时,矩阵式键盘较之独立式按
29、键键盘要节省很多I/O口。矩阵式键盘中,行、列线分别连接到按键开关的两端,行线通过上拉电阻接到+5V上。当无按键按下时,行线处于高电平状态;当有键按下时,行、列线将导通,此时,行线电平将由与此行线相连的列线电平决定。这是识别按键是否按下的关键。然而,矩阵键盘中的行线、列线和多个键相连,各按键按下与否均影响该键所在行线和列线的电平,各按键间将相互影响,因此,必须将行线、列线信号配合起来作适当处理,才能确定闭合键的位置。13矩阵式键盘大大节省了I/O口线,比较适合微波炉控制系统的要求,为其它的模块省了很多I/O口线,减小了整个系统的硬件开销。3.5语音电路方案选择方案一:蜂鸣器蜂鸣器声音单一,无法
30、实现一连串的语音播放,对一些要求比较高的系统来说,蜂鸣器不适合。本系统要求每次烹饪结束或者预约时间结束都要语音提示,所以本系统不采用蜂鸣器。方案二:语音处理电路在本设计中,提示音及语音播报功能都需要语音电路实现。本设计采用了ISD1730芯片实现语音处理功能,ISD1730属于华邦ISD公司2007 年新推出的单片优质语音录放电路,该芯片 提供多项新功能,包括内置专利的多信息管理系统,新信息提示( vAlert ) , 双运作模式(独立 & 嵌入式),以及可定制的信息操作指示音效。芯片内部 包含有自动增益控制、麦克风前置扩大器、扬声器驱动线路、振荡器与内存等的全方位整合系统功能。其特点为可录、
31、放音十万次,存储内容可以断电保留一百年;两种控制方式,两种录音输入方式,两种放音输出方式;可处理多达 255 段信息;有丰富多样的工作状态提示;多种采样频率对应多种录放时间;通过音频放大器放大输出;音质好,电压范围宽,应用灵活,价廉物美。该电路可以在单片机的控制下实现按地址录、放音,并能检测到放音是否结束。根据设计需要,语音提示音播放伴有LED灯闪烁提示,直观方便。 ISD1730 的独立按键工作模式录放电路非常简单(见图6),而且功能强大。不仅有录、放功能,还有快进、擦除、音量控制、直通放音和复位等功能。这些功能仅仅通过按键就可完成。 图6 语音电路3.6电源方案选择方案一:开关电源用开关稳
32、压电源给整机供电,此方案能够完成本作品电流源的供电,但开关电源比较复杂,而且何种也比较大,制作不便,因而此方案难以实现。方案二:LM7805三端稳压电源单片机控制系统以及外围芯片供电采用LM7805三端稳压器件,通过桥式整流,然后进行滤波稳压。可提供5V直流给单片机,如下图7所示。图7 电源电路3.7定时方案选择方案一:采用实时时钟芯片针对计算机系统对实时时钟功能的普遍需求,各大芯片生产厂家陆续推出了一系列的实时时钟集成电路,如DS1287、DS12887、DS1302等。这些实时时钟芯片具备年、月、日、时、分、秒计时功能和多点定时功能,计时数据的更新每秒自动进行一次,不需程序干预。计算机可通
33、过中断或查询方式读取计时数据并进行显示,因此计时功能的实现无需占用CPU的时间,程序简单。此外,实时时钟芯片多数带有锂电池做后备电源,具备永不停止的计时功能;具有可编程方波输出功能,可用做实时测控系统的采样信号等;有的实时时钟芯片内部还带有非易失性RAM,可用事业存放需长期保存但有时也需变更的数据。由于功能完善,精度高,软件程序设计相对简单,且计时不占用CPU时间,因此,在工业实时测控系统中多采用这一类专用芯片来实现实时时钟功能。但是实时时钟芯片对硬件要求较高,成本相对而言比较高,所以不采用该方案。5方案二:软件控制利用P89V51RB2FN内部的T0定时/计数器进行中断定时,配合软件延时实现
34、时、分、秒的计时,还有烹饪预约时间和烹饪时间的设置。该方案不但节省硬件成本,且能够加深我们对定时/计数器的使用、中断及程序设计方面的理解与提高,简化硬件设计,使整个设计整体小巧玲珑易携带。软件设计较适合现阶段我们的学习和锻炼,因此本系统将采用软件方法实现计时和定时。63.8掉电储存模块为了在断电的情况下能保存好已经设置好的时间和菜单等数据,为此系统采用24C01 E2PROM。24C01是一个4Kb的支持I2C 总线数据传送协议的串行CMOS E2PROM 可用电擦除,可编程自定时写周期(包括自动擦除时间不超过10ms 典型时间为5ms)的串行E2PROM。当系统在工作过程中,遇到突然断电的情
35、况下,系统会把断电前的状态和数据自动存进24C01 E2PROM中,在系统重新开始工作时自动从24C01 E2PROM中读取数据,以继续完成没有完成的工作,实现了系统的掉电存储功能。图8 掉电存储模块3.9火力输出方案选择微波炉的心脏是磁控管。这个叫磁控管的电子管是个微波发生器,它能产生每秒钟振动频率为24.5亿赫的微波。这种肉眼看不见的微波,能穿透食物达5cm深,并使食物中的水分子也随之运动,剧烈的运动产生了大量的热能,于是食物煮熟了。这就是微波炉加热的原理。磁控管工作原理大意是把家用220V电转换20000伏高压,经过磁控管转化成2450MHZ的电磁波。磁控管阳极高压3000V-7000V
36、,工作频率2450MHz,阳极电流为300mA-1200Ma21,微波炉功率调整的原理就是通过高速控制磁控管的开停时间来调整功率,磁控管的功率是不可变的,因此直接控制磁控管的开关状态以实现对微波炉的火力设置是不可取的,现有两种方案选择。方案一:开关电源使用开关电源方式可以达到更高频率的开停速度,而且这个开关频率是可变的,这就实现的微波功率的精度控制,开关电源的使用以电子元件代替了高成本的高压变压器18,大大节省了制造成本,但是相比较方案二,开关电源还是不合适。方案二:PWM使能脉宽调节模式P89V51RB2FN单片机内部的可编程计数器阵列(PCA )功能模块含有一个特殊的16 位定时器,有5
37、个16 位的捕获/比较模块与之相连。每个模块可编程工作在4种模式下:上升/下降沿捕获、软件定时器、高速输出或脉宽调节器。每个模块都与P1 口向连。模块0 连接到P1.3 (CEX0 ),模块1 连接到P1.4 (CEX1 ),依此类推。寄存器CH 和CL 的内容是正在自由递增计数的16 位PCA 定时器的当前值。PCA 定时器是5 个模块的公共时间基准,可通过编程工作在:1/6 振荡频率、1/2 振荡频率、定时器0 溢出或ECI 脚的输入(P1.2 )。定时器的计数源由CMOD SFR 的CPS1 和CPS0 位来确定。所有PCA 模块都可用作PWM 输出(如图3.6)。输出频率取决于PCA
38、定时器的时钟源。由于所有模块共用仅有的PCA 定时器,所有它们的输出频率相同。各个模块的输出占空比是独立变化的,与使用的捕获寄存器CCAPnL 有关。当PCA CL SFR 的值小于CCAPnL SFR 时,输出为低,当PCA CLSFR 的值等于或大于CCAPnL 时,输出为高。当CL 的值由FF 变为00 溢出时,CCAPnH 的内容装载到CCAPnL 中。这样就可实现无干扰地更新PWM 。要使能PWM 模式,模块CCAPMn 寄存器的PWM 和ECOM位必须置位,如图9所示。本系统采用了PCA的模块0(P1.3)的使能脉宽调节模式(PWM)来控制单片机输出脉冲的占空比,通过改变输出占空比
39、控制变压器初级绕组的通断电状态,即对其阳极电压的变压器初级绕组通断电的控制来实现对磁控管的开关控制。以此控制变压器的初级绕组微波炉磁控管的停和转,以实现对烹调功率的控制。PCA方框图和PCA模块的PWM模式的方框图分别如图8和图9所示,表10就是输出的火力档位对应的电压。表1 火力档位设置表档 位(档)012345678输出电额(V)0.20.71.351.952.553.153.754.354.95四、系统设计及操作说明本章主要是介绍微波炉控制器设计系统的设计及系统的操作说明,系统的液晶显示模块采用并行通讯的工作方式,键盘方面则采用程序扫描的工作方式,下面就各模块的软件设计进行了详细的介绍。
40、本系统软件设计的程序见附录。4.1系统软件设计根据实际的硬件电路,为了有效地实现系统的基本功能,用软件方法实现了系统的定时功能、控制系统的语音播放、控制液晶显示等等。软件设计主程序流程图、按键功能扫描子程序图、预约时间子程序图、火力模式子程序图、火力自定义子程序图、烹饪模式子程序图、液晶显示子程序图、语音播放子程序图、定时服务子程序图和按键扫描子程序图分别如下图所示。4.1.1主程序 主程序负责与各子程序模块的接口和检查键盘功能号,流程图如图11所示。4.1.2按键功能扫描子程序本系统的矩阵式键盘的工作方式采用的是程序扫描方式,为了能及时发现有键按下,CPU必须不断调用键盘处理程序,对键盘进行
41、扫描以确定调用哪个功能子程序。通过调用按键程序扫描子程序,检测哪些功能按键被按下就进入哪种状态模块,以调用哪个功能子程序,进入哪种工作状态,不断地循环扫描,流程图如图12和图13所示。4.1.3烹饪预约时间子程序进入烹饪预约时间子程序,通过加、减按键和确定键来对时间进行设置,首先是对时的设置,按确定键再对分进行设置,接着对秒进行设置,每次设置完就要按一次确定键,以完成对时间的设置。时间设置完毕返回等待系统开始烹饪,流程图如图14所示。4.1.4火力模式子程序进入火力模式,通过加、减键,来设置烹饪时间,流程同预约时间的设置相同,时间设置完毕就直接开始烹饪,流程图如图15所示。4.1.5火力自定义
42、子程序火力自定义模式,既要设置火力,也要设置烹饪时间,流程是先通过加、减键设置火力档,最高是8档,最低是1档,确定以后再通过加、减键开始设置烹饪时间,火力和烹饪时间都设置完毕,直接开始烹饪,流程图如图16所示。4.1.6烹饪模式子程序烹饪模式是系统预先已经设置好烹饪时间和烹饪火力,只要按确定键就马上进入开始烹饪状态。流程图如图17所示。4.1.7液晶显示子程序液晶显示子程序显示各模式的工作状态,如显示火力模式、烹饪模式、预约时间和烹饪时间,液晶显示器采用的是并行通讯的工作方式。流程图如图18所示。4.1.8定时服务子程序程序检测系统是否开始烹饪,当系统已经进入烹饪状态,定时服务子程序开始工作,
43、首先通过按键扫描判断预约时间标志按键是否被按下,当有按键按下进入预约时间的定时服务,如果没有按键按下,直接进入烹饪时间的定时服务。流程图如图19所示。4.1.9语音播放子程序进入语音播放子程序,当预约时间结束,响应播放语音提示,当烹饪时间结束,响应播放语音提示。语音播放有三种情况,分别是开始烹饪、烹饪时间结束、烹饪预约时间结束三种情况,由三个按键模拟后三种情况,程序不断地对这五种情况进行扫描,当任何一种情况发生,系统立即响应并播放提示音给用户。流程图如图20所示。开始初始化液晶初始化调用键盘扫描子程序调用液晶显示子程序调用语音播放子程序结束图10 主程序流程图调用语音或按键操作子程序保护现场调
44、用预约时间子程序调用火力模式子程序调用预约时间子程序调用火力模式子程序YNY调用火力自定义子程序NY调用火力自定义子程序调用烹饪模式子程序N调用烹饪模式子程序恢复现场返回图11 按键功能扫描子程序YN保护现场预约时+199?预约时=0是减键?预约时-1=0xFF?预约时=99确定键?图12 烹饪预约时间子程序恢复现场返回是加键?预约分设置预约秒设置确定键?确定键?YYYYNNNNNNN保护现场是减键?是加键?火力档位+18?火力档位=8火力档位-1=0?火力档位=0确定键?调用火力模式子程序恢复现场返回图13 火力自定义子程序NNNNNYYYYY保护现场保护现场确定键?开始烹饪返回恢复现场图1
45、4 烹饪模式子程序显示火力模式保护现场显示烹饪模式显示预约时间显示烹饪时间返回图15 液晶显示子程序取消键返回初始状态YYNN保护现场预约时间标志位为1?是否开始烹饪预约时间秒-1=0xFF?预约时间秒=59预约时间分-1=0xFF?预约时间分=59预约时间时-1=0xFF?预约时间结束烹饪时间秒-1=0xFF?烹饪时间秒=59烹饪时间分-1=0xFF?烹饪时间分=59烹饪时间时-1=0xFF?烹饪时间结束恢复现场返回图16 定时服务子程序YYNNNNNNNN保护现场恢复现场有键闭合吗?二次调用延时子程序延时12ms有键闭合吗?求闭合键的键号闭合键释放否?键号送到A返回延时6 ms图17 按键
46、扫描子程序NNYYNY图18 语音播放子程序保护现场预约时间结束?播放语音提示烹饪时间结束?播放语音提示无水?播放语音提示播放语音提示恢复现场返回NNNNYYYY炉门是否关?无物?播放语音提示NY4.2硬件电路设计4.2.1常规模式测试在该模式下,主要对烹调、解冻和烧烤三个功能分别进行测试。在每个功能下,通过键盘和液晶显示器选择菜单,设置完后,按启动键,开始模拟加热。这个过程中,液晶显示屏显示火力强度和烹饪时间,烹饪时间倒计时工作,系统正常工作。总之,对系统各种功能测试均正常,具备一般微波炉系统的功能4.2.2定时时间测试表2 定时时间误差测量表倒计时设定值实际测得值计时误差10分10秒10分10秒025分25秒25分25秒034分08秒59分59秒34分