当前位置:文档之家› 交通灯控制程序

交通灯控制程序

1引言 (2)1.1编写目的 (2)1.2背景 (2)1.3定义 (2)1.4参考资料 (2)2总体设计 (3)2.1需求规定 (3)2.2运行环境 (3)2.3基本设计概念和处理流程 (3)2.4结构 (5)2.5功能器求与程序的关系 (5)2.6人工处理过程 (5)2.7尚未问决的问题 (5)3接口设计 (5)3.1用户接口 (5)3.2外部接口 (6)3.3内部接口 (6)4运行设计 (7)4.1运行模块组合 (7)4.2运行控制 (7)4.3运行时间 (7)5系统数据结构设计 (7)5.1逻辑结构设计要点 (7)5.2物理结构设计要点 (8)5.3数据结构与程序的关系 (8)6系统出错处理设计 (8)6.1出错信息 (8)6.2补救措施 (8)6.3系统维护设计 (8)概要设计说明书1引言1.1编写目的创建一个可供日常交通灯使用的程序,目标读者为交通灯控制人员。

1.2背景说明:a.交通路口复杂交通信号灯的设计b.任务提出者,开发者:陈磊用户:交通指挥系统设计环境:使用Verilog HDL语言进行设计使用Quartus 2编程环境进行开发。

1.3定义ORDER 选择信号ROAD 亮灯控制信号EN5 5秒延时使能信号LIN5 5秒延时终止信号EN25 25秒延时使能信号LIN25 25秒延时终止信号RST 系统复位信号CLK 系统时钟信号1.4参考资料Verilog HDL数字系统设计与应用2总体设计2.1需求规定输入项目:CLK 系统时钟信号RST 系统复位信号输出项目:ROAD 亮灯控制信号,ROAD=00,红灯亮;ROAD=01,黄灯亮;ROAD=10,绿灯亮;ROAD=11,黄灯亮。

处理要求:根据ORDER的不同值,使相应的灯发亮。

2.2运行环境运行环境:。

Quartus II 9.02.3基本设计概念和处理流程2.4结构ORDER 选择某一灯的选择变量ROAD 控制某一灯亮的控制变量2.5功能器求与程序的关系2.6人工处理过程人工输入ORDER的值,根据ORDER的不同值,相应的灯变亮2.7尚未问决的问题创建一个稳定的时钟源3接口设计3.1用户接口light(red,amber,green,0,order)ORDER为控制变量,由它决定让哪一盏灯发亮。

ROAD=100,则红灯亮;ROAD=010,则绿灯亮;ROAD=001,则黄灯亮;3.2外部接口CLK 外部时钟源信号RST 计时程序使能信号ROAD 控制哪一盏灯发亮的信号3.3内部接口根据ORDER的不同取值,在下面这段程序中,case(order)0: beginroad='b100;en25<=1; en5<=0;if(lin25==1) order<=1;end1: beginroad='b010;en25<=0; en5<=1;if(lin5==1) order<=2;end2: beginroad='b001;en25<=1; en5<=0;if(lin25==1) order<=3;end3: beginroad='b010;en25<=0; en5<=1;if(lin5==1) order<=0;endendcase4运行设计4.1运行模块组合ORDER=0时,ROAD=100,调用模块TIMER25,红灯亮ORDER=1时,ROAD=010,调用模块TIMER5,黄灯亮ORDER=2时,ROAD=001,调用模块TIMER25,绿灯亮ORDER=3时,ROAD=010,调用模块TIMER5,黄灯亮4.2运行控制ORDER=0时,ROAD=100,调用模块TIMER25,红灯亮ORDER=1时,ROAD=010,调用模块TIMER5,黄灯亮ORDER=2时,ROAD=001,调用模块TIMER25,绿灯亮ORDER=3时,ROAD=010,调用模块TIMER5,黄灯亮4.3运行时间运行模块将始终占用CPU5系统数据结构设计5.1逻辑结构设计要点ORDER 选择变量用于选择让哪一盏灯亮ROAD=100,则红灯亮;ROAD=010,则绿灯亮;ROAD=001,则黄灯亮;5.2物理结构设计要点ORDER 2位寄存器变量每次存取要存取全部2位ROAD 3位寄存器变量,每次存取要存取全部3位5.3数据结构与程序的关系ORDER 2位寄存器变量每次存取要存取全部2位ROAD 3位寄存器变量,每次存取要存取全部3位6系统出错处理设计6.1出错信息1.系统开始运行时RST!=0,即系统没有复位,即开始运行,此时会导致出错。

2.系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况下延时程序会工作不正常,使延时时间延长或缩短。

6.2补救措施故障1:使RST初始时为0,过一段时间后再将RST置1。

故障2:寻找一个工作稳定的时钟源作为系统的时钟源。

6.3系统维护设计1.系统开始运行时RST!=0,即系统没有复位,即开始运行,此时会导致出错。

2.系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况下延时程序会工作不正常,使延时时间延长或缩短。

设计需求说明书2任务概述112.1目标 (11)2.2用户的特点 (11)2.3假定和约束 (11)3需求规定错误!未定义书签。

3.1对功能的规定................................................................................... 错误!未定义书签。

