微波炉控制器的设计【GHOE】

上传人:东****0 文档编号:121575166 上传时间:2020-02-24 格式:DOC 页数:23 大小:809KB
返回 下载 相关 举报
微波炉控制器的设计【GHOE】_第1页
第1页 / 共23页
微波炉控制器的设计【GHOE】_第2页
第2页 / 共23页
微波炉控制器的设计【GHOE】_第3页
第3页 / 共23页
微波炉控制器的设计【GHOE】_第4页
第4页 / 共23页
微波炉控制器的设计【GHOE】_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《微波炉控制器的设计【GHOE】》由会员分享,可在线阅读,更多相关《微波炉控制器的设计【GHOE】(23页珍藏版)》请在金锄头文库上搜索。

1、目录一:设计任务与要求.1二:总体框图1三:选择器件3四:功能模块31.KZQ模块(程序 仿真图)3 2.ZZQ模块(程序 仿真图)6 3. JSQ模块(程序 仿真图)7 4. Seltime模块(程序 仿真图)10 . 5.deled模块(程序 仿真图)126. div_clk1模块(程序 仿真图)147. decode3-8模块(程序 仿真图)158. yzdl模块(程序 仿真图)17五:总体设计电路图19 1顶层设计的电路原理图19 2顶层设计的仿真结果20 3电路的管脚图214. 试验箱连接215. 心得体会21微波炉控制器的设计一.设计任务与要求1.设计任务 (1)复位开关; (2)

2、启动开关; (3)烹调时间设置; (4)烹调时间显示; (5)七段码测试; (6)启动输出; (7)按TEST键可以测试七段码管,显示为“8888”; (8)设定时间后,按启动键开始烹调,同时七段码显示剩余时间,时间为0 时,显示烹调完成信息“DONE”. 2.要求 能完全实现微波炉控制器所具有的烹调时间设置、状态转换、提醒等功能,以及各个按键所具有的功能。二总体框图 1.微波炉控制器的总体设计方案A模块化设计,下图:预设初值 倒计时减计数 输出数据 B:再在上面大模块的基础上进行改进,增加复位端和测试端 复位输出数据 预设 倒计时 实现闪烁初值 减计数 测试2模块功能要求根据该微波炉控制器的

3、功能设计要求,本系统可由以下8个模块组成:1.状态控制器KZQ;2.数据装载器ZZQ;3.烹调计时器JSQ;4.显示译码器YMQ47;5.seltime模块 驱动8位八段共阴扫描数码管的片选驱动信号输出模块6.deled模块 7.驱动八段字形译码输出模块8.div_clk1分频器模块功能是将一个固定的频率分成实验所需频率。3.模块功能(1)状态控制器KZQ模块的功能是控制微波炉工作过程中的状态转换,并发出有关控制信息:输入信号为CLK、TEST、START、SET_T、RESET和DONE,输出信号为LD_DONE、LD_CLK、LD_8888和COOK信号。KZQ根据输入信号和自身当时所处的

4、状态完成状态的转换和输出相应的控制信号:LD_DONE指示ZZQ装入烹调完毕的状态信息“donE”的显示驱动信息数据;LD_CLK指示ZZQ装入设置的烹饪时间数据;LD_8888指示ZZQ装入用于测试的数据“8888”以显示驱动信息数据;COOK指示烹饪正在进行之中,并提示计时器进行减计数。 (2)数据装载器ZZQ模块的功能是根据KZQ发出的控制信号选择定时时间、测试数据或烹调完成信息的装入。当LD_DONE为高电平时,输出烹调完毕的状态信息数据;LD_CLK为高电平时,输出设置的烹饪时间数据;LD_8888为高电平时,输出测试数据。输出信号LOAD用于提示JSQ将处于数据装入状态。(3)计时

5、器JSQ模块的功能是负责烹调过程中的时间递减计数,并提供烹调完成时的状态信号提供KZQ产生烹调完成信号。LOAD为高电平时完成装入功能,COOK为高电平时执行逆计数功能。输入DONE指示烹调完成。MIN_H、MIN_L、SEC_H、和SEC_L为完成烹调所剩的时间以及测试状态信息“8888”、烹调完毕的状态信息“donE”的BCD码信息。(4)seltime 模块驱动8位八段共阴扫描数码管的片选驱动信号输出模块的功能功能是产生驱动和片选信号,使各数码管完成其相应功能,即帮助JSQ端的4个七段数码管在相应的试验箱上显示。(5)deled 模块驱动八段字形译码输出模块功能:信号输入后,模块驱动八段

