EDA课程设计基于VHDL微波炉课程设计 韦燕霞.docx

上传人:李司机 文档编号:7215194 上传时间:2024-06-29 格式:DOCX 页数:39 大小:127.77KB
返回 下载 相关 举报
EDA课程设计基于VHDL微波炉课程设计 韦燕霞.docx_第1页
第1页 / 共39页
EDA课程设计基于VHDL微波炉课程设计 韦燕霞.docx_第2页
第2页 / 共39页
EDA课程设计基于VHDL微波炉课程设计 韦燕霞.docx_第3页
第3页 / 共39页
EDA课程设计基于VHDL微波炉课程设计 韦燕霞.docx_第4页
第4页 / 共39页
EDA课程设计基于VHDL微波炉课程设计 韦燕霞.docx_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《EDA课程设计基于VHDL微波炉课程设计 韦燕霞.docx》由会员分享,可在线阅读,更多相关《EDA课程设计基于VHDL微波炉课程设计 韦燕霞.docx(39页珍藏版)》请在三一办公上搜索。

1、广西工学院课程设计论文课题名称微波:炉限制器的FPGA实现系别理学院专业电子信息科学及技术班级学号姓名指导老师韦艳指2012年9月M日目录第一章结论错误!未定义书签.第一节课题背景介绍1其次章电子设计自动化概述2第一节VHD1.简介2第三章总体设计5第一节课题的主要内容及基本要求5其次节设计思路5第三节设计方案6第四章模块分析8第一节状态限制电路模块9其次节数据装载电路模块10第三节计时器模块11第五章程序设计及仿真14第一节程序简要说明12其次节仿真时序图13第六章硬件调试13总结16致谢17参考文献18附录原理图19附录二源程序20摘要该设计用VHD1.语言在MAX+P1.USII软件平台

2、上通过编译、模拟仿真,完成了微波炉限制功能,实现了微波炉的测试、时间设置、京调计时、完成提示等设计,并对时钟分频作JZ肯定的探讨。此设计采纳了现场可编程逻辑器件FPGA的ASIC设计,由限制模块、装载模块、计时模块和显示模块四大模块组成,而且它可以将全部器件集成在一块芯片上,体积大大减小,且外围电路很简洁,易于实现。关键词:FPGA;VHD1.;微波炉限制器;仿真DesignofmicrowaveovencontrollerbasedonFPGAAbstractVHD1.languageusedintheMAX+P1.US!/softwareplatformthroughthecompi1er

3、,simu1ation,theachievementOfamicrowaveoventesting,timesettings,cookingtime,tips,etc.tcompletethedesignofthemicrowaveovencontroller,andthedividethelinefrequencymadeacertainstudy.ThemicrowaveovencontrollerUSeSthedesignoffieldProgrammableIogicdeviceFPGA-ASTCdesign,thedesignofthismicrowaveovencontrolIer

4、partofthecontrol1er,loading,timinganddisplayofthefourgreacantestmoldspiece.Anditbeintegratedintoa11devicesonasinglechip,great1yreducingthevo1umeandtheexterna1circuitisverysimple,easytOimp1ement.Keywords:FPGA;VHD1.microwaveovencontroller;simulation第一章绪论第一节课题背景介绍一、产品背景介绍Percyl.Spencer在1946年构想出微波炉的概念,在

5、195()年取得专利。微波炉的运作机制为微波在水中能产生摩擦热的原理。早期微波炉尺码浩大,重量超过300公斤和高度超过1.5米,所以主要在大型餐厅和食物市场运用。第一部家用微波炉是在1965年由Raytheon集团生产。二、国内产品发呈现状现在,中国已成为全球最大的微波炉生产基地,据估计,中国微波炉年产量已达2000万台左右,从2019年中国市场的需求量来看,约在700万台左右。中国微波炉市场经过前几年的洗牌,已由前几年的300多家削减至目前的100多家,其中在市场上可统计的仅30多家。洋品牌在早期的微波炉市场份额,几乎占据了绝大部分的市场。但初期由于微波炉市场属于导入期,价格高,消费者接受的