3.2对性能的规定 (12)3.2.1精度 (12)3.2.2时间特性要求 (12)3.2.3灵活性 (12)3.3输人输出要求 (13)3.4数据管理能力要求 (13)3.5故障处理要求 (13)3.6其他专门要求 (13)4运行环境规定134.1设备 (13)4.2支持软件 (14)4.3接口 (14)4.4控制 (14)需求分析说明书的编写提示2任务概述2.1目标该项目开发的意图是为了设计一个可供日常指挥交通使用的交通灯程序,应用目标是用来控制各种交通灯的运行,可以作用在各种类型的交通灯上。

该项目的代码主要是我根据书上已有的一部分资料,再加上自己在网上搜索得到的一些代码,将两者综合以后写出来的|2.2用户的特点该项目的应用对象—交通灯的主要特点如下:1.任意时刻只能有一只灯(红、黄或绿灯)亮。

2.任意时刻必须有一只灯亮,不能三盏灯全是灭的。

3.任一只灯亮了一定时限后必须熄灭,不能一直亮着。

操作人员特点:交通灯一般都是根据程序自动运行的,因此,无操作人员。

维护人员特点:在机房维护交通灯控制程序的人员一般都是学习过编程控制原理的,因此,他们可以看懂程序如何控制交通灯运行的。

本课题预期使用频度:此交通灯控制程序属于24小时全天候运行类型的。

2.3假定和约束预期开发期限:10周。

经费限制:不需要经费。

order=00红灯亮order=01黄灯亮order=10绿灯亮order=11黄灯亮3.2对性能的规定3.2.1精度根据变量ORDER的值,即可使相应的灯变亮,不会出现差错。

3.2.2时间特性要求说明对于该项目的时间特性要求,如对:a.响应时间:根据设定的ORDER的值,立即跳转到相应状态。

b.更新处理时间:必须等待TIMER5或TIMER25延时结束以后,才能进行更新c.数据的转换和传送时间:ORDER设定好以后,立即进行转换,无延迟。

d.解题时间:立即转换,没有延迟。

3.2.3灵活性a.操作方式上的变化:没有影响b.运行环境的变化:没有影响c.同其他系统的接口的变化:没有影响d.精度和有效时限的变化:没有影响e.计划的变化或改进:没有影响3.3输人输出要求输入项:ORDER:2位寄存器型变量,取值范围从00到11。

CLK:时钟源信号RST:延时程序使能信号输出项:ROAD:3位寄存器型变量,取值为100、010或0013.4数据管理能力要求需要管理的文卷个数为三个,一个是交通灯控制程序,一个是25秒程序,另一个是5秒延时程序,两个文卷的大小均在300k以内。

3.5故障处理要求1.系统开始运行时RST!=0,即系统没有复位,即开始运行,此时会导致出错。

2.系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况下延时程序会工作不正常,使延时时间延长或缩短。

3.6其他专门要求要有一个稳定的时钟源,这样才能保证某一灯亮后,等待5秒或25秒以后,按照程序的设定,使下一盏灯变亮。

4运行环境规定4.1设备a.处理器型号为8086,内存容量100MBb.外存容量100MB、联机方式、存储格式为二进制文件、设备的型号为ACEX1K;c.输入及输出设备的型号为ACEX1K,联机方式;d.数据通信设备的型号为ACEX1K,数量1只;e.无功能键;4.2支持软件支持软件:Quartus II 9.04.3接口串口通信协议。

4.4控制根据ORDER的值不同,使不同的灯发亮,所以控制信号即为ORDER。

ORDER的值由计算机自动进行变换。

2所设计系统的结构 (16)3模块1(标识符)设计说明 (17)3.1模块描述 (17)3.2功能 (17)3.3性能 (18)3.4输人项 (19)3.5输出项 (19)3.6算法 (19)3.7流程逻辑 (19)3.8接口 (20)3.9存储分配 (21)3.10注释设计 (21)3.11限制条件 (21)3.12测试计划 (21)3.13尚未解决的问题 (22)4模块2(标识符)设计说明 (22)2所设计系统的结构3模块1(标识符)设计说明3.1模块描述根据ORDER的不同值选择让不同的灯发亮,如果ORDER=00,则红灯亮;如果ORDER=01,则黄灯亮;如果ORDER=10,则绿灯亮;如果ORDER=11,则黄灯亮。

程序常驻内存,不可重入,是顺序处理。

3.2功能该系统功能如下:1.系统启动,各项复位2.红灯亮,延时25秒3.黄灯亮,延时5秒4.绿灯亮,延时25秒5.黄灯亮,延时5秒6.返回2继续运行3.3性能程序设计好以后,在运行期间,未发生出错的情况。

3.4输人项CLK 系统时钟信号RST 系统复位信号3.5输出项ROAD 亮灯控制信号,ROAD=00,红灯亮;ROAD=01,黄灯亮;ROAD=10,绿灯亮;ROAD=11,黄灯亮。

3.6算法本程序使用一个CASE(ORDER)多重选择结构,根据ORDER的不同值,ROAD被赋给不同的值,具体设置如下所示:ORDER=00 红灯亮ORDER=01 黄灯亮ORDER=10 绿灯亮ORDER=11 黄灯亮3.7流程逻辑3.8接口3.9TIMER25模块:20%的存储空间3.10注释设计ORDER 选择信号ROAD 亮灯控制信号EN5 5秒延时使能信号LIN5 5秒延时终止信号EN25 25秒延时使能信号LIN25 25秒延时终止信号RST 系统复位信号CLK 系统时钟信号3.11限制条件必须要有一个稳定的时钟源,否则可能导致程序运行不正常。

相关主题