交通灯控制程序_第1页
交通灯控制程序_第2页
交通灯控制程序_第3页
交通灯控制程序_第4页
交通灯控制程序_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

交通灯控制程序交通灯控制程序全文共23页,当前为第1页。1交通灯控制程序全文共23页,当前为第1页。编写目的2背景2定义2参考资料22总体设计2需求规定2运行环境2基本设计概念和处理流程3结构3功能器求与程序的关系3人工处理过程3尚未问决的问题33接口设计3用户接口3外部接口3内部接口44运行设计4运行模块组合4运行控制4运行时间45系统数据结构设计4逻辑结构设计要点4物理结构设计要点4数据结构与程序的关系46系统出错处理设计5出错信息5设计补救措施5设计系统维护交通灯控制程序全文共23页,当前为第2交通灯控制程序全文共23页,当前为第2页。1引言编写目的创建一个可供日常交通灯使用的程序,目标读者为交通灯控制人员。背景说明:a.交通路口复杂交通信号灯的设计b.任务提出者,开发者:陈磊用户:交通指挥系统设计环境:使用VerilogHDL语言进行设计使用Quartus2编程环境进行开发。。定义ORDER选择信号ROAD亮灯控制信号EN55秒延时使能信号LIN55秒延时终止信号EN2525秒延时使能信号LIN2525秒延时终止信号RST系统复位信号CLK系统时钟信号参考资料VerilogHDL数字系统设计与应用交通灯控制程序全文共23页,当前为第3页。交通灯控制程序全文共23页,当前为第3页。需求规定输入项目:CLK系统时钟信号RST系统复位信号输出项目:ROAD亮灯控制信号,ROAD=00,红灯亮;ROAD=01,黄灯亮;区0人口=10,绿灯亮;ROAD=11,黄灯亮。处理要求:根据ORDER的不同值,使相应的灯发亮。运行环境运行环境:。QuartusII9.0交通灯控制程序全文共23页,当前为第交通灯控制程序全文共23页,当前为第4页。2.4结构ORDER选择某一灯的选择变量交通灯控制程序全文共23页,当前为第交通灯控制程序全文共23页,当前为第5页。功能器求与程序的关系本条用一张如下的矩阵图说明各项功能需求的实现同各块程序的分配关系:程序1程序2功能需求1V功能需求2VV功能需求3V功能需求4VV人工处理过程人工输入ORDER的值,根据ORDER的不同值,相应的灯变亮尚未问决的问题创建一个稳定的时钟源3接口设计用户接口light(red,amber,green,0,order>ORDER为控制变量,由它决定让哪一盏灯发亮。ROAD=100,则红灯亮;ROAD=010,则绿灯亮;氏。4口=001,则黄灯亮;外部接口CLK外部时钟源信号RST计时程序使能信号ROAD控制哪一盏灯发亮的信号交通灯控制程序全文共23页,当前为第6交通灯控制程序全文共23页,当前为第6页。根据ORDER的不同取值,在下面这段程序中,case(order>0:beginroad='b100oen25<=1。en5<=0。if(lin25==1>order<=1。endbeginroad='b010oen25<=0。en5<=1。if(lin5==1>order<=2oendbeginroad='b001oen25<=1oen5<=0。if(lin25==1>order<=3。endbeginroad='b010oen25<=0。en5<=1。if(lin5==1>order<=0oend交通灯控制程序全文共23交通灯控制程序全文共23页,当前为第7页。4运行设计运行模块组合ORDER=0时,ROAD=100,调用模块TIMER25,红灯亮ORDER=1时,ROAD=010,调用模块TIMER5,黄灯亮ORDER=2时,ROAD=001,调用模块TIMER25,绿灯亮ORDER=3时,ROAD=010,调用模块TIMER5,黄灯亮运行控制ORDER=0时,ROAD=100,调用模块TIMER25,红灯亮ORDER=1时,ROAD=010,调用模块TIMER5,黄灯亮ORDER=2时,ROAD=001,调用模块TIMER25,绿灯亮ORDER=3时,ROAD=010,调用模块TIMER5,黄灯亮运行时间运行模块将始终占用CPU5系统数据结构设计逻辑结构设计要点ORDER选择变量用于选择让哪一盏灯亮ROAD=100,则红灯亮;ROAD=010,则绿灯亮;ROAD=001,则黄灯亮;物理结构设计要点ORDER2位寄存器变量每次存取要存取全部2位ROAD3位寄存器变量,每次存取要存取全部3位交通灯控制程序全文共23页,当前为第8交通灯控制程序全文共23页,当前为第8页。ORDER2位寄存器变量每次存取要存取全部2位ROAD3位寄存器变量,每次存取要存取全部3位6系统出错处理设计出错信息.系统开始运行时RST!=0,即系统没有复位,即开始运行,此时会导致出错。.系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况下延时程序会工作不正常,使延时时间延长或缩短。补救措施故障1:使RST初始时为0,过一段时间后再将RST置1。故障2:寻找一个工作稳定的时钟源作为系统的时钟源。系统维护设计.系统开始运行时RST!=0,即系统没有复位,即开始运行,此时会导致出错。.系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况下延时程序会工作不正常,使延时时间延长或缩短。设计需求说明书2任务概述2目标2用户的特点3假定和约束33需求规定3交通灯控制程序全文共23页,当前为第交通灯控制程序全文共23页,当前为第9页。对性能的规定3精度3时间特性要求3灵活性4输人输出要求4数据管理能力要求4故障处理要求4其他专门要求54运行环境规定5设备5支持软件5接口5控交通灯控制程序全文共23页,当前为第10交通灯控制程序全文共23页,当前为第10页。2任务概述目标该项目开发的意图是为了设计一个可供日常指挥交通使用的交通灯程序,应用目标是用来控制各种交通灯的运行,可以作用在各种类型的交通灯上。该项目的代码主要是我根据书上已有的一部分资料,再加上自己在网上搜索得到的一些代码,将两者综合以后写出来的|用户的特点该项目的应用对象一交通灯的主要特点如下:.任意时刻只能有一只灯〈红、黄或绿灯)亮。.任意时刻必须有一只灯亮,不能三盏灯全是灭的。.任一只灯亮了一定时限后必须熄灭,不能一直亮着。操作人员特点:交通灯一般都是根据程序自动运行的,因此,无操作人员。维护人员特点:在机房维护交通灯控制程序的人员一般都是学习过编程控制原理的,因此,他们可以看懂程序如何控制交通灯运行的。本课题预期使用频度:此交通灯控制程序属于24小时全天候运行类型的。假定和约束预期开发期限:10周。经费限制:不需要经费。交通灯控制程序全文共23页,当前为第11交通灯控制程序全文共23页,当前为第11页。order=01 黄灯亮order=10 绿灯亮order=11 黄灯亮对性能的规定精度根据变量ORDER的值,即可使相应的灯变亮,不会出现差错。时间特性要求说明对于该项目的时间特性要求,如对:a.响应时间:根据设定的ORDER的值,立即跳转到相应状态。b.更新处理时间:必须等待TIMER5或TIMER25延时结束以后,才能进行更新c.数据的转换和传送时间:ORDER设定好以后,立即进行转换,无延迟。d.解题时间:立即转换,没有延迟。灵活性a.操作方式上的变化:没有影响b.运行环境的变化:没有影响c.同其他系统的接口的变化:没有影响d.精度和有效时限的变化:没有影响e.计划的变化或改进:没有影响交通灯控制程序全文共23页,当前为第12交通灯控制程序全文共23页,当前为第12页。输入项:ORDER:2位寄存器型变量,取值范围从00到11。CLK:时钟源信号RST:延时程序使能信号输出项:ROAD:3位寄存器型变量,取值为100、010或001数据管理能力要求需要管理的文卷个数为三个,一个是交通灯控制程序,一个是25秒程序,另一个是5秒延时程序,两个文卷的大小均在300k以内。故障处理要求.系统开始运行时RST!=0,即系统没有复位,即开始运行,此时会导致出错。.系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况下延时程序会工作不正常,使延时时间延长或缩短。3.6其他专门要求要有一个稳定的时钟源,这样才能保证某一灯亮后,等待5秒或25秒以后,按照程序的设定,使下一盏灯变亮。4运行环境规定设备a.处理器型号为8086,内存容量100MBb.外存容量100MB、联机方式、存储格式为二进制文件、设备的型号为ACEX1K;交通灯控制程序全文共23页,当前为第13页。c.输入及输出设备的型号为交通灯控制程序全文共23页,当前为第13页。d.数据通信设备的型号为ACEX1K,数量1只;e.无功能键;支持软件支持软件:QuartusII9.0接口串口通信协议。控制根据ORDER的值不同,使不同的灯发亮,所以控制信号即为ORDER。ORDER的值由计算机自动进行变换。详细设计说明书2所设计系统的结构23模块1〈标识符)设计说明2模块描述3功能3性能3输人项3输出项3算法3流程逻辑3接口3存储分配4注释设计4限制条件4测试计划4尚未解决的问题44模块2〈标识符)设计说明4

交通灯控制程序全文共23页,当前为第14交通灯控制程序全文共23页,当前为第14页。2所设计系统的结构ORDER=00ORDER二01ORDER=10NNYNY输入ORDER黄灯亮Y红灯亮ORDER=00ORDER二01ORDER=10NNYNY输入ORDER黄灯亮Y红灯亮绿灯亮黄灯亮交通灯控制程序全文共23页,当前为第15页。3模块交通灯控制程序全文共23页,当前为第15页。模块描述根据ORDER的不同值选择让不同的灯发亮,如果ORDER=00,则红灯亮;如果ORDER=01,则黄灯亮;如果ORDER=10,则绿灯亮;如果ORDER=11,则黄灯亮。程序常驻内存,不可重入,是顺序处理。功能该系统功能如下:.系统启动,各项复位.红灯亮,延时25秒.黄灯亮,延时5秒.绿灯亮,延时25秒.黄灯亮,延时5秒.返回2继续运行交通灯控制程序全文共23页,当前为第16页。交通灯控制程序全文共23页,当前为第16页。程序设计好以后,在运行期间,未发生出错的情况。交通灯控制程序全文共23页,当前为第17页。交通灯控制程序全文共23页,当前为第17页。CLK系统时钟信号RST系统复位信号输出项ROAD亮灯控制信号,ROAD=00,红灯亮;ROAD=01,黄灯亮;区0人口=10,绿灯亮;ROAD=11,黄灯亮。算法本程序使用一个CASE(ORDER>多重选择结构,根据ORDER的不同值,ROAD被赋给不同的值,具体设置如下所示:ORDER=00红灯亮ORDER=01黄灯亮ORDER=10绿灯亮ORDER=11黄灯亮交通灯控制程序全文共23页,当前为第交通灯控制程序全文共23页,当前为第18页。3.8接口交通灯控制程序全文共23页,当前为第19交通灯控制程序全文共23页,当前为第19页。CONTROLLER模块:60%的存储空间TIMER5模块:20%的存储空间TIMER25模块:20%的存储空间注释设计ORDER选择信号ROAD亮灯控制信号EN55秒延时使能信号LIN55秒延时终止信号EN2525秒延时使能信号LIN2525秒延时终止信号RST系统复位信号CLK系统时钟信号限制条件必须要有一个稳定的时钟源,否则可能导致程序运行不正常。测试计划在QuartusII9.0中运行该程序,因为程序中ORDER的值是按00,01,10,11的顺序赋值的,而且是循环赋值〈即每次都按这个顺序赋一遍值),所以观察是否是按红灯,黄灯,绿灯,黄灯的顺序亮灯,若是,则程序运行正常,否则就不正常。尚未解决的问题必须配备一个稳定的时钟源。〈标识符)设计说明TIMER5模块:用来完成延时5秒的功能。TIMER25模块:用来完成延时25秒的功能。CONTROLLER模块:、用来控制交通灯勺运行。交通灯控制程序全文共23页,当前为第20页。88)项目设计总结报告交通灯控制程序全文共23页,当前为第20页。88)交通灯控制程序全文共23页,当前为第21页。交通灯控制程序全文共23页,当前为第21页。2.1产品该项目中共有3个程序:TIMER5延时5秒程序TIMER25延时25秒程序CONTROLLER交通灯控制程序各程序之间的关系如下图所示:1r该系统功能如下:系统启动幕项复幽L红灯亮黄灯亮绿灯亮黄灯亮-延时1r该系统功能如下:系统启动幕项复幽L红灯亮黄灯亮绿灯亮黄灯亮-延时2

延时5延时25秒延时5秒返回2继续运行S1RED各模块间运行顺序如下图所示:ELLOWEn25该系统基本达到了原先的开发目的。En5Lin252.32.3基本流程基本关系如下图:S3GREEN

En25S2基本关系如下图:S3GREEN

En25S2YELLOWEn5交通灯控制程序全文共23交通灯控制程序全文共23页,当前为第22页。ORDER=00ORDER二01ORDER=10NYNNYY输入ORDER黄灯亮红灯亮ORDER=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论