基干FPGA微波炉定时系统策划.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基干FPGA微波炉定时系统策划

基于FPGA的微波炉定时系统设计   摘 要 介绍基于FPGA的微波炉定时系统的设计思想、开发过程和仿真结果。用EDA技术设计电子系统,具有设计效率高、修改快捷、易于升级和性能稳定等一系列优点 关键字 FPGA;EDA技术;微波炉;定时系统 中图分类号:G642 文献标识码:B 文章编号:1671-489X(2016)20-0047-03 1 前言 以EDA工具为开发环境,以硬件描述语言VHDL为编程语言,以可编程逻辑器件FPGA为设计载体,采用EDA技术自顶向下的电子系统设计,改进传统的电子系统设计观念。这种方法从系统级设计入手,在顶层、方框图级、功能级、门级等分别进行系统描述、功能设计、逻辑设计、电路设计等,由于设计的主要仿真和调试过程是在高层次上完成的,极大地提高了电子系统的设计效率、可靠性和灵活性 下面以微波炉定时系统的设计为例,介绍在MAX+ PLUSⅡ软件环境下进行设计、测试,基于FPGA芯片进行硬件实现的设计过程 2 设计要求 设计一种基于FPGA的微波炉定时系统。要求:系统通电后处于复位状态。首先,系统读入烹调时间,并显示在数码管上;然后按START键,系统进入烹调状态,剩余烹调时间在数码管上实时刷新;烹调结束后,数码管显示烹调结束信息,系统回到复位状态。在烹调过程中,按PAUSE键或RESET键,可使系统暂停工作或使系统回到复位状态;在复位状态下,按TEST键可测试数码管工作是否正常[1] 3 总体设计方案 从系统设计要求出发,自顶向下地将设计细化,使功能具体化、模块化。微波炉定时系统由状态控制器、数据装载器、烹调计时器和动态显示电路等模块构成。将各模块连接起来,用图形输入法形成顶层模块,微波炉定时系统顶层模块连接如图1所示 4 设计实现 首先进行系统设计,划分各个功能模块,然后借助于EDA工具进行具体的模块设计。采用VHDL语言对各模块进行编程,在MAX+PLUSⅡ环境下对各程序进行编译和仿真验证,创建各模块的器件符号,待建立整体系统顶层文件时调用 状态控制器 状态控制器的功能是根据输入信号和微波炉所处的状态控制自身工作状态的转换,并输出相应的控制信号。仿真波形如图2所示,测试信号TEST=1’时,则LD_8888=1’,指示数据装载器装入用于测试的数据“8888”;置位端SET_T=1’时,则LD_CLK=1’,指示数据装载器装入设置的烹调时间数据;启动信号START=1’时,则COOK=1’,指示烹调正在进行之中,并提示计时器进行减计数;直到DONE=1’时,则LD_ DONE=1’,指示数据装载器装入烹调完毕的状态信息“donE”,才使COOK=0’。中间信号量CURR_STATE指示出状态控制器的5种状态,分别用0、1、2、3、4来代表 数据装载器 数据装载器的功能是在状态控制器输出信号的控制下选择定时时间、测试数据或烹调完成等信息的装载。利用3个装载信号的组合LD_8888LD_DONELD_CLK赋给变量TEMP,巧妙地解决装载数据的选择问题。仿真波形如图3所示,当LD_8888=1’时,输出测试数据,DATA2=“8888”;当LD_CLK=1’时,输出设置的烹调时间数据,DATA2=“2453”;当LD_DONE=1’时,输出烹调完毕的状态信息数据,DATA2=“ABCD”,将其转化为数码管显示,应为“donE”;当LOAD=1’时,表示烹调计时器正处于数据装入状态 烹调计时器 烹调计时器的功能是实现烹调过程中的时间递减计数,且当计时结束时向状态控制器提供状态信号,以便状态控制器产生烹调完成信号。烹调计时器的内部组成原理图如图4所示,利用两个减法十进制和两个减法六进制计数器的级联,可实现59′59″数之间的计时和初始数据的装载。LOAD=1’时完成装入功能,COOK=1’时执行逆计数功能,DATA3为来自于数据装载器的输出数据;MIN_H、MIN_L、SEC_H和SEC_L为完成烹调所剩时间,PLUS和MINUS为控制MIN_L进行加1’和减1’的信号输入端;当数码管显示信息为DONE时,指示烹调完成 动态显示电路 动态显示电路的功能是以动态扫描的方式将各种显示信息显示在4个LED数码管上,4个数码管的8个数据端是分别并联的,由片选信号控制各数码管轮流显示。该模块由片选、扫描、显示译码子模块整合实现 对整个系统进行方案设计和功能划分,对各模块VHDL程序进行编写、编译和仿真验证。根据系统设计的行为要求和功能要求,对各模块调用各模块的器件符号,按照图1所示逻辑功能连接起来,形成整体系统顶层文件;通过编 译、功能仿真后,设置芯片的管脚位置,最后将执行文件下载到FPGA芯片中,与外围电路一起构成微波炉定时

文档评论(0)

linsspace + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档