6、少,自1996年以后,惠而浦、松卜等大部分都退出了中国市场,主要以出口为主。2019年后,外资品牌中以韩国品牌1.G、三星表现较为突出,渐渐跨入第2、第3名,微波炉第一品牌为格兰仕。2000年,美的介入,快速崛起成为行业第三,三星也渐渐退出市场。经过6()年的发展,微波炉已经成为人们日用生活中的必不行少的厨房电器,大大降低了家庭妇女的工作量和工作强度。据统计,微波炉目前在日本、美国、西欧等发达国家地区的普及率高达98乐在中国城镇的普及率也已近90机这个数字甚至超过了彩电和洗衣机的普及程度。三、产品发展趋势随着人们生活水平的提高和信息化的发展,家用电器层出不穷,各种功能也越来越完善,其中微波炉是

7、现代家庭的必备产品,它的质量和性能的凹凸,将会极大的影响人们的生活水平和质量。为此,设计一个高质量的微波炉限制系统是特别有必要的。微波炉起先进入越来越多的家庭,他给人们的生活带来了极大的便利。微波炉由2450MHZ的超高频来加热食物。他省时、省电、便利和卫生,作为现代的烹饪工具,微波炉的限制器体现着他的重要性能指标。目前大部分微波炉限制器采纳单片机进行设计,带南路比较困难性能不够敏捷。本文采纳先进的El)A技术,利用QuartusII工作平台和VIlD1.设计语言,设计了一种新型的微波炉限制器芯片,该芯片具有系统复位、时间设定和烹饪计时的功能,用一片FPGA芯片实现,所以能设计出一款便利平安操

8、作的微波炉是特别有必要的。其次章电子设计自动化概述第一节VHD1.简介随着V1.SI、ED(ElectronicDesignAutomation)工具的快速发展,用户系统的设计从单纯的ASlC(ApplicationSpecificIntegratedCirCUit)设计向着系统单片化SOC(SystemOnaChip)设计的方向发展。同时网络技术的发展,共享IP学问产权的开放式系统设计成为新模式,芯片工艺物理设计及系统设计相分别,运用户系统设计人员可干脆从事芯片设计。多种技术的融合,系统的功能复合化程度越来越高;对系统设计方法学和工具的要求更高;系统设计日趋软件硬化、硬件软化,并使两者得到了

