- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
EDA课程设计十字路口红绿灯模拟
课题名称:简易十字路口车流量模拟及红绿灯控制
学生姓名:
班级 :
学号 :
指导教师:
项目功能:
自动模拟简易十字路口(只两个方向通行)的车流状况
根据当前的车流状况确定红绿灯的时常(可变)以最快的疏散交通
增添交通管制功能:所有路口禁行,指示灯闪烁
通过数码管将每个路口的停车数量和交通灯的时常 倒 计时显示出来;交通灯通过指示灯显示
特点:自动模拟一简易十字路口的交通状况,程序运行后即不需再进行其他的控制,可以从数码管上看到当前的交通状况
项目原理框图
控制信号
本项目主要分为3个模块:十字路口停车数的统计、交通灯时长及功能控制、数码管显示
原理框图
控制信号
交通灯时长
停车数
数码管显示模块
SMG 1
十字路口的停车数
交通灯时长和功能控制模块
lamp
停车数统计模块
Car-wave
控制信号
各子模块的设计及验证
停车数统计模块Car-wave:
顶层图
其中Car-counter模块由模4计数器和加法器counter100实现
模4计数器有元件定制方式实现(略)
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity counter100 is
port(clk:in std_logic; --时钟信号
sel:in std_logic_vector(1 downto 0); --加法/减法功能选择信号
dataIn:in std_logic_vector(1 downto 0); --加法/减法器输入
num11,num12:out std_logic_vector(3 downto 0));--计数器结果
end counter100;
architecture bhv of counter100 is
signal dn11,dn12:std_logic_vector(3 downto 0);
signal din:std_logic_vector(3 downto 0);
Counter100由VHDL代码编写,其代码如下
begin
process(clk,dataIn)
begin
din=00dataIn;
if rising_edge(clk) then
if sel=00 then --00时做加法
if(dn1110-din) then dn11=dn11+din; --判断是否有进位
elsif(dn1110-din) then dn11=dn11+din-10;dn12=dn12+1;
end if;
elsif sel=01 then --01时做减法
if((dn11+din4)and dn120) then dn11=dn11+6+din;dn12=dn12-1;--判断是否要借位
elsif(dn114) then dn11=dn11-4+din;
else dn11=0000;
end if;
end if;
end if;
num11=dn11;
num12=dn12;
end process;
end bhv;
Counter100说明:由sel信号决定执行加法还是减法功能,sel为00时执行加法功能,sel为01时执行减法功能;sel信号由lamp(交通灯)模块生成;该加法/减法器的输入为lpm_counter4的计数值
功能验证
波形仿真:Grid Size:100ns,End Time:10.0us
信号说明:clk1: Counter100的时钟信号 COUNT EVERY:100.0 ns
clk2:模4的时钟信号 COUNT EVERY:15.0 ns
raod1,road2:两个路口的等待车辆数目
sel1,sel2 : Counter100功能选择信号
下载验证:添加数码管显示电路后的下载验证
管脚分配
信号管脚clk1(Counter100的时钟信号) P122clk2(模4和七段译码器时钟)P128sel1[1..0],sel2[1..0]P86,P87,P9
文档评论(0)