数字电子技术课程设计报告纸交通灯控制器模版.docx

上传人:b****8 文档编号:30527073 上传时间:2023-08-16 格式:DOCX 页数:12 大小:394.27KB
下载 相关 举报
数字电子技术课程设计报告纸交通灯控制器模版.docx_第1页
第1页 / 共12页
数字电子技术课程设计报告纸交通灯控制器模版.docx_第2页
第2页 / 共12页
数字电子技术课程设计报告纸交通灯控制器模版.docx_第3页
第3页 / 共12页
数字电子技术课程设计报告纸交通灯控制器模版.docx_第4页
第4页 / 共12页
数字电子技术课程设计报告纸交通灯控制器模版.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

数字电子技术课程设计报告纸交通灯控制器模版.docx

《数字电子技术课程设计报告纸交通灯控制器模版.docx》由会员分享,可在线阅读,更多相关《数字电子技术课程设计报告纸交通灯控制器模版.docx(12页珍藏版)》请在冰豆网上搜索。

数字电子技术课程设计报告纸交通灯控制器模版.docx

数字电子技术课程设计报告纸交通灯控制器模版

数字电子技术课程设计报告

题目:

基于FPGA的数字频率计设计

学年:

2011-2012学期:

2

专业:

电气工程及其自动化班级:

电气104

学号:

2010013919姓名陈威

指导教师:

洪群欢

时间:

12年2月13日~12年2月17日

 

浙江万里学院电子信息学院

目录

1设计任务与要求1

2系统设计总体方案1

3各模块电路具体实现2

3.1时钟分频模块2

3.2十进制减法计数模块3

3.3数码管显示及译码模块5

3.4交通信号灯电路模块6

3.5时序状态控制模块6

4设计测试结果9

5总结9

附录10

1设计任务与要求

本课题要完成的设计任务与要求如下:

(1)绿灯亮预设时间为25s,黄灯亮预设时间为3s,红灯亮预设时间为30s;

(2)预设时间通过数码管显示倒计时时间;

 

2系统设计总体方案

根据设计任务与要求,交通灯控制器系统主要有分频模块、十进制减法计数模块、数码管显示及译码模块、交通信号灯电路模块、时序状态控制模块等电路模块组成,其系统组成框图如图1所示。

图1交通灯控制器系统设计组成框图

各模块电路设计的主要思路和具体方案如下:

(1)时钟分频模块:

通过Verilog硬件描述语言、32.768K晶振、T触发器等不同方法分频得到1HZ的时钟信号;

(2)十进制减法计数模块:

通过应用VerilogHDL硬件描述语言和用74192来十进制设计减法计数模块;

(3)数码管显示及译码模块:

通过共阴数码管及共阴译码驱动电路实现倒计时计数的显示;

(4)交通信号灯电路模块:

在东南西北四个方向安装绿黄红三种颜色的LED灯,四条人行道上分别装上红绿灯,南北对应一组,东西一组,设计成一个模拟现实的道路交通灯;

(5)时序状态控制模块:

通过应用VerilogHDL硬件描述语言编写控制程序,控制整个系统。

3各模块电路具体实现

3.1时钟分频模块

方案一。

根据整个系统中各模块电路的需求,本模块主要实现将EDA实验板上50MHz晶振产生的时钟脉冲经过分频得到1Hz的时钟信号,考虑到应用触发器或计数器来设计,电路实现比较困难和繁琐,因此选择应用Verilog硬件描述语言来设计本模块电路,具体程序如下:

moduleclk_25(CLK_in,CLK_out);

inputCLK_in;

outputCLK_out;

regCLK_out;

reg[25:

0]temp;

always@(posedgeCLK_in)

begin

if(temp>=25000000)

begin

temp=0;

CLK_out=~CLK_out;

end

else

temp=temp+1;

end

endmodule

经过QuartusII软件编译综合后,电路的模块图如图2所示。

 

