- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
学生实验报告
实验课名称:VHDL硬件描述语言
实验项目名称:交通灯控制
专业名称:电子科学与技术
班级:电科二班
学号:****
学生姓名:****
教师姓名:****
__2010__年_11_月_11_日
组别_____________________同组同学___________________
组别_____________________同组同学_______________________
实验日期_____年___月___日 实验室名称______________成绩_____
一、实验名称:
一、实验名称: 交通灯控制
二、实验目的与要求:
实验目的: 通过对十字路口交通灯控制系统的设计,掌握不同进制计数归零的描述方法以及通过信号使进程进行相互通信的方法。
实验要求:通过VHDL编程,实现十字路口交通灯的控制,要求用四个数码管分两组显示两个方向的递减计数值,并通过6个LED分两组显示两个方向的三色灯信号,并有一个异步重置端口,具体接口如下所示:
首先在QuartusII上进行功能和时序仿真,之后通过器件及其端口配置下载程序到SOPC开发平台中。在硬件实现中,要求:
1. 用实验平台的中的4个数码管和6个LED显示输出,采用I/O模式7实现重置控制和输出显示。D8、D7、D6分别显示h方向的红、黄、绿三色灯(开发平台的LED都是红色的,此时我们只能示意),D3、D2、D1分别显示v方向的红、黄、
clk
clk:时钟输入端。
reset:异步重置端口,高电平有效;
count_hh[3..0]:h方向计数器的高位显示输出;(注:以下把十字路口的两个方向记作h方向和v方向)
count_hl[3..0]:h方向计数器的低位显示输出;
count_vh[3..0]:v方向计数器的高位显示输出;
count_vl[3..0]:v方向计数器的低位显示输出;
light_h[2..0]:h方向的三色灯输出信号端;
light_v[2..0]:v方向的三色灯输出信号端;
绿三色灯,数码管
绿三色灯,数码管8和数码管7用来显示h方向的高位和低位计数值,数码管2和数码管1用来显示v方向的高位和低位计数值(模式7中的数码管输入信号被设置称为8421码)。重置按键(reset)用按键1
2. 为了获得合适的时钟频率,采用I/O板上的时钟资源clock0,所以,必须把适配板上的SL2时钟跳线如下图连接:
3. 时钟信号采用实验平台的clock0时钟资源:
可以通过跳线选择不同的时钟频率,clock0的时钟范围是0.5Hz~20MHz。此频率不能选择的太高否则计数速度太快,没有实用意义。一般选择在1Hz即可。
具体时序要求: 要求整个控制周期为100个时钟周期(100T),系统刚启动的时候h方向为绿灯(计数55),v方向为红灯(计数60),当重置按钮按下时,系统也要求恢复到此状态,具体时序如下表所示:
起始 1周期结束
h方向
55到0递减(绿灯)
5到0递减(黄灯)
40到0递减(红灯)
v方向
60到0递减(红灯)
35到0递减(绿灯)
5到0递减(黄灯)
三、实验内容:
三、实验内容:
新建工程:
1、打开Quartus,新建工程,选择好路径,工程顶层名为traffic_control ;
2、新建工程,如果包含已编好的文件则可以添加,如果无则可以略过 ;
3、选择我们的器件信息:型号为:EP2C36F484C
4、单击Next,指定第三方工具,这里我们不指定第三方EDA工具,单击Next后结束工程建立。
建立编译VHDL文件:
单击File\New菜单项,选择弹出窗口中的VHDL File项,单击OK按钮以建立打开空的VHDL文件,并以工程顶层文件名保存。
2、输入源代码完后单击Processing\Start Compilation开始编译,并修改其中的错误直到没有为止。
建立矢量波形文件
单击File\New命令,选择其中的Vector Waveform File项,点击OK建立空的波形文件,打开矢量波形文件编辑窗口;
双击窗口左边空白区域,打开Insert Node or Bus对话框;
单击Node Finder…按钮,打开以下对话框,选择Filter下拉列表中的Pins:all,并点击List按酒以列出所有的端口,通过按钮把这些端口加入到右面的窗口中,单击OK完成端口的添加;
回到波形编辑窗口,对所有输入端口设置输入波形,具体可以通过左边的工具栏,或通过对信号单击鼠标右键的弹出式菜单中完成操作,最后保存次波形文件。
进行仿真:
1、单击Assignments\Settings ,Simulation mode设置为Func
文档评论(0)