微波炉控制器设计.docx

上传人:p** 文档编号:721476 上传时间:2024-01-23 格式:DOCX 页数:19 大小:293.52KB
下载 相关 举报
微波炉控制器设计.docx_第1页
第1页 / 共19页
微波炉控制器设计.docx_第2页
第2页 / 共19页
微波炉控制器设计.docx_第3页
第3页 / 共19页
微波炉控制器设计.docx_第4页
第4页 / 共19页
微波炉控制器设计.docx_第5页
第5页 / 共19页
微波炉控制器设计.docx_第6页
第6页 / 共19页
微波炉控制器设计.docx_第7页
第7页 / 共19页
微波炉控制器设计.docx_第8页
第8页 / 共19页
微波炉控制器设计.docx_第9页
第9页 / 共19页
微波炉控制器设计.docx_第10页
第10页 / 共19页
亲,该文档总共19页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《微波炉控制器设计.docx》由会员分享,可在线阅读,更多相关《微波炉控制器设计.docx(19页珍藏版)》请在第壹文秘上搜索。

1、定时器集成电路的设计一、根本功能1、复位开关:reset2、启动开关:start_cook3、烹调时间设置:setjime4、烹调时间显示:min;sec5、七段码测试:test6、启动输出:cook二、信号描述T、CLK:外部时钟。std_logic;2、 RESET:复位信号,“1有效。StLbgic;3、 TEST:测试信号1”有效。StdJogic;4、SETTIME:时间设置1有效。std_logic;5、 DATA15.0:4*4BCD数码设置(59分59秒)std_logic_vector(15.0);6、 STRTCOOK:烹调开始“1”有效。StdJogic;1、COOk:烹

2、调进行信号,接继电器“1有效。StdJogic;2、min_msb:3、minsb:4、sec_msb:5、sejlsb:std_logic_vector(1to7);std_logic_vector(1to7);std_logic_vector(1to7);std_logic_vector(1to7);三、设计分析1、控制状态机:工作状态状态转换。2、数据装入电路:根据控制信号选择定时时间、测试数据或完成信号的装入。3、定时器电路:负责完成烹调过程中的时间递减计数和数据译码供应七段数码显示,同时还可以提供烹调完成时间的状态信号供控制状态机产生完成信号。microwave_timer四、模块设

3、计CL. KDONE TE STSE TeTXMERE SE TTfRT.COOKCUK一COOKDONECOOKTE STLORD.8888TLORD.8888SET.TXMEI.OAD_CI_KTL.OAD.CL.KRE SE TL.OAD_DONE-XLOAD_DONESTaT一CoUZTROLSTRRTeOOOK1、控制状态机设计输入输出信号ENTITYstate_countrolISPORT(elk,done,resetJest,set_time,start_cook:INstd_logic;cook,load_8888,load_clk,load_done:OUTstd_logic

4、);END;根据输入信号和自身当时的状态完成状态转换和输出相应的信号。Cook:指示烹调进行中,同时提示计时器减数。load_8888:指示LoADER装入完成测试数据。load_clk:指示LoADER装入设置烹调时间数据。load.done:指示LoADER装入完成信息数据。 状态分析idle:复位状态。IamPjeSt:数码管测试状态。Sejclock:烹调时间设置状态。Timer:减数定时状态。done_msg:完成信息显示状态。 程序设计libraryIEEE;useIEEE.std_logic_1164.aIl;ENTITYstate_countrolISPORT(elk,done

5、,reset,test,set_time,start_cook:INstd_logic;cook,load_8888,load_clk,load_done:OUTstd_logic);END;ARCHITECTUREaOFstate_countrolISTYPESTATE_TYPEIS(idle,lamp_test,set_clock,timer,done_msg);SIGNALnext_state,current_state:STATE_TYPE;BEGINPROCESS(elk,reset)BEGINIFreset=TTHENcurrent_state=idle;ELSIF(clkEVEN

6、TANDelk=)THENcurrent_state=next_state;endif;endPROCESS;PROCESS(current_state,set_time,start_cook,test,done)beginnext_state=idle;load_8888=,0;load-clk-0;load-done=0,;cookload_8888=1;next-stateload_clk-1,;next-stateload_done=1;next_stateiftest=thennext_state=lamp_test;load_8888=;elsifset_time-thennext

