交通灯控制系统设计。
一、需求分析。
交通灯控制系统功能如下:
1、 交通指示灯控制:分别控制左拐灯,绿灯,黄灯和红灯。变化流程如图1所示。
绿灯亮40秒黄灯亮5秒。
左拐灯亮15秒。
红灯亮55秒黄灯亮5秒。
图12、 用数码管实现亮灯倒计时显示。
二、程序设计。
根据功能分析,设计的verilog hdl源程序如下:
module traffic(clk,en,lamp,acount);
output[7:0] acount; /用于交通灯的时间显示,宽8位,可驱动2个数码管;
output[3:0] lamp;
input clk,enclk为同步时钟,en为使能信号,为1,则控制器开始工作;
reg[7:0] num;
reg temp用于控制倒计时和各交通灯之间的转换,为0则转换交通灯,为1则进入倒计时;
reg[2:0] count; /用于交通灯的显示顺序;
reg[7:0] red,yellow,green,left,red;
reg[3:0] lamp; /控制四盏灯的亮灭;其中,lamp0~la***分别控制左拐灯,绿灯,黄灯和红灯;
always @(en)
if(!en)
begin设置各种灯的计数器的预置数
red<=8'b01010101; /55s
yellow<=8'b00000101; /5s
green<=8'b01000000; /40s
left<=8'b00010101; /15s
endassign acount=num;
always @(posedge clk)
begin
if(en)
beginif(!temp)
begintemp<=1;
case(count) /控制亮灯的顺序;
0:begin num<=green;lamp<=2;count<=1;end
1:begin num<=yellow;lamp<=4;count<=2;end
2:begin num<=left;lamp<=1;count<=3;end
3:begin num<=yellow;lamp<=4;count<=4;end
4:begin num<=red;lamp<=8;count<=0;end
default:begin num<=green;lamp<=2;count<=1;end
endcase
endelse begin //倒计时;
if(num>1)
if(num[3:0]==0)begin
num[3:0]<=4'b1001;
num[7:4]<=num[7:4]-1;
endelse num[3:0]<=num[3:0]-1;
if(num==2) temp<=0;
endend
else begin
lamp<=4'b1000;
count<=0;temp<=0;
endend
endmodule
三、**验证。
利用quartusⅱ进行**,具体步骤和结果如下。
设计输入 1、 编辑设计文件。
建立工作库目录文件夹。
输入源程序。
2、 建立工程目录。
将设计文件加入工程中。
选择目标芯片。
编译综合。启动全程编译,编译成功后的工程管理窗口如图2所示。
图2**测试。
1、 建立**测试波形文件。
设计**时间区域、输入输出节点、输入信号波形,如图3所示:
图32、 启动**器。
**结果如图4所示:
图4四、**波形分析。图5图6
图5、图6为lamp=0010(绿灯亮)的**波形,由波形分析得,绿灯亮时,account=01000000每经过1秒,account值减1,实现了亮灯倒计时;当lamp从0010变为0100时,经过40秒,以设计符合。其他亮灯时间也与设计一致。
图7如图7所示,lamp变化顺序如下,与绿灯、黄灯、左拐、黄灯、红灯、绿灯相对应,变化顺序与设计一致。
五、硬件测试。
1、确定引脚编号如图。
2、编程**。
六、设计总结。
本设计通过程序设计并进行**分析验证,并**到硬件上测试,完成了交通灯控制系统的设计,符合设计的需求。
七、设计感想。
本次课程设计完成了对交通灯控制系统的设计,通过功能需求分析,再程序设计,再软件**验证,最后硬件测试验证。深入了解了设计的一般过程,熟悉quartusⅱ软件的使用,对以后设计打下了一定的基础。不过这个设计还不够完善,如只是对交通灯单向设计,今后还要继续深入设计完善。
EDA课程设计
题目一 数字钟设计 学号1 15 一 实验目的。学习并掌握数字钟的原理 设计方法。二 实验内容。计数始终由模60秒计数器 模60分计数器 模24小时计数器 报时模块 分 时设定模块及输出显示模块构成。可以采用同步计数器或异步计数器设计方法。三 实验要求。计时范围为0小时0分0秒至23小时59分59秒...
eda课程设计
哈尔滨工业大学 威海 信电学院电子信息工程。一 软硬件介绍。1软件部分介绍。1.1 quartus ii 是altera公司的综合性pld fpga开发软件,支持原理图 vhdl veriloghdl以及ahdl altera hardware description language 等多种设计输...
eda课程设计
目录。1 引言 2 1.1 课程设计的目的与任务 2 1.2 课程设计的内容 2 1.3课程设计仪器设备 2 1.4 课程设计的题目 2 1.5 方案的选择 2 2设计方案 3 2.1 设计原理 3 2.2各功能模块的原理及其源程序 3 2.2.1控制模块 3 2.2.2分频模块 4 2.2.3计时...