My title page contents

交通灯管理器设计Verilog代码ISE DGDZ-4实验箱

名称:交通灯管理器设计Verilog代码ISE  DGDZ-4实验箱

软件:ISE

语言:Verilog

代码功能:

基本指标

3)管理器的基本工作状态有四种

   a、南北绿灯,东西红灯;

   b、南北黄灯,东西红灯;

   c、南北红灯,东西绿灯;

   d、南北红灯,东西黄灯。

4)各方向绿灯时间30s,黄灯时间5s,红灯时间35s

5)在以上基础上,使绿灯时间可以在15s~100s之间可调,黄灯时间在3s~15s之间可调。(红灯时间应与两者之和保持一致。)

 

(6)在以上基础上,设置一组按键,可进入、退出夜间模式,在夜间模式下,各方向均跳黄灯(但不倒计时),以保证各方向慢行通过。

扩展指标

1)各方向设置一组特殊情况按钮,在该方向为红灯状态时,按下该按钮,即转向黄灯5s等待后通行(另一方向也随即进入红灯)。

 

2)到有左转、右转交通指示的现场,归纳交通指挥规则,并依据规则自定技术指标,将系统功能进一步扩展。


FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

本代码已在DGDZ-4实验箱验证,DGDZ-4实验箱如下,其他开发板可以修改管脚适配:DGDZ-4实验箱.png

演示视频:

设计文档:

设计文档.doc

1. 工程文件


2. 程序文件


3. 程序编译


4. RTL图


5. 管脚分配



部分代码展示:

/*
红->绿 绿->黄 黄->红
1、红--计时main_red_times------------------------绿--计时main_green_times---main_yellow_times黄灯---------------红
2、绿--计时branch_green_times---branch_yellow_times黄灯--------------------红--计时branch_reg_times-------------------绿
*/
module traffic_light(
input clk,//12Mhz
input reset,//复位
input lock_key,//紧急按键--按下均为红灯,为1紧急状态,为0正常状态
input night_key,//夜间按键
input main_green_add,//主路绿灯加
input main_yellow_add,//主路黄灯加
input branch_green_add,//支路绿灯加
input branch_yellow_add,//支路黄灯加
output main_red,//主路灯
output main_green,//主路灯
output main_left,//主路灯
output main_yellow,//主路灯
output branch_red,//支路灯
output branch_green,//支路灯
output branch_left,//支路灯
output branch_yellow,//支路灯
//数码管
output  [5:0] weixuan,//位选,数码管从左到右依次为 W1~W6。
output  [3:0] display_data//数据显示信号DCBA
);
 wire clk_1Hz;
 wire [7:0] main_green_BCD;
 wire [7:0] main_left_BCD;
 wire [7:0] main_yellow_BCD;
 wire [7:0] main_red_BCD;
 wire [7:0] branch_green_BCD;
 wire [7:0] branch_left_BCD;
 wire [7:0] branch_yellow_BCD;
 wire [7:0] branch_red_BCD;
 
 wire [7:0] main_data_out;
 wire [7:0] branch_data_out;
 
wire main_red_led;//主路灯
wire main_green_led;//主路灯
wire main_left_led;//主路灯
wire main_yellow_led;//主路灯
wire branch_red_led;//支路灯
wire branch_green_led;//支路灯
wire branch_left_led;//支路灯
wire branch_yellow_led;//支路灯
assign main_red=main_red_led;//主路灯
assign main_green=main_green_led;//主路灯
assign main_left=main_left_led;//主路灯
assign main_yellow=main_yellow_led ;//主路灯
assign branch_red=branch_red_led;//支路灯
assign branch_green=branch_green_led;//支路灯
assign branch_left=branch_left_led;//支路灯
assign branch_yellow=branch_yellow_led ;//支路灯 
//分频模块
div div100
(
. clk(clk),
. clk_out(clk_1Hz)//1Hz
);
//按键调整时间
wire [7:0]main_green_time;//由外部控制
wire [7:0]main_yellow_time;
wire [7:0]branch_green_time;//由外部控制
wire [7:0]branch_yellow_time;
time_ctrl i_time_ctrl(
. clk(clk),//12Mhz
. main_green_add(main_green_add),//主路绿灯加
. main_yellow_add(main_yellow_add),//主路黄灯加
. branch_green_add(branch_green_add),//支路绿灯加
. branch_yellow_add(branch_yellow_add),//支路黄灯加
. main_green_time(main_green_time),//主路绿灯时间
. branch_green_time(branch_green_time),//支路绿灯时间
. main_yellow_time(main_yellow_time),//主路黄灯时间
. branch_yellow_time(branch_yellow_time)//支路黄灯时间
);
///////////////////////////////
reg [7:0] display_main;
reg [7:0] display_branch;
////////////////////////////////
//交通灯控制模块
led led(
. clk_1Hz(clk_1Hz),

代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 交通灯管理器设计Verilog代码ISE DGDZ-4实验箱

发表评论

模板文件不存在: ./template/plugins/comment/pc/index.htm

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员