交通灯控制程序.docx
- 文档编号:312888
- 上传时间:2022-10-08
- 格式:DOCX
- 页数:23
- 大小:234.97KB
交通灯控制程序.docx
《交通灯控制程序.docx》由会员分享,可在线阅读,更多相关《交通灯控制程序.docx(23页珍藏版)》请在冰豆网上搜索。
交通灯控制程序
1引言2
1.1编写目的2
1.2背景2
1.3定义2
1.4参考资料2
2总体设计2
2.1需求规定2
2.2运行环境2
2.3基本设计概念和处理流程3
2.4结构3
2.5功能器求与程序的关系3
2.6人工处理过程3
2.7尚未问决的问题3
3接口设计3
3.1用户接口3
3.2外部接口3
3.3内部接口4
4运行设计4
4.1运行模块组合4
4.2运行控制4
4.3运行时间4
5系统数据结构设计4
5.1逻辑结构设计要点4
5.2物理结构设计要点4
5.3数据结构与程序的关系4
6系统出错处理设计5
6.1出错信息5
6.2补救措施5
6.3系统维护设计5
概要设计说明书
1引言
1.1编写目的
创建一个可供日常交通灯使用的程序,目标读者为交通灯控制人员。
1.2背景
说明:
a.交通路口复杂交通信号灯的设计
b.任务提出者,开发者:
陈磊
用户:
交通指挥系统
设计环境:
使用VerilogHDL语言进行设计
使用Quartus2编程环境进行开发。
。
1.3定义
ORDER选择信号
ROAD亮灯控制信号
EN55秒延时使能信号
LIN55秒延时终止信号
EN2525秒延时使能信号
LIN2525秒延时终止信号
RST系统复位信号
CLK系统时钟信号
1.4参考资料
VerilogHDL数字系统设计与应用
2总体设计
2.1需求规定
输入项目:
CLK系统时钟信号
RST系统复位信号
输出项目:
ROAD亮灯控制信号,ROAD=00,红灯亮;ROAD=01,黄灯亮;ROAD=10,绿灯亮;ROAD=11,黄灯亮。
处理要求:
根据ORDER的不同值,使相应的灯发亮。
2.2运行环境
运行环境:
。
QuartusII9.0
2.3基本设计概念和处理流程
2.4结构
ORDER选择某一灯的选择变量
ROAD控制某一灯亮的控制变量
2.5功能器求与程序的关系
本条用一张如下的矩阵图说明各项功能需求的实现同各块程序的分配关系:
程序1
程序2
功能需求1
√
功能需求2
√
√
功能需求3
√
功能需求4
√
√
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:
begin
road='b100。
en25<=1。
en5<=0。
if(lin25==1>order<=1。
end
1:
begin
road='b010。
en25<=0。
en5<=1。
if(lin5==1>order<=2。
end
2:
begin
road='b001。
en25<=1。
en5<=0。
if(lin25==1>order<=3。
end
3:
begin
road='b010。
en25<=0。
en5<=1。
if(lin5==1>order<=0。
end
endcase
4运行设计
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运行时间
运行模块将始终占用CPU
5系统数据结构设计
5.1逻辑结构设计要点
ORDER选择变量用于选择让哪一盏灯亮
ROAD=100,则红灯亮;
ROAD=010,则绿灯亮;
ROAD=001,则黄灯亮;
5.2物理结构设计要点
ORDER2位寄存器变量每次存取要存取全部2位
ROAD3位寄存器变量,每次存取要存取全部3位
5.3数据结构与程序的关系
ORDER2位寄存器变量每次存取要存取全部2位
ROAD3位寄存器变量,每次存取要存取全部3位
6系统出错处理设计
6.1出错信息
1.系统开始运行时RST!
=0,即系统没有复位,即开始运行,此时会导致出错。
2.系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况下延时程序会工作不正常,使延时时间延长或缩短。
6.2补救措施
故障1:
使RST初始时为0,过一段时间后再将RST置1。
故障2:
寻找一个工作稳定的时钟源作为系统的时钟源。
6.3系统维护设计
1.系统开始运行时RST!
=0,即系统没有复位,即开始运行,此时会导致出错。
2.系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况下延时程序会工作不正常,使延时时间延长或缩短。
设计需求说明书
2任务概述2
2.1目标2
2.2用户的特点3
2.3假定和约束3
3需求规定3
3.1对功能的规定3
3.2对性能的规定3
3.2.1精度3
3.2.2时间特性要求3
3.2.3灵活性4
3.3输人输出要求4
3.4数据管理能力要求4
3.5故障处理要求4
3.6其他专门要求5
4运行环境规定5
4.1设备5
4.2支持软件5
4.3接口5
4.4控制5
需求分析说明书的编写提示
2任务概述
2.1目标
该项目开发的意图是为了设计一个可供日常指挥交通使用的交通灯程序,应用目标是用来控制各种交通灯的运行,可以作用在各种类型的交通灯上。
该项目的代码主要是我根据书上已有的一部分资料,再加上自己在网上搜索得到的一些代码,将两者综合以后写出来的|
2.2用户的特点
该项目的应用对象—交通灯的主要特点如下:
1.任意时刻只能有一只灯<红、黄或绿灯)亮。
2.任意时刻必须有一只灯亮,不能三盏灯全是灭的。
3.任一只灯亮了一定时限后必须熄灭,不能一直亮着。
操作人员特点:
交通灯一般都是根据程序自动运行的,因此,无操作人员。
维护人员特点:
在机房维护交通灯控制程序的人员一般都是学习过编程控制原理的,因此,他们可以看懂程序如何控制交通灯运行的。
本课题预期使用频度:
此交通灯控制程序属于24小时全天候运行类型的。
2.3假定和约束
预期开发期限:
10周。
经费限制:
不需要经费。
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或001
3.4数据管理能力要求
需要管理的文卷个数为三个,一个是交通灯控制程序,一个是25秒程序,另一个是5秒延时程序,两个文卷的大小均在300k以内。
3.5故障处理要求
1.系统开始运行时RST!
=0,即系统没有复位,即开始运行,此时会导致出错。
2.系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况下延时程序会工作不正常,使延时时间延长或缩短。
3.6其他专门要求
要有一个稳定的时钟源,这样才能保证某一灯亮后,等待5秒或25秒以后,按照程序的设定,使下一盏灯变亮。
4运行环境规定
4.1设备
a.处理器型号为8086,内存容量100MB
b.外存容量100MB、联机方式、存储格式为二进制文件、设备的型号为ACEX1K;
c.输入及输出设备的型号为ACEX1K,联机方式;
d.数据通信设备的型号为ACEX1K,数量1只;
e.无功能键;
4.2支持软件
支持软件:
QuartusII9.0
4.3接口
串口通信协议。
4.4控制
根据ORDER的值不同,使不同的灯发亮,所以控制信号即为ORDER。
ORDER的值由计算机自动进行变换。
详细设计说明书
2所设计系统的结构2
3模块1<标识符)设计说明2
3.1模块描述3
3.2功能3
3.3性能3
3.4输人项3
3.5输出项3
3.6算法3
3.7流程逻辑3
3.8接口3
3.9存储分配4
3.10注释设计4
3.11限制条件4
3.12测试计划4
3.13尚未解决的问题4
4模块2<标识符)设计说明4
详细设计说明书
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.9存储分配
CONTROLLER模块:
60%的存储空间
TIMER5模块:
20%的存储空间
TIMER25模块:
20%的存储空间
3.10注释设计
ORDER选择信号
ROAD亮灯控制信号
EN55秒延时使能信号
LIN55秒延时终止信号
EN2525秒延时使能信号
LIN2525秒延时终止信号
RST系统复位信号
CLK系统时钟信号
3.11限制条件
必须要有一个稳定的时钟源,否则可能导致程序运行不正常。
3.12测试计划
在QuartusII9.0中运行该程序,因为程序中ORDER的值是按00,01,10,11
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 交通灯 控制程序