2021-11-01 08:25:16 索炜达电子 1150
项目编号:E2041
文件大小:1.58M
源码说明:带中文注释
开发环境:Verilog
简要概述
一、设计目的
设计一个主副干道十字路口的交通信号灯控制电路,控制指示主副两条交叉道路上的车辆通行。
二、系统功能和要求
1. 设东西方向为主干道,南北方向为副干道。东西主干道通行方向通时间设定为 45 秒,南北副干 道通行方向时间为 30 秒;
2. 在两个方向上各设一组红黄绿灯,分别用红、黄、绿发光二极管模拟信号灯;
3. 每次由绿灯变为红灯时,应有 5 秒黄灯亮作为过渡;黄灯亮时,要求每秒钟闪亮一次;
4. 要求黄灯先亮 5 秒,才能变换运行车道;
5. 每个方向各设置一组数码管,以倒计时的方式显示允许通行或禁止通行时间;
6. 每个方向各设置一组数码管,以倒计时的方式显示允许通行或禁止通行时间;
7. 如果发生紧急事件,可以手动控制四个方向红灯全亮。
三、系统设计方案
整个交通控制灯电路主要由主控电路、定时电路、时钟信号、显示电路及各模块之间的缓冲电路等部分组成。
整体电路
设计报告:
目录│文件列表:
│ 交通灯设计报告.docx
└ Traffic-lights-ce
│ .DS_Store
│ .gitattributes
│ LICENSE
│ README.md
│ testbench_behav.wcfg
│ Traffic_lights_comprehensive_experiment.xpr
├ Pictures
│ │ fsm_traffic.png
│ │ 上升沿检测电路.png
│ │ 交通灯框图.png
│ │ 交通灯状态图.png
│ │ 数码管显示电路.png
│ │ 整体电路.png
│ │ 紧急情况控制.png
│ │ 紧急情况控制2.png
│ └ 黄灯闪烁电路.png
├ Traffic_lights_comprehensive_experiment.cache
│ └ wt
│ │ gui_resources.wdf
│ │ java_command_handlers.wdf
│ │ project.wpc
│ │ synthesis.wdf
│ │ synthesis_details.wdf
│ │ webtalk_pa.xml
│ └ xsim.wdf
├ Traffic_lights_comprehensive_experiment.hw
│ │ Traffic_lights_comprehensive_experiment.lpr
│ └ hw_1
│ └ hw.xml
├ Traffic_lights_comprehensive_experiment.ip_user_files
│ └ README.txt
├ Traffic_lights_comprehensive_experiment.runs
│ ├ .jobs
│ │ │ vrs_config_1.xml
│ │ │ vrs_config_10.xml
│ │ │ vrs_config_11.xml
│ │ │ vrs_config_12.xml
│ │ │ vrs_config_13.xml
│ │ │ vrs_config_14.xml
│ │ │ vrs_config_15.xml
│ │ │ vrs_config_16.xml
│ │ │ vrs_config_17.xml
│ │ │ vrs_config_18.xml
│ │ │ vrs_config_19.xml
│ │ │ vrs_config_2.xml
│ │ │ vrs_config_20.xml
│ │ │ vrs_config_21.xml
│ │ │ vrs_config_22.xml
│ │ │ vrs_config_23.xml
│ │ │ vrs_config_24.xml
│ │ │ vrs_config_25.xml
│ │ │ vrs_config_26.xml
│ │ │ vrs_config_27.xml
│ │ │ vrs_config_28.xml
│ │ │ vrs_config_29.xml
│ │ │ vrs_config_3.xml
│ │ │ vrs_config_30.xml
│ │ │ vrs_config_31.xml
│ │ │ vrs_config_32.xml
│ │ │ vrs_config_33.xml
│ │ │ vrs_config_34.xml
│ │ │ vrs_config_35.xml
│ │ │ vrs_config_36.xml
│ │ │ vrs_config_37.xml
│ │ │ vrs_config_38.xml
│ │ │ vrs_config_39.xml
│ │ │ vrs_config_4.xml
│ │ │ vrs_config_40.xml
│ │ │ vrs_config_41.xml
│ │ │ vrs_config_42.xml
│ │ │ vrs_config_43.xml
│ │ │ vrs_config_44.xml
│ │ │ vrs_config_5.xml
│ │ │ vrs_config_6.xml
│ │ │ vrs_config_7.xml
│ │ │ vrs_config_8.xml
│ │ └ vrs_config_9.xml
│ ├ impl_1
│ │ │ .init_design.begin.rst
│ │ │ .init_design.end.rst
│ │ │ .opt_design.begin.rst
│ │ │ .opt_design.end.rst
│ │ │ .place_design.begin.rst
│ │ │ .place_design.end.rst
│ │ │ .route_design.begin.rst
│ │ │ .route_design.end.rst
│ │ │ .vivado.begin.rst
│ │ │ .vivado.end.rst
│ │ │ .Vivado_Implementation.queue.rst
│ │ │ .write_bitstream.begin.rst
│ │ │ .write_bitstream.end.rst
│ │ │ gen_run.xml
│ │ │ htr.txt
│ │ │ init_design.pb
│ │ │ ISEWrap.js
│ │ │ ISEWrap.sh
│ │ │ opt_design.pb
│ │ │ place_design.pb
│ │ │ project.wdf
│ │ │ route_design.pb
│ │ │ rundef.js
│ │ │ runme.bat
│ │ │ runme.log
│ │ │ runme.sh
│ │ │ Traffic_lights_ce.bit
│ │ │ Traffic_lights_ce.dcp
│ │ │ Traffic_lights_ce.tcl
│ │ │ Traffic_lights_ce.vdi
│ │ │ Traffic_lights_ce_68.backup.vdi
│ │ │ Traffic_lights_ce_8728.backup.vdi
│ │ │ Traffic_lights_ce_clock_utilization_routed.rpt
│ │ │ Traffic_lights_ce_control_sets_placed.rpt
│ │ │ Traffic_lights_ce_drc_opted.rpt
│ │ │ Traffic_lights_ce_drc_routed.pb
│ │ │ Traffic_lights_ce_drc_routed.rpt
│ │ │ Traffic_lights_ce_drc_routed.rpx
│ │ │ Traffic_lights_ce_io_placed.rpt
│ │ │ Traffic_lights_ce_methodology_drc_routed.rpt
│ │ │ Traffic_lights_ce_methodology_drc_routed.rpx
│ │ │ Traffic_lights_ce_opt.dcp
│ │ │ Traffic_lights_ce_placed.dcp
│ │ │ Traffic_lights_ce_power_routed.rpt
│ │ │ Traffic_lights_ce_power_routed.rpx
│ │ │ Traffic_lights_ce_power_summary_routed.pb
│ │ │ Traffic_lights_ce_routed.dcp
│ │ │ Traffic_lights_ce_route_status.pb
│ │ │ Traffic_lights_ce_route_status.rpt
│ │ │ Traffic_lights_ce_timing_summary_routed.rpt
│ │ │ Traffic_lights_ce_timing_summary_routed.rpx
│ │ │ Traffic_lights_ce_utilization_placed.pb
│ │ │ Traffic_lights_ce_utilization_placed.rpt
│ │ │ usage_statistics_webtalk.html
│ │ │ usage_statistics_webtalk.xml
│ │ │ vivado.jou
│ │ │ vivado.pb
│ │ │ vivado_68.backup.jou
│ │ │ vivado_8728.backup.jou
│ │ └ write_bitstream.pb
│ └ synth_1
│ │ .vivado.begin.rst
│ │ .vivado.end.rst
│ │ .Vivado_Synthesis.queue.rst
│ │ gen_run.xml
│ │ htr.txt
│ │ ISEWrap.js
│ │ ISEWrap.sh
│ │ project.wdf
│ │ rundef.js
│ │ runme.bat
│ │ runme.log
│ │ runme.sh
│ │ Traffic_lights_ce.dcp
│ │ Traffic_lights_ce.tcl
│ │ Traffic_lights_ce.vds
│ │ Traffic_lights_ce_utilization_synth.pb
│ │ Traffic_lights_ce_utilization_synth.rpt
│ │ vivado.jou
│ │ vivado.pb
│ └ .Xil
│ └ Traffic_lights_ce_propImpl.xdc
├ Traffic_lights_comprehensive_experiment.sim
│ └ sim_1
│ └ behav
│ │ compile.bat
│ │ compile.log
│ │ elaborate.bat
│ │ elaborate.log
│ │ glbl.v
│ │ simulate.bat
│ │ simulate.log
│ │ testbench.tcl
│ │ testbench_behav.wdb
│ │ testbench_vlog.prj
│ │ webtalk.jou
│ │ webtalk.log
│ │ webtalk_9900.backup.jou
│ │ webtalk_9900.backup.log
│ │ xelab.pb
│ │ xsim.ini
│ │ xvlog.log
│ │ xvlog.pb
│ └ xsim.dir
│ │ xsim.svtype
│ ├ testbench_behav
│ │ │ Compile_Options.txt
│ │ │ TempBreakPointFile.txt
│ │ │ xsim.dbg
│ │ │ xsim.mem
│ │ │ xsim.reloc
│ │ │ xsim.rtti
│ │ │ xsim.svtype
│ │ │ xsim.type
│ │ │ xsim.xdbg
│ │ │ xsimcrash.log
│ │ │ xsimk.exe
│ │ │ xsimkernel.log
│ │ │ xsimSettings.ini
│ │ └ webtalk
│ │ │ .xsim_webtallk.info
│ │ │ usage_statistics_ext_xsim.html
│ │ │ usage_statistics_ext_xsim.wdm
│ │ │ usage_statistics_ext_xsim.xml
│ │ └ xsim_webtalk.tcl
│ └ xil_defaultlib
│ │ @traffic_lights_ce.sdb
│ │ blink.sdb
│ │ countdown_double.sdb
│ │ edge_trigger.sdb
│ │ emergency.sdb
│ │ fsm_lights.sdb
│ │ glbl.sdb
│ │ scan_led_hex_disp.sdb
│ │ testbench.sdb
│ └ xil_defaultlib.rlx
└ Traffic_lights_comprehensive_experiment.srcs
├ constrs_1
│ └ new
│ └ Traffic_lights_ce.xdc
├ sim_1
│ └ new
│ │ ._testbench.v
│ │ tb_blink.v
│ │ tb_countdown.v
│ └ testbench.v
└ sources_1
└ new
│ blink.v
│ countdown.v
│ countdown_double.v
│ counter_s.v
│ edge_trigger.v
│ emergency.v
│ fsm_lights.v
│ scan_led_hex_display.v
└ Traffic_lights_ce.v