- 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进行描述。该交通管理的技术要求为:如果只有一个方向有车时,则保持该方向畅通;当两个方向都有车时,主干道与支干道交替通行,但是主干道通行的是将要比支干道通行的时间要长一些。
设计要求
当处于“主干道绿灯,支道红灯”状态:
a 、主干道要车要求通行,支道也有车要求通行时,若主干道通行时间大于30秒则切换到“主黄,主红”,4秒后自动切换到“主红,支绿”;
b 、主干道无车要求通行,支道有车要求通行时,立即切换到“主红,支绿”;
c 、其他情况保持“主绿,支红”状态。
2、当处于“主干道红灯,支干道绿灯”状态:
a 、支道有车要求通行时,保持“主红,支绿”状态,但最多保持30秒然后主动切换到“主红,支黄”状态,4秒后自动切换到“主绿,支红”状态;
b 、支道无车要求通行时,立即切换到“主红,支黄”状态,4秒后自动切换到“主绿,支红”状态。
3 、利用八位七段管码显示模块其中的2位实现时间显示。
4 、扩展要求:要求设计(改变时间显示方式,丰富控制逻辑等)
【设计原理及方案】
利用状态机按照设定的条件实现“主绿,支红”、“主黄,支红”、“主红,支绿”、“主红,支黄”四种状态之间的转换。
十字路口的示意图如右图所示。在主干道和支干道两个方向上都安装红、黄、绿三色信
号灯;Ca和Cb分别是安装在主干道和支干
道上的传感器,用于检测是否有车辆需要通
过路口。在只有主干道有车时,主干道亮绿
灯,支干道亮红灯;当只有支干道有车时,
主干道亮红灯,支干道亮绿灯;当了两个方
向都有车时,两个方向轮流亮绿灯和红灯。
交通管理系统的结构图如下所示:
设计系统主要由控制器和
受控器的定时器组成。定时器
用来确定主干道、支干道的通
行时间以及公共停车时间;
CNT是定时的值;LD是定时
值的同步预置信号,高电平有
效;ST是这个定时器的状态信
号,当定时结束后,ST输出为
1;Ca和Cb分别为主干道和支
干道的传感器输出信号,高电
平表示有车需要通过;clk是
期为秒的时钟信号;reset是异 交通管理系统结构图
步复位信号,低电平有效,复位
后的初始状态为主干道畅通;Ra、
Ya、Ga和Rb、Yb、Gb分别为主
道和支干道的红、黄、绿灯的控制
信号,高电平有效。
如下图所示,该图很清楚的表明了该交通状态间的转换关系。
状态转换图
【电路设计与实现】
设计电路由分频器、计数器、控制器、输出系统等组成。
(1)、分频器 电路的频率本为50MHz,但是电路中我设计需要2000Hz和1Hz的信号。由1HZ分频器输出的信号,输入到控制器当中,分析路灯的情况。由2000Hz输出分频器输出地信号,输入到输出端,分析其输出的情况。其程序如下所示:
1Hz的分频器程序
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity fenpin is
port( clk:in std_logic;
finout:out std_logic);
end fenpin;
architecture bhv of fenpin is
signal tmp:INTEGER RANGE 0 TO ---1HZ的分频
begin
process(clk)
begin
if clkevent and clk=1 then
if tmpthen tmp
else tmp=tmp+1;
end if;
if tmthen finout=0;
else finout=1;
end if;
end if;
end process;
end bhv;
对上述程序进行完编译仿真后,得到其源元件,如上图所示
512Hz的分频器源程序:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity fenpin123 is
port (clk: in std_logic;
clkfen: out std_logic);
end fenpin123;
architecture fenpin of fenpin123
文档评论(0)