9、有机的融合,形成了更为强大的ESD(ElectronicSystemDesignAutomation。VHD1.(VeryHighSpeedIntegratedCircuitHardwareDescription1.anguage)是IEEE(InstituteofElectricalandElectronicsEngineers)标准的硬件描述语言,是现代电子系统设计的苜选硬件设计计算机语言。本篇介绍VHD1.的语法基础、用VHD1.进行系统设计的基本方法、以及VHD1.的设计实例等。从宏观的角度看,VHD1.的语法构成了程序的各组成部分;微观上看VHD1.的语法是各种语句的运用细微环节。本

10、章在VHD1.的特性之后,从这两个角度简要介绍VHD1.的语法基础。硬件描述语言HD1.(HardwareDescription1.anguage)诞生于1962年。HD1.是用形式化的方法描述数字电路和设计数字逻辑系统的语言。主要用于描述离散电子系统的结构和行为。及SD1.(SoftwareDescription1.anguage)相像,经验了从机器码(晶体管和焊接)、汇编(网表)、到高级语言(HD1.)的过程。20世纪80年头美国国防部开发VeryHighSpeedIntegratedCircuitVHSIC.用于描述集成电路的结构和功能。此后,硬件描述语言向标准化方向发展,1987年成为

11、IEEEStandard1076,称为VHD1.语言。它也是美国国防部标准(MlI-STi)-154Do1993年该标准增修为IEEEl164标准。1996年,再次加入电路合成的标准程序和规格,成为IEEEIo76.3标准。1995年VeriIogHD1.也成为IEEE标准。VHD1.及VerilogHD1.起成为业界主选的硬件描述语言。一、VHD1.的特点应用VHD1.进行系统设计,有以下几方面的特点。(一)功能强大VHD1.具有功能强大的语言结构。它可以用明确的代码描述困难的限制逻辑设计。并且具有多层次的设计描述功能,支持设计库和可重复运用的元件生成。VHD1.是一种设计、仿真和综合的标准

12、硬件描述语言。(二)可移植性VHD1.语言是一个标准语言,其设计描述可以为不同的EDA工具支持。它可以从一个仿真工具移植到另一个仿真工具,从一个综合工具移植到另一个综合工具,从一个工作平台移植到另一个工作平台。此外,通过更换库再重新综合很简洁移植为ASIC设计。(三)独立性VHD1.的硬件描述及具体的工艺技术和硬件结构无关。设计者可以不懂硬件的结构,也不必管最终设计实现的目标器件是什么,而进行独立的设计。程序设计的硬件目标器件有广袤的选择范围,可以是各系列的CP1.D、FPGA及各种门阵列器件。(四)可操作性由于VHD1.具有类属描述语句和子程序调用等功能,对于已完成的设计,在不变更源程序的条

13、件卜.,只需变更端口类属参量或函数,就能轻易地变更设计的规模和结构。(五)敏捷性VHD1.最初是作为种仿真标准格式出现的,有着丰富的仿真语句和库函数。使其在任何大系统的设计中,随时可对设计进行仿真模拟。所以,即使在远离门级的高层次(即使设计尚未完成时),设计者就能够对整个工程设计的结构和功能的可行性进行查验,并做出决策。二、VHD1.的设计步骤采纳VHD1.的系统设计,一般有以下6个步骤。(1)要求的功能模块划分:(2)VHD1.的设计描述(设计输入);(3)代码仿真模拟(前仿真):(4)计综合、优化和布局布线;(5)布局布线后的仿真模拟(后仿真):(6)设计的实现(下载到目标器件)。三、VH

14、D1.的设计简述VHD1.描述数字电路系统设计的行为、功能、输入和输出。它在语法上及现代编程语言相像,但包含了很多及硬件有特殊关系的结构。VHD1.将一个设计称为一个实体EnIity(元件、电路或者系统),并且将它分成外部的可见部分(实体名、连接)和内部的隐藏部分(实体算法、实现)。当定义了一个设计的实体之后,其他实体可以利用该实体,也可以开发个实体库。所以,内部和外部的概念对系统设计的VHD1.是特别重要的。外部的实体名或连接由实体声明Entity来描述。而内部的实体和法或实现则由结构体ArChiteCtUre来描述。结构体可以包含相连的多个进程process或者组建component等其他

15、并行结构。须要说明的是,它们在硬件中都是并行运行的。VHi)1.程序设计的基本结构如下:表1VHD1.程序设计的基本结构个实体可以对应个或者多个结构体。结构体可以包含个或者多个进程或者组件。四、VHD1.的描述风格设计实体的逻辑功能由VHD1.的结构体具体描述。用户可以运用不同程度的语句类型和抽象方式来描述不同程度的设计。例如系统级的、板级的、芯片级的或者模块级的设计。对于相同的逻辑行为可以有不同的语句表达方式。在VHD1.结构体中这种不同的描述方式或者说建模方法,通常可归纳为行为(BehaViOral)级描述、数据流(Dataflow)级描述和结构(Structural)级描述。(一)行为级

16、描述通过一组串行的VHD1.进程,反映设计的功能和算法,而没有干脆指明或涉及实现这些行为的硬件结构,包括硬件特性、连线方式和逻辑行为方式。行为级描述主要指依次语句描述,即通常是指含有进程的非结构化的逻辑描述。(二)数据流级描述将数据看成从设计的输入端流到输出端,反映从输入数据到输出数据所发生的马上变换。数据流描述主要是指非结构化的并行语句描述;是建立在用并行信号赋值语句描述基础上的。数据流描述方式可比较直观地表达底层逻辑行为。(三)结构级描述将设计看成多个功能块的相互连接,并且主要通过功能块的组件例化来表示。结构级描述方式采纳了结构化、模块化的设计思想,适合于大型困难性设计。VHD1.通过这三