6、字形译码输出,LED6.0分别接八段共阴极数码管7个接口,既有字形输出。(6)decode3_8模块功能当sel=000时,选择q0;当sel=001时,选择q1;当sel=010时,选择q2。依次类推当num=0000(0)时,让数码显示管的abcdefg=1111110(即显示数字0);当num=0001时,让数码显示管的abcdefg=0110000(即显示数字1);当num=0010(即显示数字2)时,让数码显示管的abcdefg=1101101(即显示数字3),依次类推。(7)div_clk1分频器模块分成我们所需频率(8)yzdl模块预置数据则确认键yes,预置完毕后确认键ok,

7、输出为data15.0,该模块可通过计数、取数、寄存、移位等操作完成预置数据输入工作三 选择器件1.数码管2.EP1C12Q240C8芯片3.计算机4.试验箱四功能模块1.状态控制器KZQ模块状态控制器KZQ的功能是控制微波炉工作过程中的状态转换,并发出有关控制信息,因此我们可用一个状态机来实现它。经过对微波炉工作过程中的状态转换条件及输出信号进行分析,我们可得到其状态转换图如图3所示,其输入、输出端口如图所示。 KZQ模块 状态转换图状态控制器KZQ的VHDL源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARIT

8、H.ALL;ENTITY KZQ IS PORT(RESET,SET_T,START,TEST,CLK,DONE:IN STD_LOGIC; COOK,LD_8888,LD_CLK,LD_DONE:OUT STD_LOGIC);END ENTITY KZQ;ARCHITECTURE ART OF KZQ IS TYPE STATE_TYPE IS(IDLE,LAMP_TEST,SET_CLOCK,TIMER,DONE_MSG); SIGNAL NXT_STATE,CURR_STATE:STATE_TYPE; BEGIN PROCESS(CLK,RESET)IS BEGINIF RESET=1

9、THEN CURR_STATE=IDLE; ELSIF CLKEVENT AND CLK=1 THEN CURR_STATE=NXT_STATE; END IF;END PROCESS;PROCESS(CLK,CURR_STATE,SET_T,START,TEST,DONE)IS BEGIN NXT_STATE=IDLE; -DEFAULT NEX STATE IS IDLE LD_8888=0; LD_DONE=0; LD_CLK=0; COOKLD_8888=1;COOKLD_CLK=1;COOKLD_DONE=0;COOK IF(TEST=1)THEN NXT_STATE=LAMP_TE

10、ST; LD_8888=1; ELSIF SET_T=1THEN NXT_STATE=SET_CLOCK; LD_CLK=1; ELSIF (START=1)AND(DONE=0)THEN NXT_STATE=TIMER; COOK IF DONE=1THEN NXT_STATE=DONE_MSG; LD_DONE=1; ELSE NXT_STATE=TIMER; COOK=1; END IF; END CASE; END PROCESS;END ARCHITECTURE ART; KZQ模块KZQ模块仿真图2数据装载器ZZQ模块的设计ZZQ的输入、输出端口如5所示,根据其应完成的逻辑功能,它

11、本质上就是一个三选一数据选择器。本设计采用一个进程来完成,但由于三个被选择的数据只有一个来自输入端口,因此另两个被选择的数据则通过在进程的说明部分定义两个常数来产生。由于用于显示“8888”的常数ALL-8需分解成4个8,分别经过四个47译码器译码后才是真正的显示驱动信息编码,因此该常数应是4个分段的是4位BCD码,故应设为“1000100010001000”。 同理,显示“donE”的常数DONE可设为“1010101111001101”。数据装载器ZZQ的VHDL源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_A

12、RITH.ALL;ENTITY ZZQ IS PORT(DATA1:IN STD_LOGIC_VECTOR(15 DOWNTO 0); LD_8888:IN STD_LOGIC; LD_CLK:IN STD_LOGIC; LD_DONE:IN STD_LOGIC; DATA2:OUT STD_LOGIC_VECTOR(15 DOWNTO 0); LOAD:OUT STD_LOGIC);END ENTITY ZZQ;ARCHITECTURE ART OF ZZQ IS BEGIN PROCESS(DATA1,LD_8888,LD_CLK,LD_DONE)IS CONSTANT ALL_8:STD_LOGIC_VECTOR(15 DOWNTO 0):=1000100010001000; CONSTANT DONE:STD_LOGIC_VECTOR(15 DOWNTO 0):=1010101111001101; VARIABLE TEMP:STD_LOGIC_VECTOR(2 DOWNTO 0); BEGIN LOADDATA2DATA2DATA2

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

当前位置:首页 > 建筑/环境 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号