图2时钟分频模块电路图

方案二。

要获得1Hz的时钟脉冲,还可以应用EDA实验板上32.768K晶振产生的脉冲信号经过CD4060分频。

在实验板上已有4Hz的脉冲信号。

将4Hz的脉冲信号转化成1Hz,可以应用T触发器来分频,具体电路如图3。

图3由T触发器构成的时钟分频电路图

3.2十进制减法计数模块

方案一、用两片74192芯片来实现两位十进制减法计数,以完成设计要求的绿灯亮25秒,黄灯5秒,红灯30秒的倒计时计数项目。

下图预制数为30:

图474192设计的减法计数器电路图

方案二。

应用VerilogHDL硬件描述语言来设计本模块电路,具体程序如下:

modulejishu_25(clk,ld,a,q,cout);

inputclk,ld;

input[3:

0]a;

output[3:

0]q;

outputcout;

reg[3:

0]q;

regcout;

always@(posedgeclkornegedgeld)

begin

if(~ld)

beginq=a;

cout=1;

end

elseif(q>0)

beginq=q-1;

if(q==0)cout=1;

elsecout=1;

end

elseif(q==0)

beginq=9;cout=1;

end

end

endmodule

模块如图5:

 

3.3数码管显示及译码模块

根据7段共阴数码管的显示驱动电路有CD4511和7448,本模块电路选用CD4511作为显示译码驱动电路,具体电路原理图如图5所示。

图5倒计时显示译码模块电路图

3.4交通信号灯电路模块

本模块是整个系统的控制对象,也是系统设计的一个重要组成部分。

根据实际十字路口交通信号灯能按绿灯→黄灯→红灯循环显示,东西方向一组红、黄、绿灯和一对数码管;南北方向一组红、黄、绿灯和一对数码管;四条人行道两端的红、绿灯,组成交通灯系统,具体电路图如图6所示。

 

图6十字路口交通信号灯电路示意图

3.5时序状态控制模块

根据实际十字路口交通灯运行情况,本模块要实现控制红灯亮30秒,黄灯5秒,绿灯25秒,并且循环显示。

由于用芯片搭电路较为复杂,且易出现错误。

选择用Verilog编程语言编写,实现一种颜色灯的延时时间倒计时为零时,下一种灯亮且置数开始倒计时,依次循环显示,具体流程图如图7所示。

图7交通灯控制时序流程图

源程序:

modulecontrol_25(clk,JSin,LD,YS,LED);

inputclk;

input[7:

0]JSin;

outputLD;

output[7:

0]YS;

output[9:

0]LED;

regLD;

reg[7:

0]YS;

reg[9:

0]LED;

reg[1:

0]state;

always@(negedgeclk)

begin

if(JSin==0)LD=0;

elseLD=1;

end

always@(negedgeLD)

begin

state=state+1;

case(state)

0:

beginYS='b00100101;LED='b1000011001;end

1:

beginYS='b00000101;LED='b0100011001;end

2:

beginYS='b00110000;LED='b0011000110;end

3:

beginYS='b00000101;LED='b0010100110;end

endcase

end

endmodule

模块电路图:

4设计测试结果

将EDA-1实验板通过USB与电脑连接,编译好文件后,点击QuartusII软件引脚配置,通过查阅芯片引脚分配列表,将引脚配好。

配完后再编译一次,编译成功后,点QuartusII软件常用工具栏里的programmer,点开后,点start按钮即可完成下载。

交通灯电路板会通过EDA-1的扩展槽里获得控制信号,显示出交通灯的循环变化,而倒计时的数字显示则通过EDA-1实验板的数码管清楚看到。

对于测试中出现的问题,通过以模块为单位来排查解决。

5总结

这一周的实习,让我觉得还是有点难度的。

我感觉自己还得更加努力学习。

我相信自己一定会把数电这门学好的。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 冶金矿山地质

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1