1、毕业论文(设计)内容介绍论文(设计)题 目 交通灯控制系统设计选题时间 2013.12.5 完成时间 2014.5.14论文(设计)字数9492关 键 词 延迟 8255 交通灯 控制 设计 论文(设计)题目的来源、理论和实践意义:随着电子技术的发展,计算机在现代科学技术的发展中起着越来越重要的作用。多媒体技术、网络技术、智能信息处理技术、自适用控制技术、数据挖掘与处理技术等都离不开计算机。运用所学的微机原理和接口技术知识完成交通灯系统。通过硬件与软件的结合,用我们刚刚学过的汇编语言编写程序模拟分析了现代城市交通控制与管理问题的现状,结合交通的实际情况总结出了交通灯控制系统的工作原理,想出了一
2、种简单实用的交通灯控制系统的硬件、软件电路设计方案。该系统适用于单主干道的十字路口。可随意进行更改双向的通行时间,该功能能实现加中断控制和手动控制的方式进行,红绿灯切换时有闪烁功能以警示车辆和行人将进行红绿灯切换。当有交通堵塞或紧急状况时可进行中断手动控制,使交通安全与交通流畅度得以保证。论文(设计)的主要内容及创新点:在 A道和 B道的十字路口,横向为 A道,纵向为 B道,各有两组交通指示灯,每组有红、黄、绿三个指示灯。A 道的同色灯连在一起,B 道的同色灯连在一起,对各组的交通指示灯进行控制,以确保车辆在每条道上都能通畅运行。 下面为 A道和 B道的工作过程:1. 初始状态为 A、B 道都
3、是红灯亮。当控制系统启动后,A 道的绿灯亮,B 道的红灯亮。2. 当延时 25秒后,A、B 道的黄灯同时变亮,且延时 5秒。3. 延时后,B 道转为绿灯,A 道转为红灯,且延时 25秒。4. 25秒后,转为 A、B 道的黄灯亮,延时 5秒后,回到第一步,依次重复进行,不断循环。5. 当遇到道路障通,或紧急情况时,A、B 道全为红灯。附:论文(设计) 本人签名: 年 月 日摘要: 1Abstract: 11. 引 言 .22. 交通灯设计的简介 .23. 交通灯的设计方案 33.1 电路原理 33.2.系统原理 63.21 8259A 的结构原理 .63.22 8255A 的工作原理 .63.3
4、 74LS138 工作原理 83.3.1 74LS138 与 74HC 的引脚图 .83.3.2 3 线-8 线译码器 74LS138 的功能表 94.交通灯系统的安装与调试 .104.1 调试过程及相应问题的记录 104.1.1、软件延时与定时器计时 104.1.2、使用中断 114.2 调试结果 115程序流程图 126.设计过程与总结 .137. 附源程序 .14参考文献: 18交通灯控制系统设计张强摘要:随着电子技术的发展,计算机在现代科学技术的发展中起着越来越重要的作用。多媒体技术、网络技术、智能信息处理技术、自适用控制技术、数据挖掘与处理技术等都离不开计算机。本设计是基于微机原理与
5、接口技术的简单应用。运用所学的微机原理和接口技术知识完成交通灯控制系统。通过硬件与软件的结合,用我们刚刚学过的汇编语言编写程序模拟分析了现代城市交通控制与管理问题的现状,结合交通的实际情况总结了交通灯控制系统的工作原理,想出了一种简单实用的交通灯控制系统的硬件、软件电路设计方案。该系统适用于单主干道的十字路口。可随意进行更改双向的通行时间 ,该功能能实现加中断控制和手动控制的方式进行,红绿灯切换时有闪烁功能以警示车辆和行人将进行红绿灯切换。当有交通堵塞或紧急状况时可进行中断手动控制,使交通安全与交通流畅度得以保证。关键词:延迟 8255 交通灯 控制 设计Design of traffic l
6、ight control systemZhang QiangAbstract:With the development of electronic technology, computers in the development of modern science and technology play an increasingly important Effect .The course design is based on Microcomputer Principle and Interface Technology for simple applications. We have j
7、ust learned to use the assembly language program to simulate the conditions of modern urban traffic control and management of the status quo. The actual situation with traffic light control system described working principle, software The system is suitable for a single main road intersection.Two-wa
8、y free passage of time changes .This feature can achieve plus interrupt control and manual control of the way, Flashing traffic light switching functions as a warning to vehicles and pedestrians will be traffic lights switch. When there is traffic congestion or an emergency manual control can be int
9、errupted, so that the degree of traffic safety and traffic flow can be guaranteed. Key words: Delayed 8255 Traffic Light Control Design 1. 引 言交通灯控制系统设计是电子技术学习中一个非常重要的环节,是将理论知识和实践能力相结合的环节,是真正锻炼学生能力的环节。交通灯能保证行人过马路时的安全,因为有控制交通状况等优点受到人们的欢迎,所以在很多场合得到广泛的应用。交通灯控制系统通过编写的汇编语言程序,控制计算机的使用。红灯停,绿灯行的交通规则,广泛用于十字路口
10、,车站等公共场所,成为人们外出生活中必不可少的物品,由于成熟与计算机技术的广泛应用,交通灯功能的多样化,远远超过了旧式交通灯, 通过数字化给生产生活带来了极大的便利。诸如闪烁警示、鸣笛警示,时间程序自动控制、倒计时显示,以上这些都是以计算机为基础的。还可以根据主、次干道的交通状况的不同任意设置各自的不同的通行时间。或者给有红绿色盲的人以声音警示的人性化设计。现在的交通灯控制系统很多都增加了智能控制环节,例如对闯红灯的车辆进行拍照。当某方向红灯亮时,此时相应的传感器开始工作,当有车辆通过时,照相机就把车辆拍下。要将交通灯控制系统产品化,应该根据客户不同的需求进行不同的设计,应该在程序中增加一些可
11、以人为改变的参数,以便客户根据不同的需要随时调节交通灯。2. 交通灯设计的简介目前,在国内的很多城市都是采用的自动红绿灯控制系统,它不仅具有固定的红绿灯过渡区间,而且还能自动切换。它由通行与停止时间控制显示、红黄绿三色信号灯和方向指示灯三部分组成。通常在红绿交通灯的通行与停止时间控制显示中, A、B 两方向分别 50秒;但也可以根据交通规律,B 方向 60秒,A方向 40秒,时间控制都是固定的。红绿灯的时间控制显示,以固定时间值预先存储在在单片机中,每次以一定周期交替变化。然而,实际上不同时刻的车辆流通状况是十分复杂的,是高度非线性的、随机的,还要受到不确定因素的影响。采用定时控制容易造成道路
12、有效应用时间的浪费,出现绿灯方向车辆较少,红灯方向车辆积压。它无法顾及当前道路上交通车辆数的实际情况变化,其最大的缺陷就是当路况发生变化时,不能正确满足司机与路人的实际需要。 目前,有一种使用“模糊控制”技术控制红绿灯的方法,能够根据十字路口两个方向上车辆和行人的浮动状况,自行判断红绿灯时间间隔,来确保最大车流量,减少路口的交通堵塞。定时控制能用数字显示器显示当前灯色的剩余时间,驾驶员能随时清楚自己的驾驶动作,以便于及时停车或启动。3. 交通灯的设计方案在本方案中使用了 8259A中断控制器,8255A 可编程并行接口实现对 A、B方向交通的分别计时和控制,设计采用定时加中断控制的方式进行,对
13、两个方向车辆的通行时间分别计时,可随意更改双向的通行时间。城市中的十字路口红绿灯控制系统主要负责控制 A道和 B道的红绿灯的转换顺序和状态,关键是进行适当的时间延时和各个状态之间的转换,基于以上想法,采用如下设计:A、B 组的交通指示灯工作过程:1.初始状态为 A、B 道都是红灯亮。当控制系统启动后,A 道的绿灯亮,B 道的红灯亮。2.当延时 25秒后,A、B 道的黄灯同时变亮,且延时 5秒。3.延时后,B 道转为绿灯,A 道转为红灯,且延时 25秒。4.25秒后,转为 A、B 道的黄灯亮,延时 5秒后,回到第一步,以次重复进行,不断循环。5.当遇到道路障通,或紧急情况时,A、B 道全为红灯。
14、3.1 电路原理本方案的设计可以由实验平台上的一些功能模块电路组成,因为各模块电路内部已经连接,所以用户在使用时只要设计模块间电路的连接,因此,硬件电路的设计与实现相对简单一点。具体的系统硬件连接如图 1所示。硬件电路由 R-S触发器电路、发光二极管模块、8255A 可编程并行接口模块和紧急中断模块 8259A组成。实验的对应接线关系图如 2下所示:B0 B1 B2 BC3A0 C0A1 C 1 A2 C2A3 8255 C3 A4 C4 A5 C5A6 C6A7 C7 B4 B5 B6 B7KK1紧急情况IRQ78259 IRQ6D0D1D6D7东西D2D3D4D5南北图 1 交通灯硬件连线
15、图图 2 交通灯内部电路图3.2.系统原理3.21 8259A 的结构原理1、数据总线缓冲器:8259A 与系统数据总线的接口,是 8位双向三态缓冲器。可以传送 CPU与 8259A之间的控制命令信息、状态信息以及中断类型信息。2、读/写控制逻辑:CPU 对 8259A的读/写操作通过它实现。3、级连缓冲器:用以实现 8259A芯片之间的级连,使得中断源可以由 8级扩展至 64级。4、控制逻辑电路:对整个芯片内部各部件的工作进行协调和控制。5、中断请求寄存器 IRR:8位,用以分别保存 8个中断请求信号,当响应的中断请求输入脚有中断请求时,该寄存器的相应位置 1。6、中断屏蔽寄存器 IMR:8
16、位,相应位用以对 8个中断源的中断请求信号进行屏蔽控制。当其中某位置“0“时,则相应的中断请求可以向 CPU提出;否则,相应的中断请求被屏蔽,即不允许向 CPU提出中断请求。该寄存器的内容为8259A的操作命令字 OCW1,可以由程序设置或改变。7、中断服务寄存器 ISR:8位,当 CPU正在处理某个中断源的中断请求时,ISR寄存器中的相应位置 1。8、用以比较正在处理的中断和刚刚进入的中断请求之间的优先级别,以决定是否产生多重中断或中断嵌套。3.22 8255A 的工作原理1、8255A 的内部结构如图 3: 图 3 8255A内部结构图1)数据总线缓冲器:这是一个 8位双向三态数据缓冲器,
17、是微机系统数据总线与 8255A的接口。可以传送 CPU输出的控制字、输入输出的数据以及 CPU输入的状态信息。2)三个端口 A,B 和 C:A端口包含一个 8位数据输出锁存器和缓冲器,一个 8位数据输入锁存器。B 端口包含一个 8位数据输入/输出锁存器和缓冲器,一个 8位数据输入缓冲器。C 端口包含一个 8位数据输出锁存器和缓冲器,一个 8位数据输入缓冲器(输入没有锁存器)。3) A组和 B组控制电路 :这是两组根据 CPU输出的控制字控制 8255工作方式的电路,它们对于 CPU而言,共用一个端口地址相同的控制字寄存器,接收 CPU输出的一字节方式控制字或对 C口按位复位字命令。方式控制字
18、的高 5位决定 A组的工作方式,低 3位决定 B组的工作方式。对 C口按位复位命令字可对 C口的每一位实现置位或复位。A 组控制电路控制 A口和 C口上半部,B 组控制电路控制 B口和 C口下半部。4)读写控制逻辑:用来控制把 CPU输出的控制字或数据送至相应端口,也由它来控制把状态信息或输入数据通过相应的端口送到 CPU。2、引脚信号8255A的引脚如图 4所示,分为数据线、地址线、读/写控制线、输入/输出端口线和电源线。D7D0(data bus):三态、双向数据线,与 CPU数据总线连接,用来传送数据。(chip select):片选信号线,低电平有效时,芯片被选中。A1, A0(por
19、t address):地址线,用来选择内部端口。(read):读出信号线,低电平有效时,允许数据读出。(write):写入信号线,低电平有效时,允许数据写入。RESET(reset):复位信号线,高电平有效时,所有内部寄存器(包括控制寄存器)将清 0。PA7PA0(port A):A 口输入/输出信号线。PB7PB0(port B):B 口输入/输出信号线。PC7PC0(port C):C 口输入/输出信号线。VCC:5V 电源。 GND:电源地线。 3、8255A 的 工作方式:方式 0-基本输入输出方式; 图 4 8255A的引脚方式 1-选通输入输出方式;方式 2-双向选通输入输出方式。
20、3.3 74LS138 工作原理3.3.1 74LS138 与 74HC 的引脚图用与非门组成的 3线-8 线译码器 74LS138图 5 与非门组成的 74LS1383.3.2 3 线-8 线译码器 74LS138 的功能表图 6 74LS138的功能表从上图我们可以看到 74LS138的八个输出引脚,任何时刻要不全为高电平 1芯片处于不工作状态,要不只有一个为低电平 0,其余 7个输出引脚全为高电平 1。如果出现两个输出引脚同时为 0的情况,说明该芯片已经损坏。当附加控制门的输出为高电平(S1)时,可由逻辑图写出图 7 逻辑图由上式可以看出,同时又是这三个变量的全部最小项的译码输出,所以也
21、把这种译码器叫做最小项译码器。74LS138有三个附加的控制端,输出为高电平(S1) ,译码器处于工作状态。否则,译码器被禁止,所有的输出端被封锁在高电平。这三个控制端也叫做“片选”输入端,利用片选的作用可以将多篇连接起来以扩展译码器的功能。带控制输入端的译码器又是一个完整的数据分配器。如果把作为“数据”输入端(同时) ,而将作为“地址”输入端,那么从送来的数据只能通过所指定的一根输出线送出去。这就不难理解为什么叫做地址输入了。例如当101 时,门的输入端除了接至输出端的一个以外全是高电平,因此数据以反码的形式输出,而不会被送到其他任何一个输出端上。4.交通灯系统的安装与调试4.1 调试过程及
22、相应问题的记录4.1.1、软件延时与定时器计时软件延时,设计简单,使用方便,但是无法进行精确计时,无法在实际应用中进行使用,本次设计采用了定时器 0进行计时,每 10ms产生一个脉冲信号,可以准确的计时并方便 8段数码管进行显示4.1.2、使用中断使用中断比较麻烦,在试验中需要两次加载初始化程序和中断服务程序,并且需要手工指定中断服务地址和中断向量号;但是使用中断可以进行多样化设计,强化程序功能与执行效率。4.2 调试结果A、B 组的交通灯工作过程为:1.初始状态为 A、B 道都是红灯亮。当控制系统启动后,A 道的绿灯亮,B 道的红灯亮。2.当延时 25秒后,A、B 道的黄灯同时变亮,且延时
23、5秒。3.延时后,B 道转为绿灯,A 道转为红灯,且延时 25秒。4.25秒后,转为 A、B 道的黄灯亮,延时 5秒后,回到第一步,以次重复进行,不断循环。5.当遇到道路障碍,或紧急情况时,A、B 道全为红灯。5程序流程图图 8 交通灯程序流程图A道的绿灯点亮 25s同时 B道的红灯点亮 25s编译完成后下载运行程序A、B 道的黄灯同时延时点亮 5sB道的绿灯点亮 25s同时道的红灯点亮 25sA、B 道的黄灯同时延时点亮 5s。回到第一步 紧急情况A、B 道方向的红灯同时被点亮 10s按下 KK1A、B 道红灯同时点亮 5s6.设计过程与总结此次实习可以说是获益匪浅。通过查阅了很多资料,了解
24、了许多汇编程序的思想,扩展了自己的视野,不再仅仅局限于书本中几条简短的程序,而且更重要的是明白写程序的态度:仔细谨慎,精益求精。在程序中添加了黄灯闪烁,更加醒目。另外加入能够实现各路口绿灯显示时间不同,适应在主干道和支线路口中使用。在系统加电调试中,针对一些问题,熟练掌握了根据原理分步测试,将错误之处缩小的最小范围内。通过对交通灯控制系统的设计,我熟练掌握了什么是编程、编程工作的基本过程及其各部分的基本任务,了解了编程的生成过程、构造工具及其相关的技术,熟悉了关于编程的总流程和设计框图,对课本上的知识有了更深的理解,课本上的知识是机械的,表面的。通过在计算机上实现算法的内容和算法的执行顺序,把
25、原来以为很深奥的书本知识变的更为简单,对实验原理有更深的理解,而且在设计中,把死板的课本知识变得生动有趣,激发了学习的积极性。把学过的计算机编译原理的知识强化,能够把课堂上学的知识通过自己设计的程序表示出来,加深了对理论知识的理解。以前对计算机操作系统的认识是模糊的,概念上的,现在通过自己动手做实验,从实践上认识了操作系统是如何处理命令的,如何协调计算机内部各个部件运行,对计算机编译原理的认识更加深刻。课程设计中程序比较复杂,在调试时应该仔细,在程序调试时,注意指针,将不必要的命令去除7. 附源程序MODELTINYPCIBAR3 EQU1CH;8位I/O空间基地址(它就是实验仪的基地址, 也
26、为DMA 厂商ID号Device_ID EQU8376 ;设备ID号STACK100DATACOM_ADD DW 00F3H ;控制口偏移量PA_ADD DW 00F0H ;PA口偏移量PB_ADD DW 00F1H ;PB口偏移量PC_ADD DW 00F2H ;PC口偏移量LED_Data DB 10111110B ;东西绿灯,南北红灯DB 11111111B ;DB 11011101B ;东西 南北黄灯DB 11101011B ;东西红灯,南北绿灯.CODE START: MOVAX,DATAMOVDS,AXNOPCALL InitPCICALL ModifyAddress ;根据PCI
27、提供的基地址,将偏移地址转化为实地址mov dx,com_addmov al,80H ;PA、PB、PC为基本输出模式OUT DX,ALMOV DX,PA_ADD ;红灯亮MOV AL,10111011BOUT DX,ALCALL DL5sLEA BX,LED_DataSTART1: MOV DX,PA_ADDMOV AL,0XLATOUT DX,AL ;东西绿灯,南北红灯CALL DL25SMOV CX,5 START2: MOV AL,1XLATOUT DX,ALCALL DL500msMOV AL,2XLATOUT DX,ALCALL DL5s;东西南北黄灯MOV AL,3 XLATOU
28、T DX,AL ;东西黄灯亮,南北红灯CALL DL25SMOVAH,06HMOVDL,0FFHINT21HJZ START1JMPExitDL500ms PROC NEARPUSH AXPUSH DXMOVDX,500 ;延时500msMOVAH,0FFH ;星研公司提供的软中断INT21HPOPDXPOPAXRETDL500ms ENDPDL5S PROC NEARPUSH CXMOVCX,10DL5S1: CALL DL500msLOOP DL5S1POPCXRETENDPDL25S PROC NEARPUSH CXMOVCX,50DL25S1: CALL DL500msLOOP DL5
29、S1POPCXRETENDPInitPCI PROC NEARMOVAH,00HMOVAL,03HINT10H ;清屏MOVAH,0B1HMOVAL,01HINT1AHCMPAH,0JZ InitPCI2LEADX,msg0InitPCI1: MOVAH,09HINT21HJMPExitInitPCI2: MOVAH,0B1HMOVAL,02HMOVCX,Device_IDMOVDX,Vendor_IDMOVSI,0INT1AHJNCInitPCI3 ;是否存在Star PCI9052板卡LEADX,msg1JMPInitPCI1InitPCI3: MOVDI,PCIBAR3MOVAH,0B1
30、HMOVAL,09HINT1AH ;读取该卡PCI9052基地址JNCInitPCI4LEADX,msg2JMPInitPCI1InitPCI4: ANDCX,0FFFCHMOV IO_Bit8_BaseAddress,CXRETInitPCI ENDPModifyAddress PROC NEARADDCOM_ADD,CXADDPA_ADD,CXADDPB_ADD,CXADDPC_ADD,CXRETModifyAddress ENDPExit: MOVAH,4CHINT21HENDSTART参考文献:1 沈美明,温冬婵.IBM PC 汇编语言设计M.2 版.北京:清华大学出版社,2002.
31、2 孙德文.微型计算机技术M.北京:高等教育出版社,2002.3 周荷琴,吴秀清 .微型计算机原理与接口技术 M.4版.合肥:中国科学技术出版社,20084 宁飞,王维华,孔宇.微型计算机原理与接口实践M.北京:清华大学出版社,2006.5 裘雪红,李伯成,刘凯.微型计算机原理及接口技术M.西安:西安电子科技大学出版社.2007.36 林立等.单片机原理及应用基于 Proteus和 Keil C. M.北京:电子工业出版社,2009.7 杨晓涵,微机原理与接口技术虚拟实验平台的设计与实现D.北京邮电大学.2012.8 宋鹏,电子信息工程专业建设有关问题的思考A.中国电子教育协会高教分会 2010年论文集C.2010.9 国际关系学院 谢荣琼.电子信息科学与技术N.中国教育报.2010.10 李华玲,面向对象的仿真系统研究及其在虚拟实验中的应用D.华北工学院.2003.