ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:310.35KB ,
资源ID:3946012      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-3946012.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于VHDL的自动售货机设计.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

基于VHDL的自动售货机设计.docx

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

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

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

4、get,finish: 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); -输入钱数、商品价格、找零显示数据end S1;architecture behav of S1 issignal item0,item1: std_logic_vector(1 downto 0); -商品种类si

5、gnal 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; - 数量begin - 设定部分com0:process(get,st,coin0)variable C:INTEGER RANGE 20 DOWNTO 0; begin if get=1 then if stev

6、ent and st=1 then item0=item0+1; -对商品进行she zhi if item0=00 then act0=1000;pri0=coin0;C:=CONV_INTEGER(coin0);-she ding shi, 自动售货机对4种商品的操作 elsif item0=01 then act0=0100;pri1=coin0;C:=CONV_INTEGER(coin0); elsif item0=10 then act0=0010;pri2=coin0;C:=CONV_INTEGER(coin0); elsif item0=11 then act0=0001;pri

7、3=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; begin if clkevent and clk=1 then item1=item1+1; -对商品进行循环选择 if item1=00 then act1=1000; B:=CONV_INTEGER(pri0); -

8、购买时,自动售货机对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=pri1 then Q=A-B; D:=quan1-1;quan1=pri2 then Q=A-B; D:=quan2-1;quan2=pri3 then Q=A-B; D:=quan3-1;quan3=quan3-1; else

9、 Q=A-B; end if; end if; if set=1 then item1=00;act1=0000;Qy0y0y0y0y0y0y0y0y0y0y0y1y1y1y1y1y1y1y1y1y1y1y2y2y2y2y2y2y2y2y2y2y2y4y4y4y4y4y4y4y4y4y4y4=1111111; end case; end process com1;end behav;六.仿真及硬件测试1)、引脚锁定2)、RTL电路图3)、时序仿真4)、硬件测试=1 设定内部价格2.隐藏内部设定价格3.输入8元 单价3元 找零5元 显示剩余数量8个7.实习心得在这次实验中,通过老师的介绍和我们自

10、己的学习,我们学会了VHDL程序的基本语法和操作,熟悉了程序的基本结构和设计,学会了quartus软件的操作和系统的功能仿真。我们小组的组员进行了合理的分工和良好的沟通,这对程序的实验十分重要。在这次的程序设计中,通过实验我们完成了程序,达到了学习的目的。经过这次对自动售货机系统的设计,让我对EDA设计有了更一步的认识,同时也对EDA这门课程有了更深入的了解。这次设计让我了解了关于自动售货机的原理与设计理念,要设计一个电路先进行软件模拟仿真再进行实际的硬件电路测试。当然这个设计存在许多的不足,比如在预览商品时只能顺序浏览,而不能随机点击浏览,这也是为了排除程序的糅杂。并且每次卖完一种商品都得复

11、位,不能进行连续的购买,而且在购买时遇到的情况考虑不周到。这次设计提高了我们的逻辑思维能力,使我们在程序的改写和运用上有了很大的进步。加深了我们对VHDL硬件语言的认识,进一步增进了对一些常见器件的了解。另外,我们还更加充分的认识到,EDA这门课程在科学发展中的至关重要性。查阅参考书的独立思考的能力以及培养非常重要,我们在设计电路时,遇到很多不理解的东西,有的我们通过查阅参考书弄明白,有的通过网络查到,但由于时间和资料有限我们更多的还是独立思考。相互讨论共同研究也是很重要的,经常出现一些问题,经过和同组同学讨论和资料的查询最终得到了解决。锻炼了我们的团队合作精神及分工合作的能力。在调试程序过程中遇到很多这样那样的问题,最后都解决了。特此感谢老师和同学们对我的辛勤指导,能让我在困境中找到解决难题的办法,并且对EDA有了更深刻的认识。8. 教师评语 教师:

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2