ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:217.89KB ,
资源ID:27561068      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27561068.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(交通灯控制程序.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

交通灯控制程序.docx

1、交通灯控制程序概要设计说明书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 系统时钟信号

2、RST 系统复位信号输出项目:ROAD 亮灯控制信号,ROAD=00,红灯亮;ROAD=01,黄灯亮;ROAD=10,绿灯亮;ROAD=11,黄灯亮。处理要求:根据ORDER的不同值,使相应的灯发亮。2.2运行环境运行环境:。Quartus II 9.02.3基本设计概念和处理流程2.4结构ORDER 选择某一灯的选择变量ROAD 控制某一灯亮的控制变量2.5功能器求与程序的关系本条用一张如下的矩阵图说明各项功能需求的实现同各块程序的分配关系:程序1程序2功能需求1功能需求2功能需求3功能需求42.6人工处理过程人工输入ORDER的值,根据ORDER的不同值,相应的灯变亮2.7尚未问决的问题创

3、建一个稳定的时钟源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;

4、 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 endcase4运行设计4.1运行模块组合ORDER=0时,ROAD=100,调用模块TIMER25,红灯亮ORDER=1时,ROAD=010,调用模块TIMER5,黄灯亮ORDER=2时,ROAD=001,调用模块TIMER25,绿灯亮ORDER=3时,ROAD=010,调用模块TIMER5,黄灯亮4.2运行

5、控制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

6、数据结构与程序的关系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系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况

7、下延时程序会工作不正常,使延时时间延长或缩短。设计需求说明书需求分析说明书的编写提示2任务概述2.1目标该项目开发的意图是为了设计一个可供日常指挥交通使用的交通灯程序,应用目标是用来控制各种交通灯的运行,可以作用在各种类型的交通灯上。该项目的代码主要是我根据书上已有的一部分资料,再加上自己在网上搜索得到的一些代码,将两者综合以后写出来的|2.2用户的特点该项目的应用对象交通灯的主要特点如下:1任意时刻只能有一只灯(红、黄或绿灯)亮。2任意时刻必须有一只灯亮,不能三盏灯全是灭的。3任一只灯亮了一定时限后必须熄灭,不能一直亮着。操作人员特点:交通灯一般都是根据程序自动运行的,因此,无操作人员。维护

8、人员特点:在机房维护交通灯控制程序的人员一般都是学习过编程控制原理的,因此,他们可以看懂程序如何控制交通灯运行的。本课题预期使用频度:此交通灯控制程序属于24小时全天候运行类型的。2.3假定和约束预期开发期限:10周。经费限制:不需要经费。3.2对性能的规定3.2.1精度根据变量ORDER的值,即可使相应的灯变亮,不会出现差错。3.2.2时间特性要求说明对于该项目的时间特性要求,如对:a响应时间:根据设定的ORDER的值,立即跳转到相应状态。b更新处理时间:必须等待TIMER5或TIMER25延时结束以后,才能进行更新c数据的转换和传送时间:ORDER设定好以后,立即进行转换,无延迟。d解题时

9、间:立即转换,没有延迟。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,即系统没有复位,即开始运行,此时会

10、导致出错。2系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况下延时程序会工作不正常,使延时时间延长或缩短。3.6其他专门要求要有一个稳定的时钟源,这样才能保证某一灯亮后,等待5秒或25秒以后,按照程序的设定,使下一盏灯变亮。4运行环境规定4.1设备a处理器型号为8086,内存容量100MBb外存容量100MB、联机方式、存储格式为二进制文件、设备的型号为ACEX1K;c输入及输出设备的型号为ACEX1K,联机方式;d数据通信设备的型号为ACEX1K,数量1只;e无功能键;4.2支持软件支持软件:Quartus II 9.0 4.3接口串口通信协议。4.4控制根据ORDER的值不同,使不

11、同的灯发亮,所以控制信号即为ORDER。ORDER的值由计算机自动进行变换。详细设计说明书详细设计说明书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

12、 系统复位信号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 亮灯控制信号EN5 5秒延时使能信号

13、LIN5 5秒延时终止信号EN25 25秒延时使能信号LIN25 25秒延时终止信号RST 系统复位信号CLK 系统时钟信号3.11限制条件必须要有一个稳定的时钟源,否则可能导致程序运行不正常。3.12测试计划在Quartus II 9.0中运行该程序,因为程序中ORDER的值是按00,01,10,11的顺序赋值的,而且是循环赋值(即每次都按这个顺序赋一遍值),所以观察是否是按红灯,黄灯,绿灯,黄灯的顺序亮灯,若是,则程序运行正常,否则就不正常。3.13尚未解决的问题必须配备一个稳定的时钟源。4模块2(标识符)设计说明TIMER5模块:用来完成延时5秒的功能。TIMER25模块:用来完成延时2

14、5秒的功能。CONTROLLER模块:用来控制交通灯的运行。项目设计总结报告(GB856788)2实际开发结果2.1产品该项目中共有3个程序:TIMER5 延时5秒程序TIMER25 延时25秒程序CONTROLLER 交通灯控制程序各程序之间的关系如下图所示:2.2主要功能和性能该系统功能如下:1系统启动,各项复位2红灯亮,延时25秒3黄灯亮,延时5秒4绿灯亮,延时25秒5黄灯亮,延时5秒6返回2继续运行该系统基本达到了原先的开发目的。2.3基本流程基本关系如下图:流程图如下:2.4进度进度基本与预期一致,开发期间曾经遇到一些困难,我又上网搜了一些资料,最后终于赶上了进度。2.5费用工时:4

15、8个学时计算机使用时间:32个学时最终费用没有超过预期。3开发工作评价3.1对产品质量的评价错误发生率:使用中未曾发生出过出错现象,这也可能与使用时间过短有关,错误发生率为零。3.3对技术方法的评价本例中使用的是结构描述模块,这比使用行为描述模块要好得多。我们只要写好模块的定义,使用时只需写出这个模块的名字,再配上需要的参数即可。如果使用行为描述模块,我们使用一次就得把整个模块写一遍,再使用一次就得再把整个模块写一遍,这比结构描述模块的使用要浪费很多的时间和精力。3.4出错原因的分析1系统开始运行时RST!=0,即系统没有复位,即开始运行,此时会导致出错。2系统时钟工作不正常,各个时钟上升沿的间隔不相等,在此情况下延时程序会工作不正常,使延时时间延长或缩短。4经验与教训要先做系统整体上的规划,等概要设计、详细设计做完了以后再开始编程,此时程序的框架已经构建好了,我们只需要把该框架翻译成Verilog HDL代码即可。不要一上来就开始编程,此时我们是想到哪里就写到哪里,大脑中没有一个系统的规划,根本不可能写出一段合格的代码来。 .

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1