【E8】基于FPGA的交通灯设计

2021-08-11 14:23:51      索炜达电子      1408     


项目编号:E8

文件大小:1.57M

源码说明:带中文注释

开发环境:Verilog

简要概述:

一、设计目的

设计一个主副干道十字路口的交通信号灯控制电路,控制指示主副两条交叉道路上的车辆通行。

二、系统功能和要求

  1. 设东西方向为主干道,南北方向为副干道。东西主干道通行方向通时间设定为 45 秒,南北副干 道通行方向时间为 30 秒;

  2. 在两个方向上各设一组红黄绿灯,分别用红、黄、绿发光二极管模拟信号灯;

  3. 每次由绿灯变为红灯时,应有 5 秒黄灯亮作为过渡;黄灯亮时,要求每秒钟闪亮一次;

  4. 要求黄灯先亮 5 秒,才能变换运行车道;

  5. 每个方向各设置一组数码管,以倒计时的方式显示允许通行或禁止通行时间;

  6. 每个方向各设置一组数码管,以倒计时的方式显示允许通行或禁止通行时间;

  7. 如果发生紧急事件,可以手动控制四个方向红灯全亮。

三、系统设计方案

整个交通控制灯电路主要由主控电路、定时电路、时钟信号、显示电路及各模块之间的缓冲电路等部分组成。

【E8】基于FPGA的交通灯设计

整体电路:

【E8】基于FPGA的交通灯设计


设计报告:

【E8】基于FPGA的交通灯设计

文件列表:

目录│文件列表:

 ├ 1.文档

 │  └ 交通灯设计报告.docx

 └ 2.源码

    └ Traffic-lights-ce

       │ .DS_Store

       │ 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

TAG交通灯
  • 31 次