1、交通信号灯控制器课程报告交通信号灯控制器课程报告 一设计要求一设计要求 1、 设计一个交通信号灯控制器,由一条主干道和一条支干道汇合成十字路口,在每个入口 处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中 的车辆有时间停在禁行线外。 2、 主、支干道交替允许通行,主干道每次放行 45 秒,支干道每次放行 25 秒,设立 45 秒、 25 秒计时、显示电路。 3、 在每次由绿灯亮到红灯亮的转换过程中,要亮 5 秒黄灯作为过渡。 提示提示: 1、 选择 1HZ 时钟脉冲作为系统时钟。 2、 45 秒、25 秒、5 秒定时信号用倒计时,计时起始信号由主控电路给出,每当计满
2、所需时 间,计数器清零,由主控电路启、闭三色信号灯或启动另一计时电路。 二二设计思路设计思路 本设计针对一条主干道和一条支干道汇合成的十字路口, 进行南北和东西直行情况下交 通灯控制。根据交通灯的亮的规则,在初始状态下四个方向的都为红灯亮启,进入正常工作 状态后,当主干道上绿灯亮时,支干道上红灯亮,持续 45S 后,主干道和支干道上的黄灯 都亮启,持续 5S 后,主干道上红灯亮启,支干道上绿灯亮启持续 25S,之后主干道和支干 道上的黄灯都亮启 5s,一个循环完成。循环往复的执行这个过程。 设计中用两组红黄绿 LED 模拟两个方向上的交通灯,用 4 个 7 段数码管分别显示两个 方向上的交通灯
3、剩余时间,控制时钟由试验箱上频率信号提供。 根据状态机的设计规范,本次设计了四个状态之间的循环转化,其真值表及状态转化图 如下所示 目前状态 下一状态 输出 Light1 Light2 S0=00 S1=01 001 100 S1=01 S2=10 010 010 S2=10 S3=11 100 001 S3=11 S0=00 010 010 三三程序说明程序说明 1.各输入输出变量说明: clk:计数时钟 qclk:扫描显示时钟 rst:复位信号,当 rst 为 1 时,控制器和计数器回到初始状态 en:使能信号,当 en为 1 时控制器开始工作,en为 0 时 hold:特殊情况控制信号,
4、hold 为 1 时,主、支干道方向无条件显示为红灯 seg:用于数码管的译码输出 dig:用于选择显示的数码管(片选) num1:用于主干道方向灯的时间显示 num2:用于支干道方向灯的时间显示 light1:控制主干道方向四盏灯的亮灭,其中,light10light12分别控制主 干道方向的绿灯、黄灯和红灯 light2:控制支干道方向四盏灯的亮灭,其中,light20light22分别控制支 干道方向的绿灯、黄灯和红灯 S0 S3 S1 S2 2.输入输出及中间变量设置: module traffic(en,clk,qclk,rst,hold,num1,num2,light1,light2,seg,dig; input en,clk,qclk,rst,hold; output 5:0dig; output7:0 num1,num2; output6:0seg; output2:0light1,light2; reg tim1,tim2; reg3:0disp_dat; reg6:0seg; reg7: