文档详情

桂林电子科技大学EDA实训——交通灯控制电路的设计.doc

发布:2016-05-11约6.61千字共15页下载文档
文本预览下载声明
桂林电子科技大学信息科技学院 《EDA技术及应用》实训报告 学 号 1252310106 姓 名 陈 力 指导教师:李德明 2014 年 4 月 29 日 交通灯控制电路的设计 1 系统设计 1.1 设计要求 1.1.1 设计任务 用EDA实训仪上的4只八段数码管分别显示道路东西和南北通行和禁止的倒计时时间。 1.1.2 性能指标要求 能设置道路东西和南北两侧通行和禁止的倒计时时间,最大设置时间为99秒,最小设置时间为1秒。 交通灯用红、绿、黄三种发光二极管(LED)显示控制的结果。 红、绿、黄灯显示的次序应符合实际交通道路控制的要求。 1.2 设计思路及设计框图 1.2.1设计思路 fpq是分频器,将EDA实训仪主板提供的20MHz的主频频后,得到电路所需的1Hz(1秒)时钟。Rgwork和ywork是减法计数器,产生道路东西和南北通行和禁止的倒计时时间。Counter是控制电路,控制整个系统的工作。控制器接收倒计时的结果,当倒计时归0时,改变电路的控制模式,输出倒计时的初始时间和交通灯亮灭控制信号。6输入或非门和2输入与非门组成了简易密码锁的功能(通过拨码开关实现)。 1.2.2总体设计框图 分频器 交通灯控制电路 数码管及LED灯 2 各个模块程序的设计 2.1分频器模块的设计 分频器模块截图: 分频器模块程序设计: module fpq(clk,newclk); input clk; output reg newclk; reg[24:0] counter; always @(posedge clk ) begin counter=counter+1; if(countercounter=0; if(counternewclk=b1; else if(countenewclk=b0; end endmodule 2.2红绿灯模块设计 红绿灯模块截图: 红绿灯模块程序设计: module rgwork(clk,clrn,ydbj,gzfs,LED,t1,t2,q1,q2); input clk,clrn; input [7:0] q1,q2; output reg ydbj; output reg[1:0] gzfs; output reg[7:0] LED; output reg[7:0] t1,t2; reg[7:0] rtime,gtime,ytime,rtime1=h20,gtime1=h16; reg[1:0] z; initial begin rtime=h20;gtime=h16;ytime=h03;ydbj=0;z=0;end always @(posedge clk or negedge clrn) begin if(~clrn) ydbj=1; else begin if(q1==0||q2==0) ydbj=1; else begin ydbj=0; rtime=rtime1;gtime=gtime1; end end end always @(posedge ydbj or negedge clrn) begin if(~clrn) begin t1=rtime;t2=gtime;LED=gzfs=2;z=0; end else begin z=z+1; case (z) 0:begin t1=rtime;t2=gtime;LED=gzfs=2;end 1:begin t1=ytime;t2=ytime;LED=gzfs=0;end 2:begin t1=gtime;t2=rtime;LED=gzfs=2;end 3:begin t1=ytime;t2=ytime;LED=gzfs=1;end default:begin t1=rtime;t2=gtime;LED=gzfs=2;end endcase end end endmodule 2.3黄灯模块设计 黄灯模块截图: 黄灯模块程序设计: module ywork(gzfs,clk,clrn,q1,q2,LED_h); input[7:0] q1,q2; input clk,clr
显示全部
相似文档