基于fpga交通灯控制系统设计

基于fpga交通灯控制系统设计

ID:31776985

大小:57.33 KB

页数:4页

时间:2019-01-18

基于fpga交通灯控制系统设计_第1页
基于fpga交通灯控制系统设计_第2页
基于fpga交通灯控制系统设计_第3页
基于fpga交通灯控制系统设计_第4页
资源描述:

《基于fpga交通灯控制系统设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于FPGA交通灯控制系统设计【摘要】以可编程逻辑器件(FPGA)为载体,采用状态机的设计思想对十字路口交通灯的状态及其相互转移关系的描述,运用时序和组合逻辑等进程描述硬件模块间的逻辑关系,用Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage(简称VHDL)编程实现了十字路口交通的控制。经波形仿真,并下载到EPIC3T144C8芯片进行了硬件调试,达到了设定的功能仿真,整个程序设计思路清晰,硬件电路简单,实现过程灵活。【关键词】FPGA;状态

2、机;交通灯;VHDL1.引言目前在教学中运用软件实现交通灯的控制可以用标准逻辑器件、可编程序控制器PLC、单片机等方案来实现。但是这些方法在进行功能修改及调试时,都涉及硬件电路的调整,在一定程度上增加了工作的难度,另外对初学者而言,设计程序也有一定困难,采用可编程逻辑器件FPGA,应用状态机来设计控制系统的控制功能,可根据实际情况对灯亮时间进行自由调整,整个系统通过QuartusH9.0软件平台进行了仿真,同时下载到EP1C3T144C8中进行调试,验证了交通信号灯控制电路预定的功能。采取状态机进行控制,学生

3、容易接受。对初学者而言,有一定的指导意义。利用状态机设计一般步骤:首先将行为状态转换成符号状态,接着将符号状态转换成真值表,利用真值表列出状态转换的组合逻辑、时序逻辑关系,编写程序、芯片选择、引脚锁定和下载调试。1.交通灯行为分析任何模型和控制对象建立,均要找出运行规律,将行为语言转换为数字符号,以便于控制。下面以十字路口双向六车道为例介绍交通灯的控制情况,东西方向交通流直行即东西方向交通流左转,南北方向交通流直行,南北方向交通流左转,所有右转方向交通流不予控制。交通灯控制示意图如图1所示。图1双向六车道的示

4、意图根据交通运行规则,在十字路口双向六车道中有下列6种循环的工作状态,顺序为,顺序为:SO—SI—S2—S3—S4—S5。在各方向的交通灯运行状态有绿灯亮、黄灯亮、左转弯亮、红灯亮,详细情况如表1所示。表1交通灯的状态转换规律表工作状态东西方向符号时间(秒)南北方向符号时间(秒)SO绿灯亮GA40红灯亮GB60S1黄灯亮YA5红灯亮YBS2左转弯亮LTA15红灯亮LTBS3红灯亮RA60绿灯亮RB40S4红灯亮黄灯亮5S5红灯亮左转弯亮15为了便于利用状态机进行程序设计,用1表示指示灯亮,0指示灯灭,根据状态

5、转换规律转化成真值表如2所示。1.程序设计本设计选用有限状态机FSM(finitestatemachine)来进行设计,状态机,与可完成相同功能的CPU相比,有限状态机有其独特的、难以超越的优越性,利用VHDL的有限状态机设计不同实用逻辑控制系统时,通常采用枚举类型来定义状态机的状态,这样可以获得可综合的、高效的VHDL描述,并且使用多进程方式来描述状态机的内部逻辑。在程序设计中一般由说明部分、组合部分、时序部分组成,用TYPE定义新的数据类型和状态名,以及在此新数据下定义的状态变量。本设计采用状态机来进行顶

6、层文件的设计,状态机的说明语句如下:typestateis(SO,SI,S2,S3,S4,S5);signalpresentstate,nextstate:state;该程序结构体分成以下四个部分:3.1分频器秒脉冲的产生程序由于选择芯片的某引脚输出信号为4HZ,则进行四分频就可以得到1HZ的信号,elk定义为输入信号,sec为结构体时序转换的逻辑信号,则程序如下:get1hzclockpulseprocess(elk)begintmp2ififelk'eventandclk=Tthenqtimeoutl='

7、0,thennextstate

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。