《2022年2022年基于VHDL状态机的交通灯控制器设计 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年基于VHDL状态机的交通灯控制器设计 .pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于 VHDL状态机的交通灯控制器设计0 引言交通灯是城市交通监管系统的重要组成部分,对于保证机动车辆的安全运行,维持城市道路的顺畅起到了重要作用。本文在 VHDL状态机的基础上, 利用 FPGA的相关知识设计了交通灯控制系统。可以根据实际情况对灯亮时间进行自由调整,整个设计系统通过QuartusII软件平台进行了模拟仿真,并下载到FPGA器件中进行硬件的调试,验证了设计的交通信号灯控制电路完全可以实现预定的功能,具有一定的实用性。1 设计要求有一条主干道和一条支干道的汇合点形成的十字路口,为确保车辆安全, 迅速通行,在干道和支道的入口设置了红、绿( 包括直行和左拐) 、黄 3 色信号灯 (
2、如图 1 所示 ) 。图 1 十字路口交通灯示意图设计要求: (1)A方向和 B方向各设红 (R) 、黄(Y) 、绿(G) 、和左拐 (L) 四盏指示灯; (2) 四种灯按合理的顺序亮灭,并能将灯亮的时间以倒计时的形式显示出来; (3) 主、支干道交替通行,假设B方向是主干道, 车流量大,因此B方向通行的时间应比 A方向长一些。 B方向每次放行40 秒, A方向每次放行30 秒,在每次亮绿灯、左拐灯与红灯的转换过程中,亮5 秒的黄灯作为过渡; (4) 两个方向各种灯亮的时间应该能够进行非常方便的设计和修改; (5) 上电复位后,主干道先通行。2 VHDL设计实现 2 1 系统整体设计该系统主要
3、由控制模块、分频模块以及显示电路构成。其中分频模块主要将系统输入的基准时钟信号转换为1 HZ 的激励信号,驱动控制模块工作。控制模块根据计数情况对交通灯的亮灭及持续时间进行控制,并将灯亮时间以倒计时的形式通过数码管显示出来。其中 Reset 是复位信号,高电平有效。 2 2 分频模块设计名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 4 页 - - - - - - - - - 在红绿灯交通信号系统中,电路必须给一个稳定的时钟源才能够使系统正常运行。用晶振电路提供4 MHz
4、的稳定时钟信号,把其分频为1 HZ 脉冲信号,原理是用VHDL语言if elsif的并行运行关系,把分频频数的前半部分进行计数并置高电平“1”,把分频频数的后半部分进行计数并置低电平“0”,最后输出即为1 Hz 时钟信号。 2 3 控制模块的设计与仿真根据交通灯控制器要实现的功能,考虑用状态机来控制A和 B两个方向的四盏灯,状态机控制一个方向的四种灯按如下顺序点亮,并往复循环: 绿灯黄灯左拐灯黄灯红灯, 并且个方向为非红灯时,另一个方向一定为红灯,此状态机有8 个状态, 其示意图如图 2。图 2 状态机示意图当计数时间不到时转向自身,当计数时间到时转向下一状态。S000状态表示 B道路( 主干
5、道 ) 亮绿灯,A道路( 支干道 ) 亮红灯,此时 B道路可以过车辆, 人行道可以过行人;S001状态表示B道路亮黄灯, A道路亮红灯,提醒车辆和行人马上要禁行了;S010状态表示B道路亮左拐灯, A道路亮红灯,此时B道路的车辆可以拐向A道路,人行道禁行; S011状态表示 B道路亮黄灯, A道路亮红灯,提醒车辆马上要禁行了;S100 状态表示 B道路亮红灯,A道路亮绿灯,此时A道路可以过车辆,人行道可以过行人;S101 状态表示 B道路亮红灯,A道路亮黄灯,提醒车辆和行人马上要禁行了;S110 状态表示 B道路亮红灯, A道路亮左拐灯,此时 A道路的车辆可以拐向B道路, 人行道禁行; S11
6、1状态表示B道路亮红灯, A道路亮黄灯,提醒车辆马上要禁行了。为便于显示灯亮的时间,计数时采用分位输出,输出均采用BCD码,显示由数码管完成。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 4 页 - - - - - - - - - 主程序如下:3 编译并下载验证在 QuartusII软件平台上设定可编程器件引脚,编译后生成pod 文件,下载到可编程器件中,本设计已下载到MAX7000S 系列的 EPM7128SLC84-15芯片中,通过实验系统得到验证。4 硬件实现名师
7、资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 4 页 - - - - - - - - - 利用 Protel 99 SE画出原理图 ( 见图 3)。采用 5 V 电源供电,图3 右上角为电源模块,最下面为数码管模块,中间为 EPM7128SLC84-15芯片,芯片上方为晶振电路,提供 4 MHz的时钟脉冲,芯片左右为发光二极管,用来表示交通灯,左上角为下载电路。图 3 交通灯原理图图 4 为 PCB制板和装配好的实物图。图 4 交通灯电路板5 结束语本系统借助CPLD FPGA 器件及其支撑软件,快速、明确地完成了对交通灯的控制功能,在本文中采用VHDL 语言设计交通灯控制系统,借助其功能强大的语言结构,简明的代码描述复杂控制逻辑设计,与工艺无关特性,在提高工作效率的同时达到求解目的,并通过VHDL语言的综合工具进行相应硬件电路生成,具有传统逻辑设计方法所无法比拟的优越性。这种设计方法使设计人员摆脱了电路细节的束缚,效率高、可靠性好、成本低。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 4 页 - - - - - - - - -
限制150内