17、种描述方法或称描述风格,从不同的侧面描述结构体的行为方式。其中,行为描述的抽象程度最高,最能体现VHD1.描述高层次结构和系统的实力。正是VH)1.语言的行为描述实力使自顶向下的设计方式成为可能。在实际应用中,为了能兼顾整个设计的功能、资源和性能几方面的因素,通常将以上三种描述方式混合运用。第三章总体设计第一节课题的主要内容及基本要求要求采纳EDA技术设计一个微波炉限制器,可完成以下功能:(1)可限制烹调的开关;(2)可设置点调时间,(假设系统最长的烹调时间为59分59秒);(3)可显示烹调的剩余时间。其次节设计思路现代数字系统设计一般采纳自顶向下的方法,其过程大致可分为三个大的步骤:系统调研

18、;模块的划分;模块的实现。承接一个数字系统设计的课题后,一般不要急于动手设计,而应对课题作充分的分析和调研,然后确定初步的方案。分析:课题的任务、要求、原理和运用条件等。调研:课题现状并和相同或相近课题进行比较。现代数字系统设计一般是将其划分为限制器和受控电路两大部分,限制器由ASM图或MI)S图确定,而受控电路则运用各种通用模块实现。下面分析微波炉定时器的工作过程及基本要求:上电后,系统处于复位状态。工作时首先进行烹调时间设置,并运用数码管显示时间信息,设要求最长的烹调时间为59分59秒,时间设置完毕后系统自动回到初始状态;按起先烹调按键进入烹调状态,时间显示数码管按每秒减1的倒计时方式显示

19、剩余京调时间:烹调结束后,系统回到复位状态。系统要求分析及初步方案的确定:依据系统的基本要求,着重应考虑如下问题:(1)计时电路的设计:芯片内部产生和外部供应。本例中由外部时钟电路以BCD码的形式供应。(2)时间设置出错及工作过程的取消等状况的处理:设置一个复位按键。(3)数码管状态的检测:设置数码管检测按键,按动该按键后,数码管能够显示“8888”的信息。(4)时间显示电路:采纳4位7段显示数码管显示,并由芯片干脆驱动。(5)微波管的驱动:设置一个输出驱动限制烹调状态的继电器即可。第三节设计方案微波炉限制器系统可由以下三个电路模块组成:状态限制电路,其功能是限制微波炉工作过程中的状态转换,并

20、发出相关限制信号:数据装载电路,其功能是依据限制信号选择定时时间,测试数据或计时完成信息的载入;计时器电路,其功能是对时钟进行减法计数,供应烹调完成时的状态信号。微波炉限制器的系统框图如图1所示。其中,C1.K为时钟输入信号,时钟上升沿敏感;RESET为复位信号,高电平有效时系统复位清零;TEST为数码显示管测试信号,高电平有效系统显示8888:SETjr高电平有效时允许设置京饪时间;KEY为定时时间输入信号,用于设置烹饪时间的长短,其高到低分别表示时间分、秒的卜位、个位;START为烹调起先信号,高电平有效时起先烹调;输出信号C(K)K指示微波炉状态,高电平常表示烹调进行时:SECO、SEC

21、1、MlN0、MlNl分别表示秒个位、秒十位、分个位、分十位。KEY3.0COOKRESET1.ED21.0SET_TSEC03,0STARTSEC130ESTMIN03.0图1微波炉限制器系统框图微波炉限制器的工作流程图如图2所示。C1.KMIN13.0J首先,对系统进行复位清零,使其各电路模块均处于初始状态;当烹饪时间设置信号SET_T有效时,读入时间信号KEY3.0的取值,此时系统显示设置的时间信息,再按卜SETT确定设置时间完成。按下起先键START,系统进入烹调状态,COOK信号变为高电平,时钟计数器起先减法计数,MINI.MINO.SECkSECO显示剩余烹调时间。烹调结束,系统复

