EDA交通灯设计作业

发布 2022-09-02 21:09:28 阅读 5314

信息工程专业2009级。

可编程逻辑器件及应用》

课程设计实践报告。

设计题目: 交通灯控制器的设计。

专业班级: 信息工程。

学号: 姓名:

完成时间:

可编程逻辑器件及应用》课程设计实践报告。

1.设计题目。

交通灯控制器的设计。

2.设计要求。

设计制作一个用于十字路口的交通灯控制器。

1)南北和东西方向各有一组红、黄、绿灯用于指挥交通,绿灯、黄灯和红灯的持续时间分别为20秒、5秒和25秒;

2)当有特殊情况(如消防车、救护车等)时,两个方向均为红灯亮,计时停止,当特殊情况结束后,控制器恢复原来状态,继续正常运行;

3)用两组数码管,以倒计时方式显示两个方向容许通行或禁止通行的时间;

3.设计方案。

3.1系统框图。

系统主要分为5个部分:

1)控制模块: 用来控制东西和南北两组灯的亮灭,以及数码管的倒计时情况。当没有紧急情况时系统正常运行;有紧急情况时,停止倒计时,两组灯都只有红灯亮。

这都是由控制模块来完成的。控制模块是用来连接各个模块的,有了控制模块,各个模块才能构成一个完善的系统。

2)分频模块:我们实验所用的板子的工作频率是50mhz的,而数码管倒计时是以秒为单位来计时的,所以需要分频模块分出一个周期为1秒的时钟信号。

3)计数模块:本实验需要用到四个数码管来显示倒计时的情况,而这四个数码管是不能同时亮的所以需要一个选通信号,对数码管进行高频率的扫描,这里需要计数器。数码管的工作是对不同的灯的亮的时间进行倒计时,所以这里也需要计数器。

4)译码模块:用来使七段数码管显示出相应的数字。

5)数码管显示模块:控制数码管的选通以及应当显示的数字。

3.2 源**。

library ieee;

use use

use entity jtd is

port(duan : out std_logic_vector(7 downto 0); 数码管显示

led: out std_logic_vector(3 downto 0); shumaguansaomiao

led_no: out std_logic_vector(1 downto 0); 4 3

light1: out std_logic_vector(2 downto 0);

light2: out std_logic_vector(2 downto 0);

b1eep : out std_logic

clk,jinji: in std_logic --频率输入和紧急处理端---

end jtd;

architecture one of jtd is

signal clk_1k,clk_1 : std_logic;

signal cnt4 : integer range 0 to 3用于计数。

signal num,num1,num2,num3,num4 : integer range 0 to 9;

signal aa,bb,time1,time2: integer range 0 to 19时间显示。

beginled_no<="11把数码管第三第四位屏蔽。

---分频模块。

---2khz频率输出。

process(clk)

variable cnt1: integer range 0 to 250;

variable cnt2: integer range 0 to 100;

beginif clk'event and clk='1' then

if cnt1=250 then

cnt1:=0;

if cnt2=100 then

cnt2:=0;

clk_1k<=not clk_1k;

elsecnt2:=cnt2+1;

end if;

elsecnt1:=cnt1+1;

end if;

end if;

end process;

1s分频加计数。

process(clk_1k)

variable count_1k : integer range 0 to 499;

beginif clk_1k'event and clk_1k='1' then

if cnt4=3 then

cnt4<=0;

elsecnt4<=cnt4+1;

end if;

if count_1k=499 then

count_1k:=0;

clk_1<= not clk_1;

else count_1k:=count_1k+1;

end if;

end if;

end process;

数码管显示模块。

倒计时和灯显示。

process(cnt4,time1,time2)

begincase time1 is输出时间1

when 0 to 9 =>num1<=0;

when 10 to 19 =>num1<=1;

when 20 =>num1<=2;

when others =>num1<=0;

end case;

num2<=time1 rem 10取余---

case time2 is

when 0 to 9 =>num3<=0;

when 10 to 19 =>num3<=1;

when 20 =>num3<=2;

when others =>num3<=0;

end case;

num4<=time2 rem 10;

case cnt4 is

when 0 =>

led<="1110动态扫描数码管(从右到左)

num<=num1;

when 1 =>

led<="1101";

num<=num2;

when 2 =>

led<="1011";

num<=num3;

when 3 =>

led<="0111";

num<=num4;

when others =>

led<="1111";

end case;

end process;

译码模块。process(num)

begincase num is

when 0=>duan<="001111110到9

when 1=>duan<="00000110";

when 2=>duan<="01011011";

when 3=>duan<="01001111";

when 4=>duan<="01100110";

when 5=>duan<="01101101";

when 6=>duan<="01111101";

when 7=>duan<="00000111";

when 8=>duan<="01111111";

when 9=>duan<="01101111";

when others=>duan<="00000000";

end case

end process;

控制模块。process(clk_1)

variable i: integer range 0 to 3 :=0;

beginif clk_1'event and clk_1='1' then

if time1=0 and time2=0 then

if i=3 then

i:=0;else

i:=i+1;

end if;

case i is --交通灯正常工作时的四种状态。

when 1 =>

time1<=19;

time2<=19;

light1<="001";

light2<="100";

b1eep<='0';

when 2 =>

time1<=4;

time2<=4;

light1<="010";

light2<="100";

b1eep<='0';

when 3 =>

time1<=19;

time2<=19;

light1<="100";

light2<="001";

b1eep<='0';

when 0 =>

time1<=4;

time2<=4;

light1<="100";

light2<="010";

b1eep<='0';

end case;

elseif jinji='1' then --出现紧急情况。

b1eep<='1';

time1<=aa;

time2<=bb;

light1<="100";

light2<="100";

elsetime1<=time1-1;

time2<=time2-1;

aa<=time1-1;

bb<=time2-1;

case i is

when 1 =>

light1<="001";

light2<="100";

b1eep<='0';

when 2=>

light1<="010";

light2<="100";

b1eep<='0';

when 3=>

light1<="100";

EDA大作业交通灯

实验报告。课程名称eda 交通灯的设计。学生姓名魏巍。学号8000612064 专业班级计软121班。南昌大学实验报告。学生姓名 魏巍学号 8000612064 专业班级 计软121 实验类型 验证 综合 设计 创新实验日期 2015.05.20 实验成绩 一 项目名称。十字路 通灯管理系统。二 实...

EDA课程设计 交通灯

交通信号灯控制电路设计。1 概述。城市道路交叉口是城市道路网络的基本节点,也是网络交通流的瓶颈。目前,大部分无控制交叉口都存在高峰小时车流混乱 车速缓慢 延误情况严重 事故多发 通行能力和服务水平低下等问题。特别是随着城市车流量的快速增长,城市无控制道路交叉口的交通压力越来越大。因此,做好基于eda...

EDA交通灯课程设计

学院 电气与信息工程学院。1.东西各设有一个绿 黄 红指示灯 一个2位7段数码管。1 南北和东西方向各有一组绿,黄,红灯,各自的持续时间分别为20s,5s,25s 2 当有特殊情况时,两个方向均为红灯,计时暂停,当特殊情况结束后,控制器恢复原来状态,继续正常工作。3 用两组数码管,以倒计时方式显示两...