基于FPGA的微波炉控制器设计 - 毕业设计论文 联系客服

发布时间 : 星期一 文章基于FPGA的微波炉控制器设计 - 毕业设计论文更新完毕开始阅读18940167f5335a8102d220b9

基于FPGA 的微波炉控制器设计

生成相应的电路符号,如图4.18所示

controlDATA1[15..0]RESETSET_TSTARTTESTCLKcontrol_bcd[15..0]COOKSEC_L[3..0]SEC_H[3..0]MIN_L[3..0]MIN_H[3..0]ALARMinst 图4.18 控制模块电路符号

其中,输入信号CLK为时钟输入信号,时钟上升沿敏感;TEST为数码显示管测试信号,高电平有效,用于测试显示管是否正常工作;SET_T为烹调时间设置时间,高电平有效时允许设置烹调时间;DATA为数据输入信号,用于设置烹调时间的长短和最高温度值;START为烹调开始的控制信号,高电平有效时开始烹调;RESET为复位信号,高电平有效时系统复位清零。

输出信号control_bcd为温控信号,外接4个七段数码管,动态地显示微波炉当前工作状态下的温度,以及火力档位;COOK指示微波炉状态,它外接用于控制烹调的工作状态指示灯,高电平时表示烹调已经开始或正在进行,低电平便是烹调结束或没有进行;SEC_L、SEC_H、MIN_L、MIN_H分别表示秒个位、秒十位、分个位、分十位,,他们分别接4个七段数码管,动态地显示完成烹调所剩的时间以及测试状态信息“8888”、烹调完毕的状态信息“DONE”。ALARM表示音效效应控制信号。

以下是该控制模块的内部原理图,如图4.19所示:

- 29 -

西南石油大学本科毕业设计(论文)

图4.19 控制模块内部原理图

4.3. 显示模块设计

显示部分采用七段数码管和发光二极管来实现。由于数码管显示信息较少,一些信息用数码管显示不够直观,因此本系统在采用数码管显示的同时,还用发光二极管作为辅助显示。其中,用七段数码管作为时间、温度、火力大小显示,用发光二极管作为状态提示显示。具体设计时,采用4位LED数码管显示加热倒计时,3位LED数码管显示当前温度值,1位LED数码管显示当前火力档位。8个状态提示指示灯分别表示:工作状态、开门指示、测试、烹调、烘烤、解冻、意外报警、完成提示。其外观显示如图4.20所示:

- 30 -

基于FPGA 的微波炉控制器设计

图4.20 显示界面外观效果图

其中,时间/温度/火力显示主要由LED数码管实现。分段式显示器(LED数码管)由7条线段围成,只要按规律控制各发光段的亮、灭,就可以显示各种字形或符号。 LED数码管有共阳、共阴之分。图4 .21是共阴式LED数码管的原理图。使用时,公共阴极接地,7个阳极a~g由相应的BCD七段译码。

图4.21 七段数码管电路图

BCD七段译码器的输入是1组 BCD码,输出是数码管各段的驱动信号(以a~g表示),也称4-7译码器。若用它驱动共阴LED数码管,则输出应为高有效,即输出为高(1)时,相应显示段发光。根据组成0~9这10个字形的要求可以列出该七段译码器的真值表。本显示译码器不仅要对数字0~9进行显示译码,还要对字母d、o、n、E进行显示译码。这其译码对照表如表4.2所示:

- 31 -

西南石油大学本科毕业设计(论文)

表4.2 译码对照表

显示的数字或字母 0 1 2 3 4 5 6 7 8 9 d o n E BCD编码 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 七段显示驱动编码(g~a) 0111111 0000110 1011011 1001111 1100110 1101101 1111101 0000111 1111111 1101111 1011110 1011100 1010100 1111001 根据该译码对照表对该显示译码器进行设计,其关键代码如下: PROCESS(AIN4) BEGIN CASE AIN4 IS

WHEN \ --0 WHEN \ --1 WHEN \ --2 WHEN \ --3 WHEN \ --4 WHEN \ --5 WHEN \ --6 WHEN \ --7 WHEN \ --8 WHEN \ --9 WHEN \ --d

- 32 -