22、原初始状态。当系统处于复位清零状态时,按下显像管测试按钮TEST,将对显像管是否正常工作进行测试,正常工作时,显像管输出全8o第四章模块分析第一节状态限制电路模块状态限制器的功能依据输入信号和自身当时所处的状态完成状态的转换和输出相应的限制信号,其模块框图如图3所示。其中,输出信号1.1.DoNE指示数据装载电路载入的烹调结束的状态信息的显示的驱动信息数据:1.D/1.K显示数据装载电路的设置的时间数据;1.1.TEST指示数据装载电路载入的用于测试的数据,以显示驱动信息数据:COOK指示烹饪的状态,并提示计时器进行减法计算;KEY为定时时间输入信号,用于设置烹饪时间的长短,其高到低分别表示时

23、间分、秒的卜位、个位。当1.D_DONE有效时,输出烹调结束数据。当1.DI1.K有效时,输出烹调的设置时间数据。当1.DTEST有效时,输出数码管测试数据一一包括6个输入信号和4个输出信号。图3状态限制电路模块框图依据微波炉工作流程的描述,分析状态转换条件及输出信号,可以得到如图4所示的微波炉限制器的状态转换图。氏1qF太【旧生|现1、中太图中,当RESET信号有效时,系统复位清零:输入/输出对应烹调时间设置、显示译码测试、完成信号显示和减法计数定时四种状态进行相应的转换。其次节数据装载电路模块数据装载电路的本质是一个三选一多路选择器,其模块框图如图5所示。图5数据装载电路模块框图当1.D_

24、DONE有效时,输出烹调结束的信息数据数据。当I-C1.K有效时,输出烹调的设置时间数据。当1.TEST有效时,愉出数码管测试数据。1.OAD信号为I.D_I)ONE时DATEOUT输出KEY有效指示。第三节计时器模块电路计时模块可以由十进制减法计数器和六进制减法计数器级联组成,其中,两个十进制的减法计数器用于分、秒的个位减法计数,两个六进制的减法计数器用于分、秒的十位减法计数。由六进制计数器和十进制计数器级联构成的计时模块原理图如图6所示。图6计时器模块原理图计时器模块的框图如图7所示。图7计时器模块框图1.oAD有效时完成装入功能,COOK(EN)有效时执行减计数;C1.R由RESET发出

25、信号,清除装载已存的数据:1)(NE返回给限制器,MIN和SEC显示所剩时间和测试状态信息、点调结束状态信息等。第五章程序设计及仿真第一节程序简要说明程序分为多个模块进行编写,这样既符合编程模块化的要求也便利编写和阅读。依据以上功能和模块分析,可以将程序划分几个模块:状态限制电路模块controlIer数据装载电路模块loader、计时器模块counter,其中计时器模块又可以划分2个模块:十进制功能编写CntlO,6进制功能编写Cnt6,一起完成计时功能。本次程序编写调试软件平台是QUartUSII4.1。具体的源程序可查看附录二。其次节仿真时序图下面我们分别考察微波炉总的功能、计时器模块和

26、数据装载电路模块的正确性(其他模块的仿真略)。、微波炉总的功能仿真微波炉总的功能仿真波形图如卜;图8微波炉总的功能仿真波形图图中,C1.K是输入脉冲,RESET复位,SETJT设置时间,KEY按键输入,START起先计时,COOK正在烹饪,MlN和SEC是时间显示,1.ED21是显示设置时间信号,1.ED0是显示烹饪时间信号。从仿真波形中可看出,按下RESET,全部信号复位为零,按下TEST,显像管显示8888,按下SET_T后KEY输入有效,MIN和SEC显示输入值,KEY输入完成并按下SETT,表示设置时间完成,再按下START,起先烹饪并进行减法计数,MlN和SEC显示剩余时间,此时输出

27、C(X)K变为高电平。二、计时器模块仿真波形计时器模块仿真波形如卜图9计时器模块仿真波形图图中,1.OAD为高电平常读取信号DATA的值,当CoOK信号为高电平常,对DT的值进行减法计数,并在每个时钟周期都输出减法计数器的当前值。仿真结果及预先设定的电路功能相吻合。第六章硬件调试经过软件平台上的编译仿真,最终可以在硬件上进行调试。本次试验所用的硬件平台是ACEXlK系列的EPlK30TC144-3在开发板上用到的第3个硬件模块:4个八段数码管、3个1.ED、8个按键。以下是模块3的接线盒引脚安排:图11接线盒引脚安排本次试验为了视察操作便利,数码管用了第8、1、5、4个显像管:1.ED分别用了

28、D8、D7、D1;按键则8个全部运用。表2对应的键位功能键8RESET1)81.EI)21键7SEUD71.E1)2O键6TESTDlCOOK键5START显像管8MINI键4KEY3显像管7MlNO键3KEY2显像管5SECl键2KEY1显像管4SECO键】KEYOC1.OCKOC1.K表3具体的引脚安排安排好引脚,下载程序到硬件之后就可以调试了。首先按下TEST,显示8888则测试模式运行正常;按下SET_T设置时间,1.ED1亮,再输入所学要的时间,再次按下SET_T关闭设置时间,1.ED灭;按下START,起先计时,1.ED0、COOK亮,当时间回到Oooo时,灯全灭,完成试验。总结本

