EDA课设-交通灯-报告-终结版2.doc
文本预览下载声明
设计题目: 交 通 灯
姓 名:
学 号:
专 业:
班 级:
同 组:
指导教师:
日 期: 2013-01-10
摘要
本课程设计侧重于逻辑电路设计同时采用VHDL硬件描述语言辅助完成对十字路口交通灯电路的功能仿真。在设计过程中,重点探讨了交通灯控制系统的设计思路和功能模块的划分,对设计过程中出现的问题详细进行。系统主要由四个模块组成:、、
关键词:交通灯 功能模块 VHDL语言
实现路口交通灯系统的控制方法很多,可以用标准逻辑器件、可编程序控制器和单片机等方案来实现但这些控制方法的功能修改及调试需要硬件电路的支持,在一定程度上增加了功能修改及系统的困难。
50MHz
50MHz 1HZ
支干道车辆检测
50MHz 数码管及LED信号
系统的状态图如下所示
根据以上设计思路,可以得到如下的顶层文件原理图
顶层文件的实体图:
单元模块设计与仿真
§3.1时钟分频模块
系统的动态扫描需要50MHz的脉冲,而系统时钟计时模块需要1HZ的脉冲。分频模块主要为系统提供所需的时钟计时脉冲。该模块将50MHz的脉冲信号进行分频,产生1S的方波,作为系统时钟计时信号。其实体模块如下:
仿真波形如下:
可以看到能够得到1s的时钟脉冲
§3.2交通灯控制及计时模块
控制模块根据外部输入信号和计时模块产生的输出信号,产生系统的状态机,控制其他部分协调工作。计时模块用来设定主干道和支干道计时器的初值,并为扫描显示译码模块提供倒计时时间。
控制及计时模块采用状态机进行设计,可以定义出8种状态,分别为S1:主干道红灯,支干道绿灯;S2:主干道红灯,支干道黄灯;S3:主干道红灯,支干道左转;S4:主干道红灯,支干道黄灯;S5:主干道绿灯,支干道红灯;S6:主干道黄灯,支干道红灯;S7:主干道左转,支干道红灯;S8:主干道黄灯,支干道红灯。利用CASE语句定义状态的转换方式及时间的变换方式,达到主干道绿灯亮60秒,支干道绿灯亮50秒,黄灯亮5秒的设计要求。
其实体模块如下:
CAR为支干道车辆检测开关
在支干道有车的情况下,模块可以进行减计时
CLK1S为1S的时钟脉冲
TIME1H、TIME1L、TIME2H、TIME2L分别为主干道时钟高位、主干道时钟低位、支干道时钟高位、支干道时钟低位
LED为LED灯发光情况,分别为主干道绿灯、主干道黄灯、主干道红灯、支干道绿灯、主干道黄灯、主干道红灯
Count的总的系统时间,用来改变系统的状态
仿真波形如下:
通过仿真可以看到:
1)当主干道红灯,支干道绿灯时,主干道倒计时高位置数0110,低位置数0000;支干道绿灯倒计时高位置数0100,低位置数0000;
2)当主干道红灯,支干道黄灯时,主干道继续刚才的减计数,支干道黄灯倒计时高位置数0000,低位置数0101;
3)当主干道红灯,支干道左转时,主干道继续刚才的减计数,支干道左转倒计时高位置数0001,低位置数0000;
4)当主干道红灯,支干道黄灯时,主干道继续刚才的减计数,支干道黄灯倒计时高位置数0000,低位置数0101;
5)当主干道绿灯,支干道红灯时,支干道继续刚才的减计数,主干道绿灯倒计时高位置数0100,低位置数0101;
6)当主干道黄灯,支干道红灯时,支干道继续刚才的减计数,主干道黄灯倒计时高位置数0000,低位置数0101;
7)当主干道左转,支干道红灯时,支干道继续刚才的减计数;主干道左转倒计时高位置数0001,低位置数0101;
8)当主干道黄灯,支干道红灯时,支干道继续刚才的减计数;主干道黄灯倒计 时高位置数0000,低位置数0101;
在S8状态结束后,自动跳回到S1状态,继续判断支干道是否有车行驶,
显示全部