EDA交通灯实验报告

作者&投稿:宇鬼 (若有异议请与网页底部的电邮联系)
怎么用EDA写关于交通灯的报告~

一):设计题目及要求
主干道与乡村公路十字交叉路口在现代化的农村星罗棋布。图2为某十字路口交通灯与传感器运行示意图。设计交通灯控制系统,用以管理十字路口的车辆通行。具体要求:
(1)主干道车辆通行有优先权,当乡间公路无车时,主干道绿灯亮,乡间公路红灯亮,并始终保持主干道车辆通行。
(2)当乡村公路有车、主干道没有车辆时,乡间公路绿灯亮,主干道红灯亮。
(3)当主干道和乡村公路均有车时,按主干道通车60 s,乡村公路通车30 s交替进行。
(4)每次由绿灯亮变为红灯亮和红灯亮变为绿灯亮的转换过程中,要亮5 s时间的黄灯,作为过渡。
(5)用开关代替传感器作检测车辆是否到来的信号,用红、绿、黄三种颜色的发光二极管分别作交通灯。
(6)秒脉冲时基可由外电路引入。

程序

MODULE traffic_lights
TITLE 'zht'
M,C,EN,CLK PIN 11,12,13,7;
CR,CG,CY,MR,MG,MY PIN 68,69,70,71,72,73 ISTYPE'REG'; // CR,CY,CG为乡村道红、黄、绿灯,MR MG,MY为主干道红、绿、黄灯//
K,D7..D0 NODE ISTYPE'REG'; //D5..D0为计数器输出,K控制节拍//
CP,X=.C.,.X.;
Q=[CR,CG,CY,MR,MG,MY];
D=[D7..D0];
SET=[D,Q];
Q.OE=!EN;
EQUATIONS
K.CLK=CLK;
K:=!K;
SET.CLK=(CLK&!K)#(CLK&K);
WHEN(M==1)&(C==1) THEN //当乡村路有车时//,
{WHEN(D>=0)&(DWHEN(D>=0)&(DELSE WHEN(D>=61)&(DELSE WHEN(D>=65)&(DELSE WHEN(D>=95)&(DELSE Q:=[1,0,0,0,1,0]; } //改变节拍,开始新的循环//
ELSE WHEN (M==0)&(C==1) THEN Q:=[0,1,0,1,0,0]; //乡村公路有车//
ELSE WHEN (M==1)&(C==0) THEN Q:=[1,0,0,0,1,0]; //主干道有车//
ELSE Q:=[1,0,0,0,1,0]; //都无车//
TEST_VECTORS
([EN,M,C,CLK]->Q)
[1,X,X,CP]->X; //使能测试//
@REPEAT 5{[0,0,0,CP]->X;} //功能测试//
@REPEAT 5{[0,1,0,CP]->X;}
@REPEAT 10{[0,0,1,CP]->X;}
@REPEAT 150{[0,1,1,CP]->X;}
END

别人的,程序有点小问题,仅供参考。

交通灯控制器

一 实验目的
1. 了解交通灯的亮灭规律。
2. 了解交通灯控制器的工作原理。
3. 熟悉VHDL语言编程,了解实际设计中的优化方案。
二 硬件需求
1.EDA/SOPC实验箱一台。
三 实验原理
交通灯的显示有很多方式,如十字路口、丁字路口等,而对于同一个路口又有很多不同的显示要求,比如十字路口,车子如果只要东西和南北方向通行就很简单,而如果车子可以左右转弯的通行就比较复杂,本实验仅针对最简单的南北和东西直行的情况。
要完成本实验,首先必须了解交通路灯的亮灭规律。本实验需要用到实验箱上交通灯模块中的发光二极管,即红、黄、绿各三个。依人们的交通常规,“红灯停,绿灯行,黄灯提醒”。其交通灯的亮灭规律为:初始态是两个路口的红灯全亮,之后东西路口的绿灯亮,南北路口的红灯亮,东西方向通车,延时一段时间后,东西路口绿灯灭,黄灯开始闪烁。闪烁若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北方向开始通车,延时一段时间后,南北路口的绿灯灭,黄灯开始闪烁。闪烁若干次后,再切换到东西路口方向,重复上述过程。
在实验中使用8个七段码管中的任意两个数码管显示时间。东西路和南北路的通车时间均设定为20s。数码管的时间总是显示为19、18、17……2、1、0、19、18……。在显示时间小于3秒的时候,通车方向的黄灯闪烁。
四 实验内容
本实验要完成任务就是设计一个简单的交通灯控制器,交通灯显示用实验箱的交通灯模块和七段码管中的任意两个来显示。系统时钟选择时钟模块的1KHz时钟,黄灯闪烁时钟要求为2Hz,七段码管的时间显示为1Hz脉冲,即每1s中递减一次,在显示时间小于3秒的时候,通车方向的黄灯以2Hz的频率闪烁。系统中用S1按键进行复位。
五 实验步骤
完成交通灯控制器的实验步骤如下:
1.首先打开Quartus II软件,新建一个工程,并新建一个VHDL File。
2.按照自己的想法,编写VHDL程序。
3.对自己编写的VHDL程序进行编译并仿真。
4.仿真无误后,根据附录一的引脚对照表,对实验中用到时钟、七段码显示及交通灯模块的LED对应的FPGA引脚进行管脚绑定,然后再重新编译一次。
5.用下载电缆通过JTAG接口将对应的sof文件下载到FPGA中。
6.观察交通灯控制器的工作是否满足实验要求。
====================================
源代码如下
====================================
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
--------------------------------------------------------------------
entity exp18 is
port( Clk : in std_logic; --时钟输入
Rst : in std_logic; --复位输入
R1,R2 : out std_logic; --红灯输出
Y1,Y2 : out std_logic; --黄灯输出
G1,G2 : out std_logic; --绿灯输出
Display : out std_logic_vector(7 downto 0); --七段码管显示输出
SEG_SEL : buffer std_logic_vector(2 downto 0) --七段码管扫描驱动
);
end exp18;
--------------------------------------------------------------------
architecture behave of exp18 is
signal Disp_Temp : integer range 0 to 15;
signal Disp_Decode : std_logic_vector(7 downto 0);
signal SEC1,SEC10 : integer range 0 to 9;
signal Direction : integer range 0 to 15;

signal Clk_Count1 : std_logic_vector(9 downto 0); --产生0.5Hz时钟的分频计数器
signal Clk1Hz : std_logic;
signal Dir_Flag : std_logic; --方向标志


begin
process(Clk)
begin
if(Clk'event and Clk='1') then
if(Clk_Count1<1000) then
Clk_Count1<=Clk_Count1+1;
else
Clk_Count1<="0000000001";
end if;
end if;
end process;
Clk1Hz<=Clk_Count1(9);
process(Clk1Hz,Rst)
begin
if(Rst='0') then
SEC1<=0;
SEC10<=2;
Dir_Flag<='0';
elsif(Clk1Hz'event and Clk1Hz='1') then
if(SEC1=0) then
SEC1<=9;
if(SEC10=0) then
SEC10<=1;
else
SEC10<=SEC10-1;
end if;
else
SEC1<=SEC1-1;
end if;
if(SEC1=0 and SEC10=0) then
Dir_Flag<=not Dir_Flag;
end if;
end if;
end process;

process(Clk1Hz,Rst)
begin
if(Rst='0') then
R1<='1';
G1<='0';
R2<='1';
G2<='0';
else --正常运行
if(SEC10>0 or SEC1>3) then
if(Dir_Flag='0') then --横向通行
R1<='0';
G1<='1';
R2<='1';
G2<='0';
else
R1<='1';
G1<='0';
R2<='0';
G2<='1';
end if;
else
if(Dir_Flag='0') then --横向通行
R1<='0';
G1<='0';
R2<='1';
G2<='0';
else
R1<='1';
G1<='0';
R2<='0';
G2<='0';
end if;
end if;
end if;
end process;

process(Clk1Hz)
begin
if(SEC10>0 or SEC1>3) then
Y1<='0';
Y2<='0';
elsif(Dir_Flag='0') then
Y1<=Clk1Hz;
Y2<='0';
else
Y1<='0';
Y2<=Clk1Hz;
end if;
end process;

process(Dir_Flag)
begin
if(Dir_Flag='0') then --横向
Direction<=10;
else --纵向
Direction<=11;
end if;
end process;

process(SEG_SEL)
begin
case (SEG_SEL+1) is
when "000"=>Disp_Temp<=Direction;
when "001"=>Disp_Temp<=Direction;
when "010"=>Disp_Temp<=SEC10;
when "011"=>Disp_Temp<=SEC1;
when "100"=>Disp_Temp<=Direction;
when "101"=>Disp_Temp<=Direction;
when "110"=>Disp_Temp<=SEC10;
when "111"=>Disp_Temp<=SEC1;
end case;
end process;

process(Clk)
begin
if(Clk'event and Clk='1') then --扫描累加
SEG_SEL<=SEG_SEL+1;
Display<=Disp_Decode;
end if;
end process;
process(Disp_Temp) --显示转换
begin
case Disp_Temp is
when 0=>Disp_Decode<="00111111"; --'0'
when 1=>Disp_Decode<="00000110"; --'1'
when 2=>Disp_Decode<="01011011"; --'2'
when 3=>Disp_Decode<="01001111"; --'3'
when 4=>Disp_Decode<="01100110"; --'4'
when 5=>Disp_Decode<="01101101"; --'5'
when 6=>Disp_Decode<="01111101"; --'6'
when 7=>Disp_Decode<="00000111"; --'7'
when 8=>Disp_Decode<="01111111"; --'8'
when 9=>Disp_Decode<="01101111"; --'9'
when 10=>Disp_Decode<="01001000"; --'='
when 11=>Disp_Decode<="00010100"; --'||'
when others=>Disp_Decode<="00000000"; --全灭
end case;
end process;

end behave;
==================================================
说明:根据硬件不同对程序做适当调整


那一刻我长大了作文400字十篇精选
啊,前面一个十字路口,交通灯正是绿灯。我跟着爸爸穿过了那个红绿灯。接着,我看见了很多人在车道上,心不由得又加紧了。冷静啊!我骑过了那一段!终于到...长大了! 民生实验小学 那一刻我长大了作文400字10 妈妈,我要对你说一句话:“妈妈,我长大了,我已经不是以前那个不懂事的小孩子了。我已经十二岁了,...

美国考驾照中文题目
39.在交叉路口有一红灯一绿色箭头的交通灯号,此表示什么? CA.等见绿灯,再向任何方向前进 B.完全停止,然后向箭头所指方向前进 C.向箭头所指方向小心前进...A.加快行驶,到附近电话亭打电话报告车祸 B.慢行,因而可以看清楚全部失事情形 C.如果已有他人在场协助,照常行驶 D.在现场停车前往协助57.黄色闪烁灯表示...

江湖上流传的驱蚊大法,其实并没有什么用
灭蚊灯的杀蚊能力,是确定无疑的,但诱蚊能力,一直饱受质疑。一方面,国内学者曾对各种灭蚊灯进行测试,结果显示,灭蚊灯可以很好地杀死蚊子,但是吸引蚊子的能力非常有限。[3]另一方面,这个有限的结果,也是在实验环境中得到的。蚊子有很多种,有的吸血,有的不吸血。在实验室内,你可以只测试那些吸血...

意大利的简介,快!!
意大利的交通 公路交通 意大利的驰名,除因了她的历史文化、风光名胜、足球时装外,“条条大路通罗马”...它可以统计汽车的数量并通知下一个红绿灯,由电脑计算出应给哪方优先行驶权,三种色灯各应亮多久。 ...如丢失护照等重要证件,应立即向中国驻意大利使馆报告(电话06-8413467),申请补发。如丢失飞机票,应向原...

公交车上投币的动作描写作文
车到了十字路口,交通灯是红灯,司机趁这时站起来大声叫道:“后门上车的还有两人没付钱,快把钱传过来!”一分钟、二分钟……五分钟……后面丝毫没有一点动作,若无其事。 “我就说嘛……”司机摇着头。直到终点站,也没人把钱传到前面来。 司机很懊恼。唉!现在社会上都在提倡做文明市民,人人都在逐步提高自己的...

小学六年级上册英语书第一单元的单词
traffic ['træfik]交通 traffic light ['lait]交通灯 traffic rule [ru:l]交通规则 stop [stɔp]停,停车站 wait [weit]等待 remember [ri'membə] 记住 get to[ɡet tu:]到达 find [faind]寻找;找到 difference ['difərəns]不同;区别 same [seim]相同的...

我要《侠盗猎车手圣安地列斯》的全剧情
所以也不乏拉丁帮派,亚洲帮派里主要有三合会(Triads,中国人自己的帮派)和越南帮,游戏里三合会就叫Triads,越南帮叫Da Nang Boys,至于拉丁帮派,游戏里有三个 Los Santos Vagos,Varrios Los Aztecas和San Fierro Rifa.最后游戏里的Las Venturas是隐射拉斯维加斯,拉斯维加斯的赌场主要是意大利黑手党在背后管理...

快救我!谢了!回答后会有追加二十分或更多!救命!
9. 黄灯 amber light 10. 交通岗 traffic post 11. 岗亭 police box 12. 交通警 traffic police...室及办公室 实验室 Laboratory \/Lab LaboratoryLab 讨论室 Seminar Room\/Meeting Room 研讨室 Seminar

求魔法少女小圆的角色歌的中文谐音,答得好就加悬赏。
看到十字路口的交通灯听见远方传来的警笛声知らない谁かの笑い合う声shira nai dareka no warai au koe听见一些不认识人一起说笑的声音今日はひとりで歩く 通い惯れた道でもkonnichiha hitoride aruku kayoi nare tamichi demo今天我独个儿走上这熟悉的街道いつもよりもなんだかItsumoyorimonandaka然而总...

数学、生物、历史、物理初二上册试题(并含答案)
13.如图,用导线连接使灯L1和L2组成并联电路的正确方法是( )A. 图3分别连接A、B和C、E B.分别...请你设计一个实验电路:要求两个小灯泡并联,一只电流表测干路中的电流,另一只电流表测支路中电流,开关...(1) (2) (3) (4) 参考答案及评分标准 一、选一选(15分,每小题1分) 1-5 CBDDA 6-10 ...

翁源县19756851948: 我现在要写一份EDA做的交通灯的实验,现在不会写报告,请各位高手指点,模型或样板都行,类似就行 -
蹉喻甘油: (一):设计题目及要求 主干道与乡村公路十字交叉路口在现代化的农村星罗棋布.图2为某十字路口交通灯与传感器运行示意图.设计交通灯控制系统,用以管理十字路口的车辆通行.具体要求: (1)主干道车辆通行有优先权,当乡间公路...

翁源县19756851948: 谁能给我发个EDA交通灯设计实验报告啊??谢谢 -
蹉喻甘油: 交通灯的设计与实现 library ieee; use ieee.std_logic_1164.all; USE IEEE.STD_LOGIC_ARITH.ALL; use ieee.std_logic_unsigned.all; entity tra_control is port(clk_1s,hold:in std_logic; num: in integer range 0 to 50; gre_a,yel_a,red_a,gre_b,yel_b,red...

翁源县19756851948: EDA期末设计用EDA设计一个简单的交通灯控制器,具有如下功能: (1)设计一个交通信号灯控制器,由一条主干道和一条支干道汇合成十字路口,在每个... -
蹉喻甘油:[答案] 机械原理,凸轮机构及其设计你好,给您一点参考,

翁源县19756851948: 用VHDL语言设计一个交通灯,EDA课程设计 -
蹉喻甘油: 首先最简单的方法是列出真值表.写出逻辑表达式.然后根据逻辑表达式来写出vhdl程序.在编译=》仿真=》功能分析=》输出延时=》下载程序 1.设计原理 在这个实例中,我们设计一个简单的十字路口交通灯.交通灯分东西和南北两个方向,均...

翁源县19756851948: 用EDA设计交通灯控制器的设计 -
蹉喻甘油: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity top_traffic is port( clock : in std_logic; reset : in std_logic; chip1 : in std_logic; chip2 : in std_logic; seg_out : out std_logic_vector(6 downto 0);...

翁源县19756851948: 关于EDA课程设计交通指示灯一个十字路口的交通灯控制系统 要求:工作顺序为东西方向黄灯亮50秒,后5秒绿灯亮.然后红灯亮55秒.南北方向红灯亮55秒,... -
蹉喻甘油:[答案] 这个我以前写的,是T形路口,z1,z2,z3(c1,c2,c3)分别是主路(支路)口的红黄路灯,先是支路放行20s,再是主路放行40s,红灯到路灯中间要有5s黄灯,路灯直接到黄灯,和你需要的差不多.自己看看改改就行,电路图也很简单的去百度查查 library ...

翁源县19756851948: 求交通灯控制器实验报告 用 quartus II VHDL -
蹉喻甘油: 本实验要完成任务就是设计一个简单的交通灯控制器,交通灯显示用实验箱的1.首先打开Quartus II软件,新建一个工程,并新建一个VHDL File. 2.按照

翁源县19756851948: EDA语句解释(交通灯黄灯模块,求全注释,谢谢) -
蹉喻甘油: module ylight(flag,clk,clrn,q1,q2,LED_h); input[7:0] q1,q2; //输入信号 input clk,clrn; //输入信号 input [1:0] flag; //输入信号 output reg[3:0] LED_h; //输出信号 always @(posedge clk or negedge clrn) //此进程在clk上升沿或clrn下降沿被触发 begin if(...

翁源县19756851948: 求一个EDA课程设计的方案 -
蹉喻甘油: 可以做交通灯或者是键盘扫描的EDA课程设计啊 我刚刚昨晚,是用FPGA实验箱做的课程设计,其中的软件程序就是用VHDL编写的. 1、交通灯的控制在十字路口,每条道路各有一组红、黄、绿灯和倒计时显示器,用以指挥车辆和行人有序的...

翁源县19756851948: keil单片机跑马灯实验报告 -
蹉喻甘油: 原发布者:喜欢HQ 学号14142200277序号19单片机原理与接口技术实验报告实验项目序号一实验项目名称跑马灯实验姓名卢志雄专业电子信息工程班级电信14-2BF完成时间2016年4月2日一、实验内容实验内容为3项,其中第1、2项必做.1、...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网