29、次课程设计是微波炉限制器的FPGA实现,微波炉限制器系统可由三个电路模块组成:状态限制电路模块controller.数据装载电路模块IOader、计时器模块COUnter。在QUARTUSll上进行程序的编程、仿真,在编译仿真通过后,最终在试验箱调试胜利,实现设计任务巾所要求的指标。本次课程设计从收集资料到完成论文共历时2个星期。在课程设计期间,在温习旧学问的同时,还学习了很多新的东西,把他们运用到这次设计中,加深了对之前学到的学问的理解。通过此次设计,我收获了很多关于EDA技术及VHD1.的学问。特殊是QUARTUSII软件的应用,从安装到运用,在到对在仿真时遇到问题的解决,明白了理论是完备

30、的,而实际仿真是会有延时、毛刺等问题,所以在仿真是如何设置时钟也是值得好好考虑的。同时此次设计使我的动手实力提高了很多,能够让我在设计电路时,自己来解决遇到的问题,学会了怎样去分析电路,怎样把所学到的学问和实际相起来。但是由丁在很多方面都没有阅历,在设计中遇到了很多困难,今后将努力克服自己在完成课程设计过程中暴露出来的不足之处。致谢本次课程设计是在广西工学院信息及计算科学系的韦艳霞老师的悉心栽培和细心指导卜完成的,在课程设计论文完成之际,向韦艳霞老师表示感谢!在设计的工程中,书老师蜴予了我细心的指导和帮助。由于之前都有仔细参及了前两次的课程设计,前两次课程设计的指导老师刘青正老师也同样赐予了细

31、心的指导,让我熟识课程设计的过程,为这次课程设计能顺当进行供应了基础,所以在此我也谢谢刘老师。在此我还要感谢我的搭档,我的搭档是一个很细心的人,刚好弥补了我在细心这方面的不足,使我们能很快的顺当完成这次课程设计。由于本人水平有限,加之时间仓促,设计中疏漏和错误之处在所难免,希望老师赐予谅解,同时也希望老师加以指责和指正,使我在以后的学习和工作中取得更大的成果。参考文献1 .潘松,黄继业.EDA技术好用教程(其次版)Dl.北京:北京航空航天高校出版社,19902 .刘欲晓,方强,黄宛宁等.EDA技术及VHD1.电路开发应用实践M.北京:电子工业出版社,20093 .谭会生,瞿遂春等.EDA技术综

32、合应用实例及分析M.西安:西安电子科技高校出版社.2019.附录一原理图附录二源程序-状态限制电路的VHD1.实现如下:1.IBRARYIEEE;USEIEEE.STD_1.OG1C_1164.A1.1.;USEIEEE.STD1.OGICONSIGNED.1.1.;USEIEEE.STD1.OGIC_ARITH.A1.1.;ENTITYControllorISPORT(RESET:INSTD_1.OGIC;号KEY:INSTD_1.0GIC_VECT0R(3DOWNTOSET_T:INSTI)JX)GIC;信号STARTJNSTI)JX)G1C;信号TEST:INSTI)J.OG1C;试信号

