自动售饮料机.docVIP

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

自动售饮料机 摘要:这次EDA课程设计是自动售货机,机器设有2个投币孔,可以接受一元和五角的硬币,每瓶饮料2.5元,可用2个按键来代替。还设有2个输出,要求有找零和提示信号,分别输出饮料和找零,设计按照EDA课程设计的流程,源代码的编写,仿真而后的波形和结果分析。这设计综合利MAX+PLUS2 10.0等设计软件进行课程设计。 关键字:自动售饮料机 MAX+PLUS2 10.0 仿真 波形图 一EDA技术的介绍 EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。    EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。    利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程的计算机上自动处理 本文所指的EDA技术,主要针对电子电路设计、PCB设计和IC设计。EDA设计可分为系统级、电路级和物理实现级。 二、自动售饮料机系统设计要求 设计一个自动售饮料机。假定每瓶饮料售价为2.5元,可使用两种硬币,即5角和1元,机器有找零功能。机器设计有2个投币孔,可用2个按键来代替。还设有2个输出孔,分别输出饮料和找零,提示用户取走饮料和零钱。 三、自动售饮料机方案 Verilog程序源代码: Clk: 表示时钟输入; Reset: 为系统复位信号; half_dollar: 代表投入5角硬币; one_dollar: 代表投入1元硬币; half_out; 表示找零信号; dispense: 表示机器售出一瓶饮料; collect: 该信号用于提示投币者取走饮料; clk: reset: half_dollar: one_dollar: half_out: dispense: collect: module sell(one_dollar,half_dollar,collect,half_out,dispense,reset,clk); parameter idle=0,one=2,half=1,two=3,three=4; input one_dollar,half_dollar,reset,clk; output collect,half_out,dispense; reg collect,half_out,dispense; reg[2:0] D; always @(posedge clk) begin if(reset) begin dispense=0;collect=0;half_out=0;D=idle;end case(D) idle: if(half_dollar) D=half; else if(one_dollar) D=one; half: if(half_dollar) D=one; else if(one_dollar) D=two; one: if(half_dollar) D=two; else if(one_dollar) D=three; two: if(half_dollar) D=three; else if(one_dollar) begin dispense=1; collect=1;D=idle; end two: if(half_dollar) begin dispense=1; collect=1;D=idle; end else if(one_dollar) begin dispense=1; collect=1;half_out=1;D=idle; end endcase end endmodule 四、利用MAX+PLUS2 10.0软件仿真得到的波形图如下:图1-1 图1-1 五、课程总结 这次的课程设计使我学到很多很多的东西,同时不仅可以巩固以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次设计,进一步加深了对EDA的了解,让我对它有了更加浓厚的兴趣。特别是当每一个子模块编写调试

文档评论(0)

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

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

1亿VIP精品文档

相关文档