用VHDL语言设计一个交通灯.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  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文档。上传文档
查看更多
用VHDL语言设计一个交通灯,EDA课程设计 悬赏分:115 - 解决时间:2010-5-9 21:39 主干道绿灯亮的时间为8秒,闪烁3秒,黄灯亮的时间为2秒,红灯亮的时间为11秒。主干道上绿灯亮和闪烁、黄灯亮共13秒,这时支干道上的红灯一直亮着。 支干道绿灯亮的时间为6秒,闪烁3秒,黄灯亮2秒,红灯亮的时间为13秒。支干道上的绿灯亮6秒、闪烁3秒及黄灯亮2秒,主干道上的红灯亮11秒。 显示功能要求: a.主干道上绿灯亮的时间为8秒,数码管显示起始时间7秒,然后依次递减至0,绿灯闪烁3秒,黄灯亮的时间为2秒(这段时间数码管不显示)。支干道红灯亮的时间为13秒,数码管显示起始时间为12秒,然后依次递减至0。 b.支干道上绿灯亮的时间为6秒,数码管显示起始时间5秒,然后依次递减至0,绿灯闪烁3秒,黄灯亮的时间为2秒(这段时间数码管不显示),主干道红灯亮的时间为11秒,数码管显示起始时间为10秒,然后依次递减至0。 #设计提示(仅供参考): 交通灯所需的频率只有二种:1Hz和2Hz。如用4M频率信号,可经过分频后得到。1Hz的频率供计数器工作,产生标准的1秒脉冲信号。2Hz的频率供绿灯闪烁用,3秒闪烁共6次。 先写出交通灯的24个状态的真值表,再用AHDL语言的状态机写出交通灯的控制部分(若用原理图来实现的话,就要占用很多资源,而且非常复杂)。 建一个七段译码的模块,再用状态机加上数码管显示部分,建成一个增强型功能的控制模块。 各位大神,这周末也就是4月25日之前就要。拜托了 在下面跟帖写上也行,发给我qq864801599也可以。。。我就这么点金币,都散了,谢谢了。。。 问题补充: 请不要在网上复制粘贴,因为我已经在网上找了,根本没有此题答案的,希望懂得的朋友赐教。。全部金币奉送啦。。呵呵 提问者: 逸云清远 - 二级 最佳答案 首先最简单的方法是列出真值表。写出逻辑表达式。然后根据逻辑表达式来写出vhdl程序。在编译=》仿真=》功能分析=》输出延时=》下载程序 1.设计原理 在这个实例中,我们设计一个简单的十字路口交通灯。交通灯分东西和南北两个方向,均通过数码管和指示灯指示当前的状态。设两个方向的流量相当,红灯时间45s,绿灯时间40s,黄灯时间5s. 从交通灯的工作机理来看,无论是东西方向还是南北方向,都是一个减法计数器。只不过计数时还要判断红绿灯情况,再设置计数器的模值。 下表所示为一个初始状态和4个跳变状态。交通灯工作时状态将在4个状态间循环跳变,整个交通灯则完全按照减计数器原理进行设计。 状态 当前计数值 下一个CLOCK到来时新模值 东西方向指示 南北方向指示 东西-南北方向指示 东西方向指示 南北方向指示 东西-南北方向指示 初始 0 0 45 40 红-绿 1 6 1 红-绿 5 5 红-黄 2 1 1 红-黄 40 45 绿-红 3 1 6 绿-红 5 5 黄-红 4 1 1 45 40 红-绿 2.部分程序 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity traffic is port(clk, urgency: in std_logic; east_west:buffer std_logic_vector(7 downto 0);--东西方向时钟计数 south_north: buffer std_logic_vector(7 downto 0); --南北方向的时钟计数 led:buffer std_logic_vector(5 downto 0)); --交通指示灯 end traffic; architecture arch of traffic is 。。。。。。。 end arch; 3.具体设计步骤 1) 建立一个新的工程完成上面的电路设计 2) 编译电路并使用功能仿真来验证设计 3) 引脚配置,如Part I中讨论的,这些配置是确保VHDL代码中输出端口能使用PFGA芯片上连接到LEDR和LEDG的引脚。重新编译项目,并下载到FPGA芯片上。 4) 测试电路的正确性。 摘要:用VHDL语言设计交通灯控制系统,并在MAX+PLUS II系统对FPGA/CPLD芯片进行下载,由于生成的是集成化的数字电路,没有传统设计中的接线问题,所以故障率低、可靠性高,而且体积小。体现了EDA技术在数字电路设计中的优越性。   关键词:VHDL硬件描述语言;可编程逻辑器件;FPGA/CPLD;交通灯控制系统   中图分类号:TP27文献标识码:A文章编号:1009-3044(2007)06-11605-01   1 引言   交通灯控制系统是数字电路的

文档评论(0)

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

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

1亿VIP精品文档

相关文档