33、C1.K:INSTD_1.OGIC;-复位信;一输入时间一时间设置一起先烹调一显示电路测-时钟脉冲-完成信号C(X)KiOUTSTI)JX)GIC:-指示烹调状态,提示计时DONEiINSTD1.OGIC;器起先计数1.D_TEST:OUTSTD_1.OGIC;一指示数据装载电路载入的用于测试的数据U1.C1.K:0UTSTDjOGIC;一指示数据装载电路载入设置时间数据DATA:OUTSTD_1.0GIC_VECT0R(15DOWNTO0)16位数据1.EDSETT:OUTSTD1.OGIC;-1.ED显示状态1.D_DONE:OUTSTD_1.OGIC-1.ED显示完成ENDcontrol

34、lor;ARCHITECTURErtlOFcontrollorISTYPESTATESIS(II)1.E,1.AMPJEST,SET_C1.OCK,TIMER,DONE_MSG);SIGNA1.NXT,CUR:STATES;一2个信号:下一状态、当前状态S1GNA1.DATATMP:STI),IX)GIC_VECTOR(15DOWNTOO);SIGNA1.SET_TO:STD.1.OGIC;一设置时间信号BEGINPROCESS(C1.K,RESET)一时钟和复位的进程BEGINIFRESET=*1,THEN一复位时将ID1.E(显示OooO)赐予当前状态CUR=ID1.E;EI.SIECi.

35、K,EVHNTANDC1.K=THENCURTHEN码管都将显示0000一复位和输入的进程一可以让输入4位数字显示一复位时不论任何状态数DATTMP0);E1.SEIFKEY(3),EVENTANDKEY(3)=1THEN-设置分的H立IFl)ATATMP(15DOWNTO12)=0101THEN5自动跳转到ol)ATATMP(15IM)WNT012)=0000”;E1.SEl)ATATMP(15DOWNTO12)THEN置分的个位IFDATATMPdlDOWNTO8)=*1001*THEN9自动跳转到0DATATMPdlDOWNTO8)=0000”;E1.SEDATATMPdlDOWNTO8

36、)=DATATMPdlDOWNTO8)+1;ENDIF;一否则自动加1ENDIF;IFKKY(I)jEVENTANDKEY(I)=1THEN-设置秒的H立IFDATATMP(7DOWNTO4)=0101THEN5自动跳转到0DATATMP(7DOWNTO4)=0000”;E1.SEDATATMP(7DOWMO4)=DATATMP(7DOWNTO4)+1;ENDIF;一否则自动加1ENDIF;IFKEY(O)tEVENTANDKEY(0)=TTHEN一设置秒的个位IFDATATMP(3DOWNTO0)=1001THEN9自动跳转到ODATATMP(3DOWNTOO)=0000;E1.SEDATA

37、TMP(3DOWNTOO)=DATATMP(3DOWNTOO)+1;ENDIF;ENDIF;否则自动加1ENDIF;DATATHEN一复位时设置时间变为低电平SET_TO=0;E1.SIFSETEVENTANDSET_T=,THEN一按下SET_T键时SETJrO=NOTSET_TO;SET_T非它前之状态ENDIF;IFSET_TO=,THEN1.ED_SET_T=1;-赐予SET_T持续电平E1.SE1.ED_SET_T=,0,;一赐予SET_T持续电平ENDIF;ENDPROCESS;PROCESS(C1.K,CUR,SETT,START,TEST,DONE)ISBEGINNXT=ID1

38、.E;1.D.TEST三,0,;1.D-DONE=O,;1.D_C1.K=0,;COOK;CASECURISWHEN1.AMPTEST=1.DJrEST=1;COoK1.DC1.K=1,;C()()K一完成信息显示状态1.DDONE=0,;COOK三,0,;WHBNID1.E=)一初始状态定义IFTEST=1THENNXT=1.AMPEST;一设置TEST1.DTEST三,;E1.SIFSETjO=TTHEN一设置SET_TNXT=SETC1.OCK;1.D-C1.K三,;E1.SIFSTART=ANDDONE=0,THEN一设置计时模式NXT=TIMER;C(X)KIFDONE=*THEN一

