交通灯控制电路,要求红灯状态60秒,绿灯状态55秒,黄灯状态5秒 ,用verilog语言
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/16 08:44:44
交通灯控制电路,要求红灯状态60秒,绿灯状态55秒,黄灯状态5秒 ,用verilog语言
交通灯控制电路,要求红灯状态60秒,绿灯状态55秒,黄灯状态5秒 ,用verilog语言
交通灯控制电路,要求红灯状态60秒,绿灯状态55秒,黄灯状态5秒 ,用verilog语言
给一个参考的程序(出自王金明:《Verilog HDL 程序设计教程》):
语句间隔自己调整下.
//module traffic.v
/*
信号定义与说明:
CLK : 为同步时钟;
EN : 使能信号,为1的话,则控制器开始工作;
LAMPA : 控制A方向四盏灯的亮灭;其中,LAMPA0~LAMPA3,分别控制A方向的
左拐灯、绿灯、黄灯和红灯;
LAMPB : 控制B方向四盏灯的亮灭;其中,LAMPB0~LAMPB3,分别控制B方向的
左拐灯、绿灯、黄灯和红灯;
ACOUNT : 用于A方向灯的时间显示,8位,可驱动两个数码管;
BCOUNT : 用于B方向灯的时间显示,8位,可驱动两个数码管.
*/
module traffic(CLK,EN,LAMPA,LAMPB,ACOUNT,BCOUNT);
output [7:0] ACOUNT,BCOUNT;
output [3:0] LAMPA,LAMPB;
input CLK,EN;
reg [7:0] numa,numb;
reg tempa,tempb;
reg [2:0] counta,countb;
reg [7:0] aleft,agreen,ayellow,ared;
reg [7:0] bleft,bgreen,byellow,bred;
reg [3:0] LAMPA,LAMPB;
always @ (EN)
if(!EN)
begin
ared 1)
if(numa[3:0]==4'd0) begin
numa[3:0]1)
if(numb[3:0]==4'b0)
begin
numb[3:0]