基于fpga的交通灯控制器设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2011-2012学年度第二学期

电子技术基础课程设计交通灯控制器设计

院系:控制科学与工程系

专业:测控技术与仪器

班级:0901

姓名:

学号:

指导教师:

目录

一设计内容与要求 (3)

二、交通灯系统的设计过程 (3)

三、交通灯控制系统的结构 (3)

四、QUARTUSⅡ验证与仿真

4.1 运行模块仿真 (7)

4.2 设置模块仿真 (8)

五、管脚分配及下载 (9)

六、程序代码 (10)

七、心得体会 (14)

一、设计内容与要求

①设计一个十字路口交通信号灯的控制电路。要求红、绿灯按一定的规律亮和灭,并在亮灯期间进行倒计时,且将运行时间用数码管显示出来。

②绿灯亮时,为该车道允许通行信号,红灯亮时,为该车道禁止通行信号。要求主干道每次通行时间为Tx秒,支干道每次通行时间为Ty秒。每次变换运行车道前绿灯闪烁,持续时间为5秒。即车道要由X转换为Y时,X在通行时间只剩下5秒钟时,绿灯闪烁显示,Y仍为红灯。

③可以对X,Y车道上交通灯运行的时间进行重新设置,

20≦Tx≦99 ,10≦Ty≦39

④对器件进行在系统编程和实验验证。

⑤写出设计性实验报告,并打印各层次的源文件和仿真波形,然后作简要说明。

二、交通灯系统的设计过程

2.1 经分析,系统的总体结构可以描述为下述的方框图:

2.2 交通灯控制器的控制过程分为四个阶段,对应的输出有四种状态,分别用S 0 (00), S 1 (01), S 2 (10)和S 3 (11)表示:

S0状态:主干道绿灯亮,支干道红灯亮,在主干道绿灯亮了(Tx-5)s 后,控制器发出状态转换信号St ,输出从状态S0转换到S1;

S1状态:主干道绿灯闪烁时间Tf (5S ),支干道红灯亮,进入此状态后,绿灯闪烁足够时间间隔Tx 时,控制器发出状态转换信号St ,输出从状态S1转换到状态 S2;

S2状态:主干道红灯亮,支干道绿灯亮,在支干道绿灯亮了(Ty-5)s 后,控制器发出状态转换信号St ,输出从状态S2转换到S3;

S3状态:主干道红灯亮,支干道绿灯闪烁5S ,进入此状态后,绿灯亮足够时间间隔Ty 时,控制器发出状态转换信号St ,输出从状态S3回到状态 S0;

由上述的状态描述可以得到如下的系统ASM 图及状态转换图:

以下是系统的状态转换图:

交通灯控制电路状态转换图

输入输出

现态状态转换条件次态状态转换标志

n Q

1

n

Q

0x

T

f

T y T1

1

+

n

Q1

+

n

Q

t

S

0 0 0 ××0 0 0

0 0 1 ××0 1 1

0 1 ×0 ×0 1 0

0 1 × 1 × 1 1 1

1 1 ××0 1 1 0

1 1 ×× 1 1 0 1

1 0 ×0 × 1 0 0

1 0 × 1 ×0 0 1

控制器真值表

三、交通灯控制系统的结构

此系统分为两个模块:设置模块和运行模块。运行模块负责交通灯的正常亮和灭,设置模块负责主干道和支干道的红绿灯闪亮时间的设置。

3.1 运行模块

运行模块系统输入输出的方框图如下:

系统的输入输出描述如下:

输入:

CLK:系统时钟,在这里为50MHz;

RESET:复位信号,低电平有效,有效时,TX,TY复位为初始值,这里分别默认为30S,16S;

SET_TYPE:设置类型信号,若为0,则设置的是主干道的绿灯时间TX;若为1,则设置的是支干道的绿灯时间TY;

UP_DOWN:设置方式信号,若为0,则为减设置;若为1,则为加设置;SET_ENABLE:设置使能信号,在它的每一个上升沿进行一次加或者减设置;输出:

H_NUM: 8位计数信号,显示主干道和支干道的时间;

H_LIGHT:两位主干道灯的显示信号,高位为红灯,低位为绿灯;为0表示灭,为1表示亮;

F_LIGHT:两位支干道灯的显示信号,高位为红灯,低位为绿灯;为0表示灭,为1表示亮;

TXY:时间设置显示信号,当设置的是主干道绿灯时显示主干道即时的TX;

当设置的是主干道绿灯时显示支干道即时的TY;

3.2 设置模块

设置模块系统输入输出的方框图如下:

系统的输入输出描述如下:

输入:

RESET:复位信号,低电平有效,有效时,TX,TY复位为初始值,这里分别默认为40S,16S;

SET_TYPE:设置类型信号,若为0,则设置的是主干道的绿灯时间TX;若为1,则设置的是支干道的绿灯时间TY;

UP_DOWN:设置方式信号,若为0,则为减设置;若为1,则为加设置;

SET_ENABLE:设置使能信号,在它的每一个上升沿进行一次加或者减设置;

输出:

TX: 8位时间信号,表示主干道设置后的绿灯亮的时间;

TY: 8位时间信号,表示支干道设置后的绿灯亮的时间;

注:若需要下载时,则考虑到数码管的显示问题,输出端口的说明有所不同,在这里的端口说明是仿真时的端口说明。

四、QUARTUSⅡ验证与仿真

4.1 运行模块仿真

输入信号仿真参数设置:CLK为秒脉冲信号,SET_TYPE、UP_DOWN、SET_ENABLE都为低电平,即在这里没有进行设置部分的仿真。

仿真结果如下图所示:

由上图仿真结果可以看出,主干道和支干道红绿灯亮、闪亮、灭均正常,计时由30-16-30s循环正常计时,设计目的得到验证。

4.2 设置模块仿真

相关文档
最新文档