39、设置计时完成NXT=DONE.MSG;1.D-DONE三,0,;E1.SENXT=TIMER;COOKNl1.1.;ENDCASE;ENDPROCESS;ENDrtl;一数据装载电路的VHD1.实现如下:1.IBRARYIEEE;USEIEEE.STD_1.OGIC1164.A1.1.;USEIEEE.STD1.OGICARITH.A1.1.;ENTITYloaderISPORT(DATAIN:INSTDJOGIjVECToR(15DOWNTO0);一输入16位数据U1.TEST:INSTD.1.OGIC;1.D_C1.K:INSTDJoGIC;1.D_IX)NE:INSTDJOG【C;Dat

40、aoiit:outstdlogicvector(isdowntoo);一输出16位数据1.OAD:OUTSTD_1.OGIC-选择状态ENDloader;ARCHITECTURErtlOFloaderISBEGINPROCESS(DTIN,1.DJEST,1.D_C1.K,1.DDONE)CONSTANTA1.1.S:STD_1.OGICJECTOR(15DOWNTOO)测试信息:=Ilooo”;一显示8888CONSTANTD0NE:STD_1.0GIC_VECT0R(15IM)WNTO0)-烹调完成信息:=Illo1”;VARIAB1.ETEMP:STD1.OGICVECTOR(2DOWN

41、TO0);BEGIN1.OAD一测试DATAOUT一烹调完成DATAOUTDATAOUTNU1.1.;ENDCASE;ENDPROCESS;ENDrtl;一十进制计数器1.IBRARYIEEE;USEIEEE.STDJOGIQJ164.A1.1.;USEIEEE.STD1.OGICUNSIGNED.A1.1.;ENTITYcntlISPORT(C1.KiINSTD1.OGIC;1.OAD,C1.R:INSTD_1.OGIC;-C1.R:清除数据EN:INSTD_1.OGIC;一信号使能DATAIN:INSTD_1.0GIC_VECT0R(3DOWNTO0);一输入的4位数据Q:OUTSTD1.

42、OGICVECTOR(3DOWNTO0);一愉出的4位数据CARRY_OUT:OUTSTD.1.OGIC-数据装载ENDent10;ARCHITECTURErtlOFcntlISSIGNA1.TMP:STD_1.0GIC_VECT0R(3IX)WNTOO);一链接输入输出BEGIN信号PROCESS(C1.K,1.OAD,C1.R,EN)BEGINIFC1.R=THEN数据变为0000TMP=0000”;E1.SIF1.OD三,THEN据TMPTHENIFTMP=0000THENTMP=1001;EI.SETMP=TMP-*1,;ENDIE;ENDIF;ENDIF;一数据的一当C1.R高电平,

43、-否则装载输入的数一上升沿时,执行0跳转到9-自动减1IFTMP=0000THENCARRYOUT=1;COOK=CARRYOUTE1.SECARRYj)UT=O;ENDIF;ENDPROCESS;Q=TMP;ENDrtl;一六进制减法计数器1.IBRARYIEEE;USEIEEE.STD1.OGIC_1164.A1.1.;USEIEEE.STD_1.OGICONSIGNED.A1.1.;ENTITYcnt6ISPORT(C1.K:INSTD,OGIC;1.OAD,C1.R:INSTD_1.OGIC;EN:INSTI)_1.CX;IC:DATAIN:INSTD1.OGICVECTOR(3DOWNTO0);Q:OUTSTD,OGIJVECToR(3DoWNTo0);CARRY_OUT:OUTSTD_1.OGICENDcnt6;ARCHITECTURErtlOFcnt6ISS1GNA1.TMP:STD_1.OGIC_VECTOR(3DOWNTOO);BEGINPROCESS(C1.K,1.OAD,C1.R,EN)BEGINIEC1.R=1THENTMP=0000;E1.SIF1.oAD=1THENTMP=DTAIN;E1.SIFC1.K,EVENTNDC1.K=*O,THEN进制减法IFEN=THENIFTMP=0000THEN到5TMPe=

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号