EDA课程设计交通灯

发布 2022-09-30 22:00:28 阅读 6082

郑州航空工业管理学院。

eda技术及应用》

课程设计报告。

届通信工程专业班级。

题目。姓名。

学号。同组人。

指导老师。201 年月日。

目录。1、设计要求03

2、设计规划方案04

1试验箱部分04

1整体规划04

2功能划分与模块划分05

3各模块的实现方法、技术、要点08

4程序的编写09

5**与调试14

2实验板部分15

1整体规划15

2程序的编写15

3**与调试17

4设计**现的问题及优化与改进17

3、任务完成情况及个人心得体会18

4、指导老师评价19

注意:后面所附程序仅供参考,为减小**文件大小,此程序中将交通灯的周期进行了压缩,为主干道红灯4s黄灯2s绿灯4s,次干道红灯6s黄灯2s绿灯2s,可根据实际要求进行修改。

一、设计要求。

1、基本要求:

1、主干道通行(绿灯):主干道行车4秒;支路红灯,停车6s,数码管显示倒计时的秒,秒计时的频率为1hz。

2、主干道缓冲(黄灯):2秒,不显示计数,秒计时的频率为1hz。

3、支路通行(绿灯):2秒,主干道红灯,数码管显示倒计时的秒,秒计时的频率为1hz。

4、支路缓冲(黄灯):2秒,不显示计数,秒计时的频率为1hz。

数码管采用动态显示。

2、其他要求:

1、晶振为12 mhz。

2、采用cpld 器件为max7000ae 的epm7064ael144_7。

3、采用数码管显示。

二、设计方案规划。

1、实验箱部分。

1>、整体规划(确定输入与输出)

a、实验箱管脚。

input clk_lk,一个时钟输入。

output[7:0] seg,控制数码管显示数据。

output[7:0] dig,控制4个数码管的输出,高2位输出支路计时,低2位输出主干路计时。

output[5:0] led,控制着主干路和支路的6个灯。

2> 功能划分与模块划分。

本程序由分频器,数码管动态显示程序,计数器,灯转换控制电路实现,可以大致分为4个模块或者4个过程语句实现。第一部分实现分频功能,第二部分实现路灯控制功能,第三部分实现计时转换功能。

各功能和各模块的功能细分。

本程序主要由3个always过程块实现,其中第一个always块实现分频功能,if(clk_cnt==24'd1***代表晶振为12mhz;第二个always过程块用来实现a方向灯控制,第三个always块用来实现b方向灯控制。其中,第二个和第三个always块用来处理交通灯的计时,灯转换过程,是本程序的主要部分,其功能影响本程序的准确性,计数大致如图:

3>各模块的实现方法,技术、要点。

第一个always过程块实现分频,可以用一个12mhz分频器来实现,其中sec为分频器的输出端,以后调用sec实现分频功能,count为计数寄存器,用来计数12m,每计12m个数后就将sec取反用来表示分频结果;

第二个always块用来显示数码管动态扫描,将miao定义为输入要显示的数据,第一个case(count[16:15])选择扫描显示数据,第二个case(count[16:15]) 选择数码管显示位,两位可以有4种选择0,1,2,3分别对应4种不同状态;

第四个always块用来实现路灯控制以及计数,其中if(lampa==0)代表主干路,if(lampb==0)代表支路,lamp=3'bxxx代表要显示的灯,这里用代替实际交通灯,agreen,ayellow,ared分别代表主干绿灯,黄灯,红灯,bgreen,byellow,bred分别代表支路绿灯,黄灯,红灯,numa或numb可以用来表示一种计数状态,满足这种状态时可以改变灯的颜色以及计数时间。

4>程序的编写。

交通灯控制模块。

module

traffic(clk_lk,rst,clk,lampa,lampb,acount,bcount);

input clk_lk,rst,clk;//产生系统时钟,复位信号,1s时钟信号。

output[2:0] lampa,lampb;//led灯(红黄绿)

output[7:0] acount,bcount;//数码管倒计时显示。

reg[2:0]lampa,lampb;

reg[7:0]numa,numb;

reg tempa,tempb;

reg[2:0] statea,stateb;//led灯控制。

parameter ared=8'h4,ayellow=8'h2,agreen=8'h4,bred=8'h6,byellow=8'h2,bgreen=8'h2;//初始值。

assign acount=numa;

assign bcount=numb;

always@(posedge clk_lk or negedge rst)

beginif(!rst)

beginstatea<=3'h0;

lampa<=3'b011;

tempa<=1'b0;

endelse if(clk)

beginif(!tempa)//a方向灯控制。

begintempa<=1'b1;

case(statea)

0:begin numa<=agreen;lampa<=3'b011;statea<=1;end

1:begin numa<=ayellow;lampa<=3'b101;statea<=2;end

2:begin numa<=ared;lampa<=3'b110;statea<=0;end

default:lampa<=3'b110;

endcase

endelse

begin//倒计时。

if(numa>1)

if(numa[3:0]==0)

beginnuma[3:0]<=4'h9;

numa[7:4]<=numa[7:4]-4'h1;

endelse

numa[3:0]<=numa[3:0]-4'h1;

if(numa==2)

tempa<=1'b0;

endend

endalways@(posedge clk_lk or negedge rst)

beginif(!rst)

beginlampb<=3'b110;

stateb<=3'h0;

tempb<=1'b0;

endelse if(clk)

beginif(!tempb)//b方向灯控制。

begintempb<=1'b1;

case(stateb)

0:begin numb<=bred;lampb<=3'b110;stateb<=1;end

1:begin numb<=bgreen;lampb<=3'b011;stateb<=2;end

2:begin numb<=byellow;lampb<=3'b101;stateb<=0;end

default:lampb<=3'b110;

endcase

endelse

begin//倒计时。

if(numb>1)

if(numb[3:0]==0)

beginnumb[3:0]<=4'h9;

numb[7:4]<=numb[7:4]-4'h1;

endelse

numb[3:0]<=numb[3:0]-4'h1;

if(numb==2)

tempb<=1'b0;

endend

endendmodule

数码管显示控制模块。

module traffic_test(clk_lk,clk,rst,acount,bcount,seg,dig);

input clk_lk;

input rst;

output clk;

input[7:0] acount;

input[7:0] bcount;

output[7:0] seg;

output[7:0] dig;

reg[7:0]seg;

reg[7:0]dig;

reg[25:0]clk_cnt;

reg[16:0]count;

reg[1:0]cnt;

reg[3:0]disp_dat;

always@(posedge clk_lk)

beginif(clk)

clk_cnt<=26'h1;

elseclk_cnt<=clk_cnt+26'h1;

endassign clk=(clk_cnt>=26'd4***

always@(posedge clk_lk)

begincount<=count+1'b1;

endassign div_clk=&count;

always@(posedge clk_lk)

beginif(div_clk)

cnt<=cnt+1'b1;

endalways@(posedge clk_lk)

beginif(div_clk)

begincase(cnt)

2'd0:disp_dat<=acount[7:4];/选择数码管。

2'd1:disp_dat<=acount[3:0];

2'd2:disp_dat<=bcount[7:4];

EDA课程设计 交通灯

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

EDA交通灯课程设计

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

交通灯EDA课程设计

eda交通灯设计。学院 信息工程学院。班级 学号 姓名 目录。第一章设计原理 1 第二章设计流程 2 第三章程序设计说明 3 3.1 程序设计流程图 3 3.2 分频模块 3 3.3 特殊功能及清零模块 4 3.4 交通灯运行模块 4 3.5 扫描显示模块 6 第四章 及调试 8 4.1调试步骤 8...