交通灯控制逻辑电路设计与总结报告.docVIP

交通灯控制逻辑电路设计与总结报告.doc

  1. 1、本文档共10页,可阅读全部内容。
  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文档。上传文档
查看更多
交通灯控制逻辑电路设计与总结报告.doc

交通灯控制逻辑电路设计与总结报告 一、设计任务 用CPLD设计路口交通灯控制器 二、设计要求 1、满足一下时序要求:南北方向红灯亮,东西方向绿灯亮;南北方向绿灯亮,东西方向红灯亮; 2、每一方向的红(绿)黄灯总共维持30秒; 3、十字路口要有时间显示,具体为:当某一方向绿灯亮时,置显示器为30秒,然后以每秒减一技术方式工作,直至减到数为4秒时,红绿灯熄灭,黄灯开始间隙闪耀4秒,减到0时,红绿灯交换,一次工作循环结束,进入下一步另一方向的工作循环; 4、红绿灯均采用发光二极管; 5、设计由晶振电路产生1Hz标准秒信号的单元电路 (实际秒脉冲由开发箱提供); 6、要求对整体电路进行仿真,观察并记录下仿真波形; 7、选作部分: a、手动调整和自动控制,夜间为黄灯闪耀; b、白天黄灯亮时,以2Hz的速度闪烁点亮四秒; c、红绿灯循环点亮时间可以自由修改。 三、设计设备 含有Quartus软件的电脑一台,可下载的试验台; 四、设计方法 使用VHDL语言进行程序的设计运行和仿真,以及波形的运行仿真,最后进行下载仿真; 五、方案论证 方案1:把整个流程分成几个进程来做; 方案2:每个进程都使用if和case语句实现功能的实现; 方案3:使用状态机来实现状态间的转换; 方案论证: 1、要实现整个流程,需要做的输出内容类型不同,如果放在一个进程里面就比较容易混淆,产生混乱。而采用分成几个进程来做的方式就明确了每个模块的内容和分工,使其调理清晰,一目了然; 2、if语句是条件语句,是VHDL语言中常用的基本语句。该流程中的变量比较繁多,而使用case语句分情况列出来,简洁明了。 3、状态机的使用格式简洁,使用简单方便,特别是在进行状态的转换时候。并行的状态转换不易出错,可将状态转换、赋值、计数等多个功能封装在某一个状态中,并且更加便于为系统添加新的状态功能。 方案选定: 通过以上分析,确定用以上方案为本次设计的方案。 六、工作原理 先对所给时钟脉冲进行分频到标准时钟脉冲;设计两个时钟控制倒计时,倒计时的时间可自由修改,由输入决定;设计另一个时钟,用以控制白天与夜间模式的转换;在白天时,根据倒计时的数字进行红绿灯的状态转换;夜间时,红绿灯状态改为夜间模式:黄灯闪烁。 七、程序设计 ------交通灯控制系统所使用的库和包 ---------------------------------------------------------------------------------------------------------------------- library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; ---------------------------------------------------------------------------------------------------------------------- ------交通灯控制系统的实体 ---------------------------------------------------------------------------------------------------------------------- entity jt is port(clk,reset:in std_logic; ------------------时钟脉冲clk由系统直接提供,需要进行分频;reset是启动键,当reset为1是,系统启动 t0:integer range 0 to30; ------------------红绿灯循环点亮的时间,根据输入的不同系统运行的不同 r1,y1,g1,r2,y2,g2:out std_logic; ------------------ r1为东西方向红灯, y1为东西方向黄灯,g1为东西方向绿灯;r2为南北方向红灯,y2为南北方向黄灯,g2为南北方向绿灯 ec0,ec1,nc0,nc1:out std_logic_vector(3 downto 0)); ------------------ ec0,ec1分别为东西方向的倒计时间的个位和十位;nc0,nc1分别为南北方向的倒计时间的个位和十位 end jt; -----------------------------------------------------------

文档评论(0)

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

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

版权声明书
用户编号:5212202040000002

1亿VIP精品文档

相关文档