7、_state=set_clock;load-clk=;elsifstart-cook=1anddone=0thennext_state=timer;cookifdone-thennext_state=done_msg;load-done=;elsenext_state=timer;cookL.OAD.CL.KLOADX LORDLORDsDONELORDmDOHELORD.VAUX5. . OJ -KL,ORDmVRLM TRC IS . . ODATAXS.OJIoaCL8888:1”时,输出测试数据。load_clk:输出设置烹调时间数据。load_done:T输出完成信息数据。load:

8、指示TlMER处于数据装入状态并装入有效数据。程序设计1.ibraryIEEE;uselEEE.stdOgic164.all;useIEEE.std_logic_arith.all;ENTITYloaderISPORT(load_8888,load_clk,load_done:INstd_logic;data:INstdOgijVeCtOr(15downto0);load:OUTstdOgic;load_val:OUTstdOgijVeCtOr(15downto0);END;ARCHITECTUREaOFloaderISBEGINPROCESS(data,load_8888,load_clk,

9、load_done)variabletemp:std_logic_vector(2downto0);BEGINloadload_valload_valIoad_valnull;ENDCASE;ENDPROCESS;ENDa;3、定时电路设计 输入输出信号ENTITYtimerISPORT(clk:INstdOgic;data:INstd_logic_vector(15downtoO);down:INstd_logic;load:INstd_logic;done:outstd_logic;min_msb:outstd_logic_vector(1to7);min_lsb:outstd_logic

10、_vector(1to7);sec_msb:outstd_Iogic_vector(1to7);sec_lsb:outstd_Iogic_vector(1to7);END;定时电路根据输入信号的描述是时序逻辑电路,主要由计数器构成。设计方法采用例化设计法。电路具有装入功能、逆计数功能及数据译码功能。1.oad:ii,f时,完成装入功能。down:“1时,执行逆计数功能。Done:表不宾调完成。min_msbminSbsec_msbsec_lsb:用于驱动七段数码管显示。注意:(1) 需要4个计数器(COImter4),每个计数器宽度为4。(2) 分、秒在个位“10”进制,在十位上“6进制。如“

11、59分:59秒。timer程序设计1.ibraryIEEE;useIEEE.std_logic_1164.aIl;useIEEE.std_logic_arith.all;useIEEE.std_logic_unsigned.aIl;ENTITYtimerISPORT(clk:INstdOgic;data:INstd_logic_vector(15downtoO);down:INstd_logic;load:INstd_logic;done:outstd_logic;min_msb:outstd_logic_vector(1to7);min_lsb:outstd_logic_vector(1to

12、7);sec_msb:outstd_logic_vector(1to7);sec_lsb:outstd_Iogic_vector(1to7);END;ARCHITECTUREaaOFtimerIScomponentcounter4PORT(clk:INstdogic;cnt_f_5:INStdJogic;data_in:INstd_logic_vector(3downto0);down:INStdJogic;load:INstd_logic;zero:OUTstdOgic;segs:OUTstd_logic_vector(1to7);endcomponent;signalzer,zerl,zer2,zer3:StdJogic;signaldownO,downl,down2,down3:std_logic;signaldata,data1,data2,data3:std_logic_vector(3downtoO);signalis_five,is_nine:std_logic;beginis-five=1,;is-nine=O;data3=data(15downto12);data2=data(11downto8);datal=data(7downto4);dat

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

当前位置:首页 > 论文 > 毕业论文

copyright@ 2008-2023 1wenmi网站版权所有

经营许可证编号:宁ICP备2022001189号-1

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!