EDA课程设计-交通信号灯.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE PAGE 1 EDA技术课程设计报告 交通灯控制器 一、设计功能: 实现高速公路与乡间小路的交叉路口红绿灯的控制 二、具体功能要求: 1、只有在小路上发现汽车时,高速公路上的交通灯才可能变成红灯。 2、当汽车行驶在小路上时,小路的交通灯保持为绿灯,但不能超过给定的延迟时间。 (注:这段时间定义为20秒时间) 3、高速公路灯转为绿灯后,即使小路上有汽车出现,而高速公路上并无汽车,也将在给定时间内保持高速公路绿灯。 (注:这段时间定义为60秒时间) 4、原理框图如下: 5、交通信号灯的4种状态如下表: A B C D 高速交通灯 绿(60秒) 黄(5秒) 红(20秒) 红(5秒) 小道交通灯 红 红 绿 黄 三、参考设计方案: 状态发生器(两位二进制计数器)定时时间到检测电路预置数产生电路计时器 状态发生器(两位二进制计数器) 定时时间到检测电路 预置数产生电路 计时器 时间显示数据输出 红黄绿灯输出控制电路(RYG) 红黄绿灯输出 控制电路(RYG) 红黄绿灯信号输出 1秒时钟脉冲信号发生器 1秒时钟脉冲信号发生器 图2 交通信号灯控制器的原理框图 采用VHDL语言输入的方式实现交通信号灯控制器 秒脉冲信号发生器(进程P1和P2)状态寄存器 秒脉冲信号发生器(进程P1和P2) 状态寄存器 (进程P6) 计数器 (进程P3、P4和P5) 时间显示数据输出 次态发生器 次态发生器 信号灯输出信号 (进程P7) 信号灯输出 图3 交通信号灯控制器程序原理框图 该程序由7个进程组成,进程P1和P2将CLK信号分频后产生1秒信号,进程P3、P4、P5构成两个带有预置数功能的十进制计数器,其中P4产生允许十位计数器计数的控制信号。进程P6实现状态转换和产生状态转换的控制信号,进程P7产生次态信号和信号灯输出信号,以及每一个状态的时间值。 计数器驱动脉冲如图所示: 四、编写相应源程序: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED. ALL; ENTITY CONTRALZ IS PORT(CLK:IN STD_LOGIC; RA,GA,YA:OUT STD_LOGIC; TIMEAH,TIMEAL:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END CONTRALZ; ARCHITECTURE BHV OF CONTRALZ IS TYPE RG IS (GREEN,RED,YELLOW2); BEGIN PROCESS(CLK) VARIABLE A:STD_LOGIC; VARIABLE TH,TL:STD_LOGIC_VECTOR(3 DOWNTO 0); VARIABLE STATE:RG; BEGIN IF CLKEVENT AND CLK=1 THEN CASE STATE IS WHEN GREEN=IF A=0 THEN TH:=0101; TL:=1001; A:=1; GA=1; RA=0; YA=0; ELSE IF

文档评论(0)

a13355589 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档