基于VHDL的自动售货机设计_第1页
基于VHDL的自动售货机设计_第2页
基于VHDL的自动售货机设计_第3页
基于VHDL的自动售货机设计_第4页
基于VHDL的自动售货机设计_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、北华大学电子系统综合实习报告学 院:电气信息工程学院专业班级:通信工程姓名:闫梦迪学号:指导老师:董胜实习时间:2015.11.30 12.11目录1. 实习题目P32. 实习目的 P33. 实习技术要求P34. 实现过程 P35. 功能及代码P56. 仿真及硬件测试P97. 实习心得 P128. 教师评语P14一. 实习题目自动售货机设计二. 实习目的通过本课题的研究,可以掌握电子控制系统的基本原理与其实现,通过对 各个模块的编程及其仿真,对 QuartusII 软件的使用有所了解。每个波形模 块的VHDL实现加深了硬件描述语言的学习。最终的顶层文件的调试,更是体 现了综合知识的运用。三.

2、实习技术要求 本设计要实现自动售货机的基本功能,如货物信息存储、商品选择、进程控制、硬币处理、余额计算、显示等功能。利用软件 QuartusII 平台,采 用VHDL硬件描述语言编程的设计方法设计系统核心电路的硬件程序,与一般 的软件开发不同,VHD邈程更需要熟悉一些底层的硬件知识,特别是数字逻 辑电路的设计,因此VHDL编程的方法、思路都要更多的与硬件电路联系起来。 完成系统各个功能模块的硬件程序设计后,在软件平台上进行编译和电路仿 真,最后生成的目标文件下载到实验台内的 FPGA芯片以实现该系统,并在实 验台上对设计进行验证。四. 实现过程1) 、根据设计要求实现过程分两部分:a、面向客户

3、端模块设计基于Quartus2软件环境下,应用VHEDL语言进行程序设计。以elk输入端口进行商品选择,coin1输入端口做钱数输入,Finish输入端口做确认,进而完成商品购买b、面向个体端模块设计以Get端口进行对商品价格修改的确认,以 ST端口进行选择要修改的商品种类,coinO作为单价输入端口2)、整体结构框图商品选输入钱译码显示3)、程序框图设商品选择价格设定(商品、价格设定模块)五. 功能及代码功能:顾客商品选择、付钱购买、找零,个体商户对商品种类及价格的修改,商品数量统 返还输入钱数代码:library ieee;use ieee.std_logic_arith.all;use

4、ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all; entity S1 isport ( clk:in std_logic;系统时钟coin0,coin1: in std_logic_vector(3 downto 0); -输入钱数act0,act1:out std_logic_vector(3 downto 0); -显示、开关信号y0,y1,y2,y3,y4:out std_logic_vector(6 downto 0);- 输入钱r,set,st,get,finish: in std_logic;设定、买、选择、完成信号数

5、、商品价格、找零显示数据end S1;architecture behav of S1 issignal item0,item1: std_logic_vector(1 downto 0); - 商品种类signal Q: INTEGER RANGE 20 DOWNTO 0;- 找零signal pri0,pri1,pri2,pri3: std_logic_vector(3 downto 0);signal quan0:integer:=9;signal quan1:integer:=9;signal quan2:integer:=9;signal quan3:integer:=9; -beg

6、in - com0:process(get,st,coin0) variable C:INTEGER RANGE 20 DOWNTO 0;beginif get=1 thenif stevent and数量设定部分st=1 then item0=item0+1;- 对商品进行 she zhiifitem0=00 thenact0=1000;pri0=coin0;C:=CONV_INTEGER(coin0);-sheding shi自动售货机对 4 种商品的操作elsif item0=01 then act0=0100;pri1=coin0;C:=CONV_INTEGER(coin0);elsi

7、fitem0=10thenact0=0010;pri2=coin0;C:=CONV_INTEGER(coin0);elsifitem0=11thenact0=0001;pri3=coin0;C:=CONV_INTEGER(coin0);end if;end if;else act0y3y3y3y3y3y3y3y3y3y3y3=1111111;end case;end process com0;com1:process(coin1,clk,Q) - 购买部分 variable A,B,D:INTEGER RANGE 20 DOWNTO 0;beginif clkevent and clk=1 t

8、hen item1=item1+1;- 对商品进行循环选择if item1=00 then act1=1000; B:=CONV_INTEGER(pri0); -购买时,自动售货机对 4 种商品的操作elsif item1=01 then act1=0100; B:=CONV_INTEGER(pri1);elsif item1=10 then act1=0010; B:=CONV_INTEGER(pri2);elsif item1=11 then act1=pri0 then Q=A-B; D:=quan0-1;quan0=pri1thenQ=A-B;D:=quan1-1;quan1=pri2

9、thenQ=A-B;D:=quan2-1;quan2=pri3thenQ=A-B;D:=quan3-1;quan3=quan3-1;else Q=A-B;end if;end if;if set=1 then item1=00;act1=0000;Qy0y0y0y0y0y0y0y0y0y0y0y1y1y1y1y1y1y1y1y1y1y1y2y2y2y2y2y2y2y2y2y2y2y4y4y4y4y4y4y4y4y4y4y420ft actlE OC衿巧田y0E 100) yiE 100iC z41h. i .国疋B nx:阻 Master Time Bar:口口丿巴?:AlI 0000XmiJ

10、0010K oonX oioo0000乂0001X 0010: 001101001 L丨F100001000010010000100oooo x1000000 y 1111001J ps 10. 24 us5 725TTJuumi Hinn X)C* OIDDIOO * 011U0 X M110011 looooooiT010Q100100000001001004)、硬件测试1.get=1设定内部价格2隐藏内部设定价格3.输入8元 单价3元 找零5元 显示剩余数量8个7.实习心得在这次实验中,通过老师的介绍和我们自己的学习,我们学会了 VHDL程 序的基本语法和操作,熟悉了程序的基本结构和设计

11、,学会了 quartus软件 的操作和系统的功能仿真。我们小组的组员进行了合理的分工和良好的沟通,这对程序的实验十分重要。在这次的程序设计中,通过实验我们完成了程序,达到了学习的目的。经过这次对自动售货机系统的设计,让我对EDA设计有了更一步的认识,同时也对EDA这门课程有了更深入的了解。这次设计让我了解了关于自动售 货机的原理与设计理念,要设计一个电路先进行软件模拟仿真再进行实际的硬件电路测试。当然这个设计存在许多的不足,比如在预览商品时只能顺序浏览,而不 能随机点击浏览,这也是为了排除程序的糅杂。并且每次卖完一种商品都得 复位,不能进行连续的购买,而且在购买时遇到的情况考虑不周到。这次设计提高了我们的逻辑思维能力,使我们在程序的改写和运用上有 了很大的进步。加深了我们对 VHDI硬件语言的认识,进一步增进了对一些常 见器件的了解。另外,我们还更加充分的认识到,EDA这门课程在科学发展中 的至关重要性。查阅参考书的独立思考的能力以及培养非常重要,我们在设 计电路时,遇到很多不理解的东西,有的我们通过查阅参考书弄明白,有的 通过网络查到

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论