EDA交通灯控制器的设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
EDA交通灯控制器的设计

EDA课程设计 题目: 交通灯控制器的设计 指导老师: 龙翔 设计题目 交通灯控制器的设计 设计功能: 实现高速公路与乡间小路的交叉路口红绿灯的控制 三、具体功能要求: 1、只有在小路上发现汽车时,高速公路上的交通灯才可能变成红灯。 2、当汽车行驶在小路上时,小路的交通灯保持为绿灯,但不能超过给定的延迟时间。 (注:这段时间定义为20秒时间) 3、高速公路灯转为绿灯后,即使小路上有汽车出现,而高速公路上并无汽车,也将在给定时间内保持高速公路绿灯。 (注:这段时间定义为60秒时间) 4、交通信号灯的4种状态如下表: A B C D 高速交通灯 绿(60秒) 黄(5秒) 红(20秒) 红(5秒) 小道交通灯 红 红 绿 黄 四,设计思路 根据交通信号灯的变化可以有四种状态,分别为A,B,C,D输入为大路的绿灯状态,如果绿灯的状态还没结束,那么小路此时红色,当高速路s结束后在经过s的黄灯,跳转到即小路变为绿灯,大路变为红灯,小路s过后再经过s的黄灯到,大路变为绿灯小路变为红灯,赋值的方法来计数,当到想要值得时候在,状态采用方法不同状态的变化。 输入端口和输出端口及变量信号说明 输入端 CLK XLB 意义 时钟信号 小路是否有车 输出端 GSR GSY GSG XLR XLY XLG 意义 高速红灯 高速黄灯 高速绿灯 小路红灯 小路黄灯 小路绿灯 变量或信号 CLR S 意义 清零变量 计时变量 五,源程序的设计 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY JTDKZ IS PORT(CLK:IN STD_LOGIC; XLB:IN STD_LOGIC; GSR,GSY,GSG,XLR,XLY,XLG:OUT STD_LOGIC); END ENTITY JTDKZ; ARCHITECTURE ART OF JTDKZ IS TYPE STATE_TYPE IS(A,B,C,D);  SIGNAL STATE:STATE_TYPE; BEGIN CNT:PROCESS(CLK) IS VARIABLE CLR:BIT; --在进程中定义变量CLR(CLR=0:计时清零) VARIABLE S:STD_LOGIC_VECTOR(0 TO 5); --在进程中定义变量S(S为时钟计时器) BEGIN IF(CLKEVENT AND CLK=1)THEN--判断时钟信号上升沿 IF CLR=0THEN--当CLR=0时计时变量清零 S:=; ELSE S:=S+1; END IF; CASE STATE IS --状态A为大路通车(绿灯),小路禁止通车(红灯) WHEN A=GSR=0;GSY=0;GSG=1; BR=1;BY=0;BG=0; IF(XLB=1) THEN--判断小路是否有车 IF(S=) THEN--判断大路通行是否满60秒 STATE=B;CLR:=0; --大路满60秒,计时清零,转到状态B ELSE STATE=A;CLR:=1; --大路不满60秒,继续状态A END IF; ELSE STATE=A;CLR:=1;--小路没车,大路一直通车 END IF; --状态B为大路禁止通车(黄灯),小路禁止通车(红灯) WHEN B=GSR=0;GSY=1;GSG=0; XLR=1;XLY=0;XLG=0; IF S= THEN--判断大路黄灯是否满5秒 STATE=C;CLR:=0; --满5秒,计时清零,跳转到C状态 ELSE STATE=B;CLR:=1;--不满5秒继续状态B。 END IF; --状态C为大路禁止通车(红灯),小路通车(绿灯) WHEN C=GSR=1;GSY=0;GSG=0;

文档评论(0)

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

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

1亿VIP